这是一个非常trivial的范畴论笔记,目的是让我忘得尽量慢一些。我主要就直接抄李教主的书了。

范畴论基础

范畴是什么

范畴C由下面几个要素定义:1

  • 集合 Ob(C),其元素称作C对象.
  • 集合 Mor(C),其元素称作C态射,而且配上一对映射
    Mor(C)stOb(C) 其中s,t分别给出态射的来源和目标。对于X,YOb(C),记
    HomC(X,Y):=s1(X)t1(Y) 称为Hom-集,其中的元素称为XY的态射。

  • XOb(C),给定态射idXHomC(X,X),称为X恒等态射.

  • X,Y,ZOb(C),给定态射之间的合成态射
    :HomC(Y,Z)×HomC(X,Y)HomC(X,Z)(f,g)fg 满足下面两条性质:
    f(gh)=(fg)hfHomC(X,Y),fidX=f=idYf 注意上面第二个性质唯一确定了idX本身。

简单点说范畴就是一堆对象加上他们之间的一些箭头,这个图像也方便我们引入交换图表来研究范畴论。一个带箭头的图表交换,就是说上面的箭头合成殊途同归。

对于态射f:XY,若存在g:YX使得:

fg=idY,gf=idX

则称f:XY是同构,g称为f的逆,不难发现逆存在则唯一。从XY的同构集称为IsomC(X,Y)。如果一个范畴中的所有映射都可逆,那么称其为广群

另外还有两个比较重要的概念:

EndC(X):=HomC(X,X),AutC(X):=IsomC(X,X)

分别称为X的自同态集和自同构集,在的乘法下,前者由于不一定可逆所以是幺半群,后者是群。

范畴C的子范畴C由下面的几条定义

  • Ob(C)Ob(C)
  • Mor(C)Mor(C),并且保持恒等态射
  • Mor(C)stOb(C)中的来源目标映射都由C限制而来
  • C中态射的合成也由C限制而来

简单点的说法就是X,YOb(C)HomC(X,Y)HomC(X,Y),而且和态射的合成是兼容的,如果包含关系变成等号HomC(X,Y)=HomC(X,Y),则称为全子范畴

从点与箭头的直观图像来看,子范畴就是子图。全子范畴就是导出子图

例子:

  • Grp称为群范畴,态射是群同态
  • Ab称为交换群范畴,是群范畴的全子范畴
  • Set称为集合范畴,是所有集合构成的范畴,态射定义为集合之间的映射。这个范畴就非常大了,而且涉及到集合论非常微妙的点,必须引入宇宙才行。
  • Top 称为拓扑范畴,是所有Hausdorff空间构成的范畴,态射就是拓扑空间之间的连续映射
  • Vect(F)称为F上线性空间构成的范畴,态射就是线性映射
  • 对于一个集合S,把其中的元素看成对象,把每个元素对应的恒等映射看成态射,这样定义了一个离散范畴Disc(S)​ 从这些例子可以看出,范畴有点像集合的集合,给不同集合之间赋予了一些关系。
  • 0是空范畴,对象和态射都是空集。1范畴是恰有一个对象和一个态射,显然这个态射就是恒等态射。进一步还可以定义n范畴,定义为Ob(n)={0,,n1},态射可以表示为(略去恒等态射):
    01(n1),那么01就是这个的特殊情况(1中对象为0)。

  • 还可以更抽象的对任意一个预序集(P,),将其等同于任两个对象间至多只有一个态射的范畴。定义对象集为P,两对象间存在态射pppp,且态射唯一。而n范畴就是对全序集的定义。

对态射的单和满的讨论可以转换为下面的命题:

  • f是单态射,如果ZOb(C),g,hHom(Z,X),有fg=fhg=h
  • f是满态射,如果ZOb(C),g,hHom(Z,X),有gf=hfg=h

这也很好理解,只有当f是单的时候,它才可能存在左逆,满的时候才可能存在右逆。但是要注意,上面的图像时集合论给的,但是单和满的意义在不同范畴下与集合论意义下并不一定相同,而且既单又满即是同构这一说法也不对所有的范畴成立。

