提起距离,想必是为大多数人所熟知的,最朴素的说法是两点间的线段的长度。但这里的一个隐含的前提是在一个平直的空间(欧氏空间)之中,对于这一点只要想一下球面上的两点间的距离(大圆的劣弧长)就容易理解了。可见,距离是与空间相关的,我们在说距离的时候都是指某个空间中的距离,但这样的空间往往因为默认而被省略。在下文中如果不作特殊说明的话,所涉及的空间都是指欧氏空间,读者不妨以二维欧氏空间(就是通常所说的平面)做一个直观的类比。
事实上,我们可以把两点间的距离看作是连接这两点的曲线段的最小长,只是在欧氏空间中这样的曲线段就是线段,而我们通常所说的三角不等式则是这种最小性的表现。这一点对下文中关于距离的抽象化过程,是非常关键的。
设点A、B∈R,对于A、B的距离d有两种不同的理解,这可以通过下面的不同记法看出。
1)d=d(AB) 2)d=d(A,B)
如果把d视为一个函数的话,那么1)中它是在线段上取值,而2)中则是在R×R的点上取值的。
在第一种理解的基础上,我们可以把d的定义域推广到平面区域以及更高维的区域中去,于是得到面积和一般度量的概念,甚至可以推广到象有理数集Q这样的集合上面,得到所谓测度的概念。
在本文之中,我还是把它看成是R×R上的函数,比如通常在平面上两点x与y之间的距离就给定为:
d(x,y)=[(x
1-y
1)^2+(x
2-y
2)^2]^1/2
其中x,y分别为坐标是(x
1,x
2)、(y
1,y
2)的点。
类似的,我们容易把它推广至R^n中,而这样的距离函数d有如下的性质:对R中的任何点A、B、C
D1:d(A,B)≥0(非负性)
D2:d(A,B)=0当且仅当A=B (唯一性)
D3:d(A,B)=d(B,A) (对称性)
D4:d(A,B)≤d(A,C)+d(C,B) (最小性)
其中D4又往往被称为三角不等式,它是几何意义在先的,代数上等价于所谓的柯西不等式。
受这样的启发,我们可以用一般的集合X来代替R^n,结果就得到了如下定义。
定义:所谓度量空间(又叫做距离空间)(X,d),指在其中定义了度量(或距离)d的这种结构的集合X,d是定义在X×X上的函数,且对X中的任何点A、B、C,满足如下的度量(或距离)公理: D1:d(A,B)≥0 (非负性) D2:d(A,B)=0当且仅当A=B (唯一性) D3:d(A,B)=d(B,A) (对称性) D4:d(A,B)≤d(A,C)+d(C,B) (最小性) |
事实上,这样的一组公理并不是独立的,公理D1完全可以由其余的三个公理推出(为什么?),但由于D1也是非常重要的,所以我们还是把它单独放到了公理之中。
想必读者已经注意到上述四条公理与性质之间的相似之处了,这正是所谓公理化方法的表现,我把它归结为“性质优先”这四个字。简单的说,就是从研究具体对象的性质转到通过强化这样的性质来包容更多乃至更高层次的对象。
细心的读者也许注意到了,在距离空间的定义中就使用了这样的记号(X,d),它强调了尽管基础集合相同,但只要定义的距离不同,它就不是同一个距离空间(就好象第一个坐标相同的两个点未必相同一样)。那么是不是任何一个非空集合X都能被赋予一个距离d呢?答案是肯定的。
| 命题 对任何一个非空集合X,都存在一个函数d:X×X→[0,∞)满足距离公理D1-D4. |
证明:可以定义如下的距离ρ,ρ(x,y)=1,若x≠y;ρ(x,x)=0,若x=y,则易知这样的ρ满足公理D1-D4(请读者自己验证)。■
上面定义的距离称为是离散距离,这样的名称大概是与相应的拓扑有关。这样的抽象化比起从平直到弯曲的推广而言,显然是要高上一个层次。
尽管我们通常也称某个X是距离空间,那是因为已经默认了一个距离d,比如在R上定义的距离通常被默认为:
d(x,y)=︱x-y︱,x∈R,y∈R
当然我们也可以在R上定义其他的距离,比如说上面的离散距离ρ。显然,(R,d)≠(R,ρ),相信聪明的读者也还可以给出其他的距离。
而在所谓的欧氏空间R^n中,我们默认的距离则由下式给出:
d(x,y)=[(x1-y1)^2+…+(xn-yn)^2]^1/2 (1)
其中x,y分别为坐标是(x
1,…,x
n)、(y
1,…,y
n)的点。读者若是觉得太抽象的话,不妨还是考虑一下n=2的情形,它正是平面直角坐标系中的两点间的距离公式,而其几何意义则是著名的毕达哥拉斯定理。
对于n维的情形,它可以直观的理解为n维长方体的对角线之长,但这里存在着一个直观的缺陷。n>3时,就不存在所谓朴素直观的几何了,因此更值得以解析的方式处理。我们不妨就把(1)式作为欧氏空间R^n中两点间距离的定义,其合理性则可以由距离公理D1-D4来保证。
对于(1)式的距离,如果我们把其中的指数2换成任意的p≥1,同时把二次根式改成p次根式,就得到R^n的另一个距离,只是证明要稍微麻烦一些。同样,我们还可以把R换成复数域C,把相应的坐标换成复数(注意其中的平方应该换成是相应模的平方),就可以定义C^n中类似的距离。
最后我要说明的是,这样的公理化抽象的方法并不是万能的。事实上。在R^n中还有一种距离尚未被包含在这样的公理化过程中。它可以表现为集合与集合之间的距离,我们有如下的方法尝试推广:
由于距离有最小性,可以考虑集合之间的“最小值”。为什么我在这里要加引号呢?请读者先考虑一下R上原点到区间(1,2)的距离,是1吗?这里有一个极限的概念,严格的说应该是下确界(inf),但不熟悉它的读者还是不妨当它是某种可能取不到的“最小值”。
比如我们可以定义集合A与B之间的距离为:
d(A、B)=inf{d(x,y);x∈A,y∈B}
在这样的定义之下,R^3中两相交直线间的距离为零,而非相交(平行、异面)直线间的距离与朴素的几何学相同。
值得注意的是,这样的距离并不是距离空间中的距离,因为它不满足D2,甚至还不满足三角不等式D4!
比如可以在距离为1的两异面直线a、b上各取一点A和B,则他们的连线c=AB与a、b的距离都是0,这样得到
d(a,b)=1>0+0=d(a,c)+d(b,c)
可见这里的“距离”不满足三角不等式,已经被排除在距离空间之外了。
即使你认为这是特例,要考虑把相交的两直线看成一条直线的话,那也是徒劳的,因为我可以把直线c稍微“拉开一点点”。如果实在要“维护正统观念”的话,就只能说是我们以前看走了眼,其实通常所谓的异面直线间的距离并不是真正意义上的距离。