我们能否使用数学的逻辑力量来谈论什么是本质上相同的,而不必严格要求完全相等?这就涉及到了范畴理论(category theory)。它被称为为数学中的数学。近来,范畴论成为了一股热潮。它不仅在数学领域中备受瞩目,现在也被应用于计算机科学、物理学、工程学、化学、语言学等领域。虽然范畴论最初是纯数学的一个抽象分支,但它正在成为一种全新的思考方式,用于许多事物的思考。
范畴论是一种数学分支,它研究的是不同数学对象之间的关系,以及它们之间的映射和变换。它的目标是探究各种不同数学领域中的共性结构和模式,这使得范畴论成为了一种非常抽象的数学工具。
范畴论中最基本的概念是“范畴”,一个范畴由对象和箭头构成,对象之间通过箭头联系起来。箭头可以表示两个对象之间的映射,它们可以进行组合和变换,从而形成了范畴中的“态射”。范畴论通过研究范畴之间的关系和映射,可以将不同数学领域之间的共性结构联系起来,从而形成更加深刻的数学理论。
一个具体的例子是向量空间范畴。在这个范畴中,对象是向量空间,箭头是线性变换。这里的箭头可以看作是将一个向量空间映射到另一个向量空间的函数,它们可以进行组合和变换,形成了范畴中的态射。
研究群和向量空间的时候,我们特别注意两个群或两个向量空间之间的某种映射,群之间重要的映射是同态,而向量空间之间重要的映射是线性映射。这些映射之所以重要,在于它们是"保持结构"的函数,例如,若Φ是由群G到群H的一个同态,则对于G的任一对元素 g1,g2,将会“保持乘法”,就是
类似地,线性映射将会保持加法与乘以标量。
保持结构的映射这个概念的应用领域比这两个例子广得多,而范畴理论的目的之一就是要弄明白这种映射的一般性质。例如,若A、B和C是某个给定类型的数学结构,而f和g分别是由A到B和由B到C的保持这种结构的映射,则它们的复合
就是由A到C的保持结构的映射。就是说,保持结构的映射可以复合(至少是当一个映射的值域等于另一个映射的定义域时可以复合),我们也时常用保持结构的映射来决定何时可以把两个同一类型的结构视为"本质上相同",如果有一个由 A到 B的保持结构的映射,而且其逆也是保持结构的映射,就说A和B 是同构的(也就是“本质上相同”的)。
范畴就是允许我们抽象地来讨论这样一些性质的数学结构。它包含了一组对象,还有这些对象之间的态射(morphism)。就是说,如果a和b是此范畴的两个对象、范畴中还包括了这两个对象之间的一组态射,也有态射的复合这个概念,若f 是由a到b的态射,g是由b到c的态射,则存在f和g的一个复合为由a到c的态射。这个复合必须是结合的。此外,对每一个对象a都存在一个"恒等态射",它的性质是:如果把它与任意态射f复合起来,则仍会得到f。
正如前面的讨论暗示的那样,范畴的一个例子是群的范畴。这个范畴的对象就是群,而态射就是群同态,复合和恒等态射都如我们习惯的那样定义。然而、下面的例子表明,绝非所有的范畴都是这样的:
可以这样来构造一个范畴,其对象为自然数,而由n到m的态射是所有具有实数元的n×m矩阵,态射的复合和恒等态射就定义为矩阵的乘法和恒等矩阵。 正常情况下,不会把n×m矩阵想成一个由数n到数m的映射,然而范畴的公理是得到了满足的。
任何集合都可以变成一个范畴,对象就是此集合的元素,而由x到y的态射就是断言"x=y"。也可以把一个有序集合变成一个范畴,而令由x到y的态射为断言“x≤y”(“x≤y”和“y≤z”的“复合”则是“x≤z”)。
任意的群也可以像下面那样变成一个范畴,它仅有一个对象,而由此对象到其自身的态射就是群中的元素,态射的复合则定义为群中的乘法。
还有一个明显的范畴,其对象为拓扑空间,态射则为连续函数。还有一个不那么明显的范畴、其对象和上面说的一样、但是不以连续函数而以连续函数的同伦类为态射。
态射也叫映射。然而正如上面的例子表明的那样,范畴中的映射与我们熟悉的映射的样子可以很不相像。这些映射也称为箭头,这样的称呼部分地是为了强调一般的范畴具有比较抽象的特性,部分地则是因为将用箭头来“画”出态射。
“对象和态射”这种一般框架和语言使我们能够找出和研究那些仅仅依赖于范畴的“形状”的特性,就是仅依赖于态射和它们所满足的方程的那些特性。这里的思想就是:既作出一般的论据,然后可以用于所有的具有这个特定的结构特性范畴,同时,在特定的环境下,又可以不必进入所讨论的结构的细节。使用前者,达到后者,有时被说成是"抽象的胡说八道",认为这种说法是亲切也好,认为它是开玩笑也好。
正如上面说的,范畴中的态射时常用箭头画出来,所以,由a到b的态射f就画成
而复合则用箭头画成
这个记号大大地简化了复杂的计算,而产生出所谓可换图式,而这种图书式又时常是与范畴相联系的,两个复合的等式如
就被说成是下面的图式是可换的,就是说下图中由a到c的两条路径会给出同样的复合。
想要证明一长串的复合等于另一长串,时常就变成在空白处"填上"已知是可换的小图式。此外,许多重要的数学概念都可以用可换图式来表示,下面是一些例子:自由群、自由环、自由代数、商、乘积、不相交并、函数空间、定向极限和逆极限、完备化、紧化和几何实现。
现在我们来看一下不相交并是怎样用可换图式来表示的。说集合A和B的不相交并就是一个集合U再带上两个态射
使得对于任意一个集合X和两个态射
必有唯一的态射
U 2,X,
使下面的图式是可换的:
这里的p和q告诉我们A和B是怎样插到不相交并里面去的,而定义中“使得对于”以下的那一段话是一个泛性质(universal property),它表示了一个事实:给定一个由不相交并到另一个集合的函数,恰好就是在每一个个别的集合上给定一个函数,这就完全地刻画了不相交并(而这个不相交并确定到只相差一个同构)。另一种观点是,泛性质表示了一个事实,不相交并是把两个集合映射到另一个集合的"最自由"的方式,既不增加任何信息,也不使任何信息崩溃。泛性质对于范畴理论中描述结构的方式多少有点"典则的"的味道,而且是其核心。
范畴中另一个关键的概念是同构概念。可以期望,同构应该定义为一个具有双侧逆的态射。在一个给定的范畴中,同构的对象应该看成是"关于这个范畴是相同的对象"。这样、范畴提供了一个框架,其中对象的最自然的分类的方法是容许"相差一个同构"。
范畴也是某一类数学结构,所以范畴本身也构成一个范畴(但是对于范畴的大小要有限制,以避免罗素类型的悖论)。保持范畴结构的态射,称为函子。换句话说,由范畴X到范畴Y的函子F把X的对象变为Y的对象,把X的态射变为Y的态射,而且把X的恒等态射a变成Y的恒等态射Fa、X的态射f和a的复合变成Y的态射Ff和Fg的复合。函子的一个重要的例子是把指定了标记点s的拓扑空间S 映到其基本群π1(S,s)的函子。代数拓扑学的基本定理之一是两个拓扑空间之间的连续映射(并规定映标记点为标记点)生成基本群的一个同态。
进一步还有函子之间的态射,即称为自然变换的概念,它类似于拓扑空间之间的映射的同伦的概念:在拓扑空间的情况下。给定两个连续映射F,G:X→Y。 一个由F到G的同伦对于X的每一点x都给了我们一个Y中的由Fx到Gx 的路径;类似地,(在范畴的情况下)给定了两个函子F,G:X→Y,一个由F到G的自然变换,就对X的每一个对象x给出Y中的一个把Fx变为Gx的态射。 同伦情况的以下事实(即可换条件)也有一个类比:在同伦的情况,X中的路径在F下的像必定会连续地变为这个路径在G下的像,而不会穿过Y中的"洞",避免落入洞中,这个事实在范畴的情况下可以用目标范畴Y中的一个正方形的可换性来表示,这个可换性称为"自然性条件"。
自然变换有一个例子,说明了以下事实:每一个向量空间必典则地同构于其双重对偶;有一个由向量空间的范畴到其自身的一个函子,把每一个向量空间映为其双重对偶,而且有一个自然变换,把这个函子通过典则同构变为恒等函子。与此形成对比的是:每一个有限维向量空间都同构于其对偶空间,但不是典则地同构,因为这个同构用到了基底的任意选取;如果我们想在这个情况下也作出一个自然变换,就会发现自然性条件不再成立了。由于有自然变换出现,范畴实际上形成了一个2范畴、它是范畴的2维的推广,其中有对象、态射和态射之间的态射。最后这个态射之间的态射可以看成是2维的态射。更加一般地,一个n范畴对一直到n的每一个维数都有态射。
范畴及其语言在许多其他的数学分支中都有应用。从历史上看,这个学科与代数拓扑学紧密相关,这些概念是艾伦伯格(Eilenberg)和麦克莱恩(MacLane)在1945年提出的。后来跟着就在代数几何、理论计算机科学、理论物理和逻辑学中都有了应用.由于范畴理论的抽象本性以及不依赖于其他数学分支,可以看成是“基础性的”。事实上,也有人建议。以范畴理论来作为数学基础的另一个候补对象,把态射作为最基本的概念,而所有其他概念都要由它派生出来,而不像在集合论基础里面使用集合的属于关系作为最基本的概念。