对于任何范畴,把所有的箭头全部换成反向的,也可以定义一个反范畴Cop

  • Ob(Cop)=Ob(C)
  • X,YOb(C)HomCop(X,Y):=HomC(Y,X)

  • 态射fHomCop(Y,Z),gHomCop(X,Y)在反范畴中的合成fopg定义为范畴中的反向合成gf

  • 恒等映射不变

任何一个范畴都有反范畴其实说明了范畴论的对偶原理,直接反转箭头,把单态射变成满的,满态射变成单的,这样子做范畴论的公理依然保持。

函子

函子简单来说就是把两个范畴联系起来,比如群的表示就是GrpVect(F)的函子;还有群的abel化是GrpAbel的函子;还有基本群是从TopGrp的函子。2

对于范畴C,C,一个函子F:CC由下面定义:

  • 对象间的映射F:Ob(C)Ob(C)3
  • 态射间的映射F:Mor(C)Mor(C),且满足: X,YOb(C),F:HomC(X,Y)HomC(FX,FY)F(qf)=F(q)F(f),F(idX)=idFX 第一个是在说点平移了,他们之间的箭头也会平移。第二个是表明了共变性。而对应的(C)opC的函子F称为反变函子,主要是因为op是反着定义的。

上面函子定义的第二点告诉我们一个非常重要的性质: 如果把交换图上每个箭头和结点都作用上函子,那么交换图仍交换

函子映射箭头的过程中,可能出现“简并”,也就是两个箭头在CC中被F映射为了同一个箭头。如果没有这种情况,则称F忠实的,数学上严谨的说就是HomC(X,Y)FHomC(FX,FY)对任意对象都是单射。

另外有可能有些箭头在C里面有但是C里面没有,也就是说有些C里面的箭头没有通过C中的某个箭头映射得到。如果没有这种情况发生,也就是HomC(X,Y)FHomC(FX,FY)对任意对象都是满射,那么就说F全的

另外F作用的时候可以把点简并一下,把图扭曲一下,这样就有可能让每个对象都有一堆互逆的箭头与某个FX相连,这样的F称为是本质满的,如果C中的所有对象都同构于某个FX

最简单的忠实函子是由子范畴导出的包含函子ι:CC,它是全函子当且仅当C是全子函子。如果取C=C,得到的称为恒等函子idC

函子间的态射

态射这个词需要在范畴的语境下才能用,下一节会更加明确为何确确实实是态射。函子间的态射也可以叫做自然变换,这个词就不需要定义函子范畴后来说了。两个函子F,G:CC之间的自然变换θ是由C中的一簇映射的集合定义的:

θXHomC(FX,GX),XOb(C)

它对态射之间的变换便也是“逐点”定义的,要求就对任意的态射f:XYMor(C)下图交换:

(1)FXθXGXFfGfFYθYGY

这样定义的自然变换记为 θ:FG,图解为:4

上面这种带的图称为2-胞腔,上面交换图形式对θ的定义很容易让人与FG的同伦联系起来。

自然变换的合成

纵合成

考虑下图所示的三个函子之间的态射,现在的目标是找到FH的态射:

由于函子的态射本身就是一簇态射定义的,所以定义函子间的态射合成也可以通过逐点定义:

(ψθ)X={ψXθX:XOb(C)}

函子间的映射确实是态射最重要的就是看是否满足前面的交换图定义,纵合成的验证是trivial的。

横合成

目标是找到下面的合成,合成后依然是函子的态射,使得前面的图(1)交换:

根据

θXHomC(F1X,F2X),F1X,F2XOb(C),ψ:G1G2

可知下面图表交换:

G1F1(X)ψF1XG2F1(X)G1(θX)G2(θX)G1F2(X)ψF2XG2F2(X)

上面交换图的对角合成(ψθ)X:G1F1(X)G2F2(X)就是要求的横合成。

