同调代数学习笔记 (2) 图追踪

2020 年 08 月 23 日发布.

翻过任意教材的人可能都知道大部分地方证明用到了一种叫做 diagram chasing(图追踪)的方法。这使得我们对任意的阿贝尔范畴证明蛇引理就像在 $R$-模范畴(比如 $R=\Z$ 时,阿贝尔群范畴)中证明一样简单。

然而对于任意的阿贝尔范畴,我们是不能这样做的。本篇介绍的“图追踪”方法就是作为替代的一种理论。

$$ \gdef\coker{\operatorname{coker}} \gdef\im{\operatorname{im}} \gdef\Hom{\operatorname{Hom}} $$

证明

对任意的 $z\in\ker c$,由于 $f_2$ 是满射,都存在 $u\in B'$ 使得 $f_2(u)=z$;此时取 $y=b(u)$,则 $g_2(y)=c(z)=0$,因此存在 $x\in A$ 使得 $g_1(x)=y$。我们取这个 $x+\im a$ 为 $\delta(z)$。

接下来我们还要证明 $x+\im a$ 的选取不依赖于 $u$。若 $f_2(u')=f_2(u)=z$,那么 $f_2(u-u')=0$,从而存在 $t\in A$ 使得 $f_1(t)=u-u'$。此时若 $g_1(x)=b(u),g_1(x')=b(u')$,则 $g_1(x-x')=g_1(a(t))$。根据 $g_1$ 的单性这说明 $x-x'=a(t)$,因此 $x,x'$ 属于相同的 $\im a$ 的陪集。因此映射 $\delta(z)$ 是良定义的(并且这里面每一步都是线性的,因此 $\delta$ 也确实是一个 $R$-模同态)。

正合性则可以直接通过计算每个 $\ker$ 和 $\coker$ 得到。 证毕.

一般的阿贝尔范畴就没办法这么简单。因为一些范畴并不由“基础的集合”加上一些代数结构给出,因而我们也没办法通过“对于 $A$ 的每一个元素都可以得到 $B$ 的一个元素”这样来得到一个态射。

虽然我们其实有 Freyd-Mitchell 嵌入定理,即任何一个小的(所有对象和态射构成集合)阿贝尔范畴都到某个 $R$-模范畴有全的、忠实的、正合的函子。即,我们可以把它“嵌入”到一个 $R$-模范畴中,并且任意 $\Hom(A,B)\to\Hom(F(A),F(B))$ 都是同构且这个函子保持正合性。 这个定理是一种解决方案,但是它本身不是那么显然。我们这里给出一个用来“图追踪”的替代方案。

广义元及对应的描述

广义元的定义

容易想到,在普通的集合范畴 $\mathsf{Set}$ 中我们可以用 $*\to X$ 的态射来代表 $X$ 的一个元素;那么阿贝尔范畴怎么用类似的方法呢?

我们可以考虑将(阿贝尔范畴中,下同)$X$ 的一个元素定义为一个 $(A,h)$ 对,其中 $A$ 为任意对象而 $h$ 为 $A\to X$ 的态射。这样的元素称为广义元generalized element)。我们可以把两个对应的 $A$ 相同的元素加起来(即把两个态射加起来);还可以给它应用任何 $X\to Y$ 的映射变成 $Y$ 的一个元素。这样我们可以定义 $f((A,h))=(A,fh)$。此时我们记做 $x=(A,h)\in X$

但是还差一点:如果有一个满射 $Z\to X$,我们期望可以找到一个 $Z$ 的元素,通过这个满射之后变成我们指定的元素。这件事情是做不到的。为了做到这一点,我们允许对元素进行细化refinement):如果 $e:M\to A$ 是一个满射,那么我们认为 $(M,xe)$ 和 $(A,x)$ 是同一个元素。

