Skip to content

猫论其一

前言

I decide to start something real . 我决定写一个关于数学的系列,主要是以个人笔记的形式。对于写博客或者写笔记,我总是有一种犹豫。经验表明,许多系列/笔记写着写着都会无疾而终。开始写笔记,意味着要么担负写下去的责任,要么也成为无疾而终的一员。更糟糕的是,我这学期已经做了不少无疾而终的事情。况且接下来的时间会更紧张,有即将到来的 PPCA 和 ACM 训练双重压力,有我糊涂之下加入的项目,还有即将到来的、充满未知的大二生活。

不过,最终我还是决定开始写。一方面是这学期经历的事情给了我一些鼓励。另一方面,我意识到时间分配对我来说是一个近乎玄学的问题,即使我并没有把时间浪费在那些显然没有意义的事情上,我实际上能利用好的时间也不会多出多少 ,不如干脆试一试给自己找点事情 。写点数学相关的内容还可以对下学期要学的近世代数有点帮助。

决心已经有了,但以防之后写不下去,我希望还是从一个 CS 学生以更接近感悟的形式写这个系列,未必有成体系的数学内容,想要成体系的话不如直接看书。以上。

正文

作为一个初印象,范畴通过对象和态射抽象了许多不同数学对象之间的关系,比如群同态、集合之间的映射、偏序集等。不过我疑心这种抽象能否真正表达出数学对象的全部力量。

有一些似乎是沿用自集合论的名称,比如同构 isomorphism,自同态 endomorphism,自同构 automorphism,单态射 monomorphism,满态射 epimorphism。不那么出乎意料地,有一些命题把它们和集合论联系起来。比如

  • f:xy 是同构,当且仅当对所有对象 cf 对应的 post-composition Hom(c,x)Hom(c,y) 是一个双射。
  • f:xy 是单态射,当且仅当对所有对象 cf 对应的 post-composition Hom(c,x)Hom(c,y) 是一个单射。
  • f:xy 是满态射,当且仅当对所有对象 cf 对应的 pre-composition Hom(y,c)Hom(x,c) 是一个单射。
  • f:xy 是 split monomorphism,当且仅当对所有对象 cf 对应的 pre-composition Hom(y,c)Hom(x,y) 是一个满射。
  • f:xy 是 split epimorphism,当且仅当对所有对象 cf 对应的 post-composition Hom(c,x)Hom(c,y) 是一个满射。

然而,一个范畴的所有对象和态射不必局限于构成一个集合——它可以是 collection。这为我们提供了一个更加抽象的视角。

关于单态射和满态射,一个不那么直觉的结论是,如果一个态射既单又满,那么它 未必 是同构。然而,如果它是 split monomorphism 或者 split epimorphism,那么它一定是同构。深入这一点之前,要先对单态射和满态射形成一些理解。从定义上看,monomorphism 就是左消去,split monomorphism 就是左逆存在,epi 同理是右。在范畴论的世界里,对象一般是一个数学结构(比方说群)而不是具体的某个元素(比方说群里的某个元素)。单态射,就像人们理解的单射一样,以一种保持结构的方式把一个对象变换成另一个对象,所以 split monomorphism 的左逆也叫做 retraction(撤销),有点像群作用里撤销一个元素的作用。满态射,则是一个变换,它提取出源对象足够的信息,使得经过了它的变换之后,依然可以区分不同的作用(我们姑且规定态射从左边复合另一个态射就是作用),也许是出于这个原因,split epimorphism 的右逆也叫做 section(截面),像是在源对象上截取一个部分,使得态射限制在这一部分上成为一个同构。

下面看回既单又满的态射。一个典型的例子是,环范畴上 ZQ 的包含态射,它既是单态射又是满态射,但却不是 split monomorphism 或者 split epimorphism。

Duality 是一个近乎平凡的操作,就不详细展开了。今天先写到这里,下次再说 functor。不得不说,理解概念在抽象一点的数学学习是一个比较困难的事情,需要很多类比、例子、想象才能建立起直觉。

参考文献: Category theory in context , chapter 1. 这本书有太多“数学向”的例子,对 CS 新人不是很友好…