下面来证明这一定义的自然性,因为θ是自然变换,G1是函子5,所以下图左方块交换。右方块的交换类似上面定义(ψθ)X所作的交换图,只是把F1X,F2X换成了F2X,F2Y

G1F1(X)G1θXG1F2(X)ψF2XG2F2(X)G1F1fG1F2fG2F2fG1F1(Y)G1θYG1F2(Y)ψF2YG2F2(Y)

上面交换图水平方向箭头合成之后,把中间竖线拿掉,上下分别是(ψθ)X(ψθ)Y,这正是(1)

对于任何一个函子,都可以定义到自身的恒等函子idF,其中(idF)X=idFX。利用函子保恒等态射的性质,恒等函子与其它函子之间的合成规则可以简化。

那么自然变换θ:F1F2的逆就可以定义为满足

ψθ=idF1,θψ=idF2

的自然变换ψ:F2F1,如果自然变换可逆,那么称两个函子同构,θ:F1F2。不难发现可逆则逆唯一,且逆无非就是在范畴中逐点取逆:

(θ1)X:=(θX)1:F2XF1X

这也意味着θ可逆当且仅当每一个θX都可逆。这个时候我们称θX:F1XF2XX是自然同构,或典范同构。

另外,横纵合成是有结合律的,纵合成可以从逐点态射的结合律直接看出,下面来证明横合成之间的结合律。考虑下面的函子以及自然变换:

根据ϕ是自然变换可以看出下面交换图的正方形部分交换,所以整个图交换:

HG1F1(X)H1ψF1XH1G2F1(X)ϕG2F1XH1G2F2(X)H1G2(θX)H2G2(θX)H2G2F1(X)ϕG2F2XH2G2F2(X)

按照右下的方式合成给出(ϕ(ψθ))X,按照下右的方式给出((ϕψ)θ)X,所以结合律成立。这一步并不trivial,需要详细说明一下。首先看下右的合成方式。合成得到的是:

ϕG2F2XH1G2θXH1ψF1X=ϕG2F2XH1(G2θXψF1X)

再来看((ϕψ)θ)X

[(ϕψ)θ]X=(ϕψ)F2XH1G1θX=ϕG2F2XH1ψF2XH1G1θX

第一个等号首先是利用了下面的交换图定义ϕψθ的合成(走下面那条合成路线):

(H1G1)F1(X)(ϕψ)F1X(H2G2)F1(X)H1G1θXH2G2θX(H1G1)F2(X)(ϕψ)F2X(H2G2)F2(X)

对应的胞腔为:

第二个等号就是利用ϕψ的定义了。看来只需要证明:

G2θXψF1X=ψF2XG1θX

这是利用了下面的图可交换:

G1F1(X)ψF1XG2F1(X)G1θXG2θXG1F2(X)ψF2XG2F2(X)

原因就是ψ的自然性。完全类似的可以讨论ϕ(ψθ),需要用到ϕ的自然性。

对于图表:

还有下面的互换律:

(ψθ)(ψθ)=(ψψ)(θθ)

这是在说只要最后得到的2-胞腔相同,不管中间过程,合成自然变换一定一致。

范畴间的等价与同构

如果C1,C2上的函子F:C1C2和函子G:C2C1满足存在函子间的同构:

θ:FGidC2,ψ:GFidC1

则称GF拟逆函子,并称FC1C2等价。进一步如果:

FG=idC2,GF=idC1

那么F就是范畴间的同构GF

注意函子的逆存在则唯一,但是拟逆函子可以有很多个,他们之间可以差一个函子的同构,也就是说:

GG都是函子F的拟逆函子,则存在函子的同构GG

证明就下面一个等式,利用自然变换的横合成:

GψidG(GF)G=G(FG)idGθG

然后注意到态射间的等价关系确实是等价关系,具有反身性和传递性可证。实际上对于任意范畴中的:

AfBgChD

如果AgfCBhgD都是同构,那么f,g,h全为同构。