这样的话,如果 $f:Z\to X$ 是一个满射而 $(A,x)$ 为 $X$ 的一个元素,那么记 $M$ 为 $x,f$ 的拉回;则 $f$ 拉回成满射 $f':M\to A$;$x$ 提升到 $x':M\to Z$;因此这时 $(M,x')$ 是 $Z$ 的一个元素、并且 $f((M,x'))=(M,xf')$,根据前面的描述,这和 $(A,x)$ 被看做是同一个元素。

正合性

如何用广义元来说明正合性?

根据上一篇文章中的引理:若 $A\xrightarrow{f}B\xrightarrow{g}C$ 满足 $gf=0$,那么该序列正合当且仅当

可以看出这就是说:对于任意元素 $x=(D,h)$,如果 $g(x)=0$,那么存在 $x$ 的一个细化 $x'\;[=(E,fl)]$ 以及 $A$ 中一个变量 $y\;[=(E,l)]$ 使得 $f(y)=x'$。这和我们直觉上的想法是相同的。

非满射上的提升

如果 $f:Z\to X$ 不是满射但是我们想通过 $x\in\im f$ 来把 $x=(A,h)$ 提升到 $Z$ 上去应该怎么办?

这个问题本质在于:如何说明 “$x\in\im f$”。对此只需要说明 $x$ 的某个细化会分解出 $i:\im f\hookrightarrow X$ 的态射(即,某个细化具有 $(A',h'i)$ 的形式)。

这样,由于 $f:Z\to\im f$ 是满射,就可以把 $\im f$ 上的元素 $(A',h')$ 细化成 $Z$ 上的元素了。

怎么像在 $R$-模上搞出 $\im f_1+\im f_2$ 来?我们可以把它变成一个映射 $Y_1\times Y_2\to X$,这样就有 $\im[f_1,f_2]=\im f_1+\im f_2$。于是要把 $X$ 上的元素分解成 $f_1(a)+f_2(b)$ 的形式,就只要让它的细化分解出 $[f_1,f_2]$ 即可。

态射的构造

如本文最初的例子,我们通过选取 $X$ 中任意一个元素,一番操作后得到了 $Y$ 中的一个元素,最后说明这样的操作不依赖于“中间变量”的选取来构造出了 $X\to Y$ 的态射。

利用广义元的细化,我们可以把它变成这样:首先选出任意一个满射 $A_0\to X$(比如 ${\rm id}_X$),然后中间经过一系列的复合、提升、细化,得到了一系列满射(细化的时候出现的) $A_n\to A_{n-1}\to\dots\to A_0$ 以及态射 $A_n\to Y$ 。简单地说我们有满射 $e:A_n\to X$ 和态射 $y:A_n\to Y$。如果我们能说明 $y$ 干掉了 $\ker e$,(即 $y\circ\ker e=0$),那么就诱导了 $y':X\to Y$ 使得 $ey'=y$(这是因为 $e$ 是 $\ker e$ 的 $\coker$。还记不记得阿贝尔范畴的定义里说明满射都是自己的 kernel 的 cokernel)。

怎么说明 $y$ 干掉了 $\ker e$?直观上来看,若对任意的 $x\in A_n$ 都有 $e(x)=0\implies y(x)=0$,那么就有 $y\circ\ker e=0$。事实上这是很显然的,取 $x=(\ker e,i)$($i$ 为 $\ker e\to A_n$ 的内射)即可。

我们画一个例子来说明。注意下图中每个 $A_i$ 都是一个拉回;不妨设 $Y=U_3$。

Example

假设构造态射的过程中出现了三次细化,如图所示。那么对任意的 $x\in A_3$,它事实上记录了 $U_1,U_2,U_3$ 等每个“选择一个变量 $z$ 使得 $f(z)=x$ ”的 $z$;换句话说 $A_3$ 记录了所有的中间变量。因此设这些变量分别为 $u_1,u_2,u_3=y$,那么我们只需要证明:若 $f_1(u_1)=0,f_2(u_2)=h_2(u_1),f_3(u_3)=h_3(u_2)$,则 $u_3=0$。

例子:再次证明蛇引理

Snake Lemma

首先我们构造 $\delta$ 外的序列并且说明它正合。

由于 $b(f_1i_a)=0$,因此 $f_1i_a$ 通过 $i_b$ 分解出 $p_1:\ker a\to\ker b$。同样可以构造出 $p_2,q_1,q_2$。然后需要说明上下这两行正合。

对任意的 $x\in\ker b$ 使得 $p_2(x)=0$,都有 $f_2(i_b(x))=i_c(p_2(x))=0$,因此由 $A'\to B'\to C'$ 的正合性,存在 $u\in A'$ 使得 $f_1(u)=i_b(x)$。此时由于 $g_1(a(u))=b(i_b(x))=0$ 且 $g_1$ 单,就有 $a(u)=0$,因此 $u\in\ker a$。这样就证明了 $\ker a\to\ker b\to\ker c$ 正合;$\coker$ 那一边是对偶的。

注意这里的细化操作我们省略掉了;因为除了在构造态射的时候,我们都完全可以直接把 $x$ 和它的细化当做等同的、并且不难验证这样之后提升、复合等操作也是良定义的。

接下来定义 $\delta$。从 $P_0=\ker c,h_0={\rm id}_{\ker c}$ 出发,我们首先有 $z=(P_0,h_0)\in\ker c$;由于 $f_2$ 满,存在 $u\in B'$ 使得 $f_2(u)=z$;此时取 $y=b(u)$ 则 $g_2(y)=c(z)=0$,因此存在 $x\in A$ 使得 $g_1(x)=y$。我们取 $e_a(x)$ 为 $\delta(z)$。

这里我们具体发生的事情(这一段只是在解释上面的构造,事实上可以省略):$z=(\ker c,{\rm id}_{\ker c})\in\ker c;i_c(z)=(\ker c,i_c)\in C'$;然后在 $C'\to B'$ 有一次细化:$P_1=B'\times_{C'}\ker c$,此时记 $f_2,i_c$ 的拉回为 $f_2',i_c'$,则有 $u=(P_1,i_c')\in B'$。然后 $y=(P_1,bi_c')\in B$。接下来沿 $g_1$ 提升的时候由于 $g_1$ 单,所以事实上不需要细化。因此存在 $x=(P_1,k)\in A$ 使得 $g_1(x)=y$,即 $g_1k=bi_c'$。然后我们取 $e_a(x)=(P_1,e_ak)\in\coker a$ 为 $\delta(z)$。

接下来需要证明这个 $\delta$ 是良定义的。根据上面的描述,我们只需要说明:若 $f_2(u)=0,g_1(x)=b(u)$,则 $e_a(x)=0$。这很显然,因为如果 $f_2(u)=0$,则存在 $t\in A'$ 使得 $f_1(t)=u$;因此 $g_1(a(t))=b(u)=g_1(x)$。由于 $g_1$ 为单射,就有 $a(t)=x$,因而 $e_a(x)=0$。

我们注意到这段证明里也忽略了细化操作。这是因为一旦 $\delta$ 构造完成剩下的证明部分就不需要还原每一步了。

至于证明 $\delta$ 两边的正合性也完全可以如此来证明。因此我们就像 $R$-模里一样证明了 Snake Lemma。你完全可以把它和前一篇的证明对比,会发现我们隐式用到的各种推出和拉回都是一样的。