从经验上看,其实范畴的同构是最没用的东西,范畴间的等价才是最精妙的能够带来新的数学结构的东西。

下面有一个证明范畴等价的有用定理,首先引入范畴的骨架的概念。

称一个全子范畴CCC的一副骨架,如果对于C中的每一个对象X都存在同构XYOb(C),而且YOb(C)是唯一的。自为骨架的范畴称为骨架范畴

有下面引理成立,这里不做证明,但需要注意这个证明需要用到ZFC公理体系的选择公理:

任意范畴C总有一副骨架C,且包含函子ι:CC是等价。骨架范畴间的全忠实且本质满函子都是同构。

利用上面的引理可以证明下面的定理:

对于函子F:C1C2

F 是范畴等价F 是全忠实且本质满函子

对偶函子和双对偶函子

考虑k上的线性空间范畴Vect(k),定义对偶空间:

V:=HomVect(k)(V,k)

也就是通常所说的线性泛函的集合。任意一个线性映射f:V1V2Mor(Vect(k))诱导对应的对偶空间的反向映射:

f:V2V1,[λ:V2kV2]λf

D:VV,ff实际上定义了一个忠实函子D:Vect(k)opVect(k),称为对偶函子,另外还有一个合成函子DDop:Vect(k)Vect(k)称为双对偶函子6

定义求值映射:

ev:VDDopV=(V)|ψ[ϕ||ψϕ|ψ]

注意DopV是所有Vk的线性映射构成的集合,用狄拉克符号写就是ϕ|。而DDopV就是所有ϕ|k的线性映射,这同构于V,因为根据里斯表示定理,总是可以通过配合一个|ψ实现ϕ|ϕ|ψk。所以乍一看求值映射是把|ψ变成|ψ,但是要注意两个的含义不同,一个是作为线性空间中的矢量,一个是作为对偶空间中的线性映射。

根据对偶线性空间定义以及对应对偶态射的定义可知下面的图交换:

VevDDopVfDDopfWψF2XDDopW

所以求值映射作为函子的态射ev:idDDop。求值映射是单射,而且如果讨论的是有限维向量空间,它还是双射,所以有同构:

ev:idVectf(k)DDop

对于反范畴也有:

idVectf(k)opDopD

所以D:Vectf(k)opVectf(k)是范畴等价,Dop是其拟逆。

函子范畴

假设有一簇范畴{Ci,iI},定义积范畴iICi

Ob(iICi):=iIOb(Ci),HomiICi(X,Y):=iIHomCi(Xi,Yi),

从集合的角度来看,对象就是卡式积,积范畴也可记为:7

C1××Cn

X的意思是积范畴中的对象,i标记的是在Ci​上的分量。显然态射是逐个分量定义的,态射的合成也是。显然下面的投影函子是良定义的:

prj:iICiCj

还可以定义余积范畴iICi

Ob(iICi):=iIOb(Ci),HomiICi(Xj,Xk):={HomCj(Xj,Xk),j=k,,jk;

从集合的角度来看,对象就是不交并8,余积范畴也可记为:

C1Cn

这里不涉及到多个分量,Xi的下标i表示它来自Ci。态射的定义非常清晰,就是原先有的全部都有,原先两个范畴之间没有的不画蛇添足。显然这样Ci是作为一个余积范畴的全子范畴,有下面的嵌入映射:

ιj:CjiICi

比较特殊的一个二元函子比如Hom函子,它由给定范畴C的态射(X,Y)HomC(X,Y)定义:

HomC:Cop×CSet

显然这个函子不满,但是,更值得注意的是,定义中是Cop×C,而不是简单的C×C。你把Cop换成C并不会导致对象的改变,这样做实际上是为了使得态射在Hom函子下的变换是良定义的。

注意到在C中的一对态射f:XX,g:YY,那么(f,g)将作为C×C中的态射,需要找到Hom函子对其的变换,也就是下面的示意图:

X×YHomCHomC(X,Y)(f,g)?X×YHomCHomC(X,Y)

ϕHom(X,Y),下面图表不易定义ψ=HomCϕHomC(X,Y)

XϕYfgX?Y

但是不难发现,一旦我们把上面的图表左边的箭头反向变为:

XϕYfgXgϕfY

立刻就可以定义出诱导映射:

HomC(X,Y)HomC(X,Y)ϕgϕf.

有时也说这是态射ϕf作拉回,对g作推出. 拉回与推出习惯用符号fϕ=ϕfgϕ=gϕ表示.易见(f1f2)=f2f1(f1f2)=(f1)(f2).

要做到这一点很简单,只需要把C×C换成Cop×C。并且把在C意义下的f:XX变成f:XX,这样(f,g)Cop×C的意义下依旧是X×YX×Y的态射,因为反范畴箭头全部反向。而讨论ϕ的变换的时候我们又是在C的意义下定义的。

函子范畴如下定义:

C1,C2U-范畴,定义函子范畴 Fct(C1,C2):其对象是C1C2的函子,任两个对象F,G间的态射是自然变换θ:FG;态射θ:FGψ:GH的合成是自然变换的纵合成ψθ:FH。有时也把Fct(C1,C2)写作 C2C1​。

定义了函子范畴之后就可以研究某个函子的自同态群和自同构群,范畴的中心的概念如下:

Z(C):=End(idC)=HomFct(C,C)(idC,idC)

里面的元素是一簇自同态ψX:XX,XC,使得下面的图表交换:

XψXXffYψYY

由此不难知道中心Z(C)对二元运算总是交换的,不难看出这与具体的群范畴中的群中心之间的关系,那个时候就是群乘法。

范畴等价F:C1C2诱导中心同构Z(C1)=Z(C2)

按照函子的定义,中心之间首先是同态关系,所以只需要进一步利用单和满来说明是同构。这一点由F是范畴等价来保证,

泛性质

物理人在讲张量的时候有下面的几种理解,越数学的越后:

  • 坐标变换下协变
  • 多重线性映射
  • 向量空间的自由积模掉两个线性结构得到的张量积空间中的元素

但是那些搞数学的往往就下面一个交换图:9

这就是所谓用泛性质描述数学对象的方法,本节用范畴论给下理论支撑。

始终对象和零对象

范畴C中的对象X称为始对象,如果对所有对象Y集合$\mathrm{Hom}\mathcal{C}(X,Y).XY\mathrm{Hom}\mathcal{C}(Y,X).X$既是始对象又是终对象,则称之为零对象。

也就是说始对象是指向每个元素一次,终对象是每个元素指向一次,零对象就是流入流出完全平衡。始终对象是互为对偶的,C中的始对象是C的终对象。

利用泛性质描述的基本原理是任意一个范畴中的始对象、终对象以及零对象在相差一个同构的意义下是唯一的:(但是不一定存在)

X,XC中的始对象,则存在唯一的同构XX.同样性质对终对象也成立.

证明不难,就是利用态射的唯一性。这样画出一个交换图,就可以利用唯一性定义某个结构,可能的其它结构都是与之同构的。

C中有零对象,记作0。对任意X,YOb(C)定义零态射0:XY

X0Y

的合成。

上面的定义中有下面两条显然的性质:

  • 零态射的合成仍然是零态射
  • 零态射的定义无关零对象的选取

第一个只需要注意到下面的交换图:

所以:

X0Y0Z

相当于X0Z,也就是0:XZ。第二个只需要注意到下面的交换图:

现在来看一个例子:自由向量空间的泛性质定义。

自由向量空间的定义很简单,就是一个集合X强制作为基底,然后在数域k上形式的赋予其数乘和加法,自由生成一个向量空间,这就是自由向量空间V(X)

从范畴上看就是给定了一个函子V:SetVect(k)f:XY诱导出自由向量空间之间的线性映射V(f):V(X)V(Y),其定义就是f在基上的限制刻画的。知道了集合中的元素怎么到向量空间显然还不足以知道这个线性空间的全部,我们还需要知道线性空间中的向量如何回到集合中的元素。这可以通过忘却函子U:Vect(k)Set做到。xXxV(X)的映射就给出了态射ι:XUV(X)10

显然(V(X),ι)这两个东西决定了自由向量空间的结构,所以我们要做的就是将其作为某个范畴的始终或零对象,这样定义在相差一个同构的意义下就是完全唯一的。

逗号范畴

前面的泛性质可以更加统一的用逗号范畴描述。

现在回过头来看最初的那个张量空间的泛性质定义。

然后再来看自由向量空间的泛性质定义。

附录:Grothendieck 宇宙

集合论拾遗

序结构

偏序集是一个集合P上配一个二元关系,满足:

  • 反身性 xP,xx
  • 传递性 (xy)(yz)xz
  • 反称性 (xy)(yx)x=y

如果去掉第三个反称性,那么就叫预序集,如果每两个元素之间都能够比大小,那就叫全序集

数学家的宇宙

众所周知集合论有关的思考引发了第三次数学危机,所以数学上讨论有关集合论的问题的时候一定要小心,特别是涉及到无穷。Grothendieck宇宙粗略上说就是可以进行所有数学操作的集合U,只要找到了某个宇宙,那么在这个宇宙下讨论范畴问题就非常安全。

Grothendieck 宇宙U是一个满足下面公理的集合

  • 如果xUyx,则yU,也就是说这是个传递集
  • 如果xU,则幂集2xU(幂集的意思就是集合中所有子集,包括和自身,构成的集簇)
  • 如果IU,xU是一个映射,则αIx(α)U

还有两条不是必须的11,但这里也包括进来:

  • u,vUu,vU
  • Z0U

XU,那么称其为U-集,在上面两条的基础上,放宽条件,可以定义U-小集为和某个U-集等势的集合。我的note里面都默认讨论的所有范畴结构或者代数结构都是U-小的。

不难证明U不包含其自身,所以不会导致理发师悖论。在Grothendieck宇宙中可以做所有数学操作而不产生悖论,让我们不用理会集合论中的一些棘手问题,但是,有没有充分多的宇宙,让每一个讨论的问题都可以在某个宇宙下安全讨论是一个问题,我们引入如下假设:

对于任意一个集合X,都存在宇宙U,使得XU

后面的讨论也在这个假设下展开。

参考资料

关于范畴论,下面的几本书不错:

  • 李文威,《代数学方法(基础架构)》
  • Tom Leinster, Basic Category Theoty
  • S. Mac Lane, Categories for the Working Mathematician, 2nd (GTM05)

注记

  1. 提到范畴的时候其实有一些关于集合论上很微妙的地方,这个微妙性可以通过引入格罗腾迪克宇宙将考虑的范畴都升级为U范畴来避免。 

  2. 物理里面还有一个装逼的说法:路径积分是几何范畴到Hilbert空间组成的张量范畴的函子。 

  3. 这里有点滥用符号,实际上应该用Fob,Fmor区分 

  4. 这是利用tikzJax渲染的,渲染可能会有点慢,请耐心等待并刷新 

  5. 这里利用了前面说的函子作用在交换图上仍是交换图 

  6. 这里有个微妙的地方,对偶函子和双对偶函子当且仅当线性空间范畴限制在有限维线性空间的时候才有,下文省略其子范畴Vectf(k)的下标f记号。当然,对于一般的包括无限维线性空间的范畴,DDop也是函子。 

  7. 这个包括后面余积范畴的不交并,其实都要在|I|有限的情况下才能说。 

  8. 集合的并就是把双方元素合起来,相同元素算一次。但是不交并就是相同元素算两次,相当于拷贝了一份“副本”,这两个认为是不同的。 

  9. 交换图的虚线表示存在且唯一存在一个态射使得图表交换,所以那里的!有点多余其实。 

  10. 这实在是太绕了,需要多想想。 

  11. 或者说不是原始表述里面有的 

原创文章转载请注明出处: 范畴论——范畴与函子