Draft lesson.
Testing exactness with doubled objects
Written with GPT-6.1 Sol (OpenAI). Original text: CC0.
An additive functor already respects finite sums. Its failure of exactness lies in the maps attached to those sums: a kernel may cease to be a kernel, or a quotient may cease to be a quotient. Doubling an object along a subobject, or doubling it over a quotient, packages these failures into a pair of parallel arrows. This gives tests that use only monomorphisms or only epimorphisms, while still detecting preservation of every finite limit or colimit.
The first prerequisite is the kernel, cokernel and image factorization in an abelian category. We use the ordinary kernel-pair and self-pushout descriptions proved in Trace coreflections and balanced nonabelian categories, Section 3. For additive functors and finite sums, see Formal linear combinations and finite sums. The full exactness criterion is proved in Full subcategories and exact closure, Lemma 2.1. All categories in this lesson are locally small abelian categories, and all diagrams below are finite.
Basic references are the Stacks Project, Abelian categories, its short-exact criteria for additive functors, Lemma 12.7.2, and its snake lemma with open row ends, Lemma 12.5.17. The short-exact criteria are used in Section 1; the precise weak-row snake construction is used in Section 4.
1. Witnesses for a kernel or a quotient
Write \(u:A\to B\) and \(v:B\to C\), with \(vu=0\). To say that \(0\to A\xrightarrow{u}B\xrightarrow{v}C\) is exact means precisely that \(u\) presents the kernel of \(v\). For fixed \(W\), put \(H(T)=\operatorname{Hom}(W,T)\). Consequently, for every object \(W\), the sequence
\[ 0\to H(A) \to H(B) \to H(C) \tag{1.1} \]is exact. Conversely, its initial injectivity and middle exactness say that every map \(t:W\to B\) killed by \(v\) has a unique factor through \(u\). Varying \(W\) gives exactly the kernel universal property. This proves both directions without assuming that \(v\) is epic.
For an exact sequence \(A\xrightarrow{u}B\xrightarrow{v}C\to0\), use maps out of the objects. For fixed \(W\), put \(D(T)=\operatorname{Hom}(T,W)\). The corresponding condition is exactness, for every \(W\), of
\[ 0\to D(C) \to D(B) \to D(A). \tag{1.2} \]Here injectivity of precomposition by \(v\), together with middle exactness, says that every \(t:B\to W\) with \(tu=0\) factors uniquely through \(v\). This is the cokernel universal property. These are the two Hom tests of Stacks, Lemma 12.5.8; the arguments above supply the universal-property proofs. A single probe need not suffice. In particular, a general abelian category need not have an object whose maps into every object detect all kernels.
We also use the short-exact tests of Stacks, Lemma 12.7.2. For an additive functor \(F:\mathcal A\to\mathcal B\), left exactness is equivalent to preserving the left three terms of every short exact sequence; right exactness has the corresponding right three-term test. Left exactness means preservation of finite limits, and right exactness means preservation of finite colimits. The lemma supplies both implications in their full abelian generality.
For later use, full exactness is also equivalent to preserving every sequence \(A\to B\to C\) exact at \(B\). Indeed, if \(F\) is exact, it preserves all kernels and cokernels by Lemma 2.1. In an exact three-term sequence, factor the first arrow as \(A\twoheadrightarrow I\hookrightarrow B\), where \(I=\ker(B\to C)\). Its image under \(F\) is an epimorphism followed by the kernel of \(F(B)\to F(C)\), proving middle exactness. Conversely, preservation of all three-term exact sequences tests every monomorphism on \(0\to A\to B\), every epimorphism on \(B\to C\to0\), and the middle of every short exact sequence on \(A\to B\to C\). Since an additive functor sends a zero object to a zero object, these three tests give preservation of the full short exact sequence.
2. The two doubled objects
Let \(i:K\hookrightarrow Y\) be monic and let \(q:Y \twoheadrightarrow Q\) be its cokernel. Its self-pushout has the description
\[ \begin{gathered} P=Y\amalg_KY\cong Y\oplus Q,\\ j_1=\binom{1_Y}{0},\qquad j_2=\binom{1_Y}{q}. \end{gathered} \tag{2.1} \]The notation is a biproduct matrix, so it makes sense without elements. If \(s:Q\to Y\oplus Q\) is the second inclusion, then
\[ j_2-j_1=sq. \tag{2.2} \]The map \(s\) is split monic. Thus the equalizer of \(j_1,j_2\) is the kernel of \(q\), namely \(i\). The doubled object remembers the quotient through the difference of its two inclusions.
Now let \(q:X \twoheadrightarrow Y\) be epic, with kernel \(i:K\hookrightarrow X\). Its kernel pair has the description
\[ \begin{gathered} R=X\times_YX\cong X\oplus K,\\ p_1=(1_X,0),\qquad p_2=(1_X,i). \end{gathered} \tag{2.3} \]If \(r:X\oplus K\to K\) is the second projection, then
\[ p_2-p_1=ir. \tag{2.4} \]The projection \(r\) is split epic. Hence the coequalizer of \(p_1,p_2\) is the cokernel of \(i\), namely \(q\). The difference of the two projections remembers the subobject that was quotiented out.
Additivity of \(F\) identifies \(F(Y\oplus Q)\) with \(FY\oplus FQ\), and similarly for \(X\oplus K\). It also preserves split monomorphisms and split epimorphisms: the equations for their one-sided inverses survive application of any functor. In particular, \(Fs\) is monic and \(Fr\) is epic. These observations concern the displayed biproducts and maps. They do not presume that \(F\) preserves the pushout or pullback universal property used to construct them.
3. Testing one side of exactness
An exact fork \(K\to Y\rightrightarrows P\) means that its first arrow is the equalizer of the parallel pair. An exact cofork \(R\rightrightarrows X\to Y\) means that its last arrow is their coequalizer. Thus the fork includes monicity of its first arrow, and the cofork includes epicity of its last arrow.
Theorem 3.1. Let \(F:\mathcal A\to\mathcal B\) be additive between abelian categories. The following conditions are equivalent:
- \(F\) is left exact.
- For every monomorphism \(i:K\hookrightarrow Y\), its self-pushout gives an exact fork
Proof. If \(F\) is left exact, it preserves the equalizer identified in Section 2, giving the fork in (3.1).
Conversely, suppose every such fork is exact. By (2.2) and additivity, \(Fj_2-Fj_1=(Fs)(Fq)\). Because \(Fs\) is monic, the kernels of this composite and of \(Fq\) agree. The test therefore says that \(Fi\) is monic and is the kernel of \(Fq\). In particular, \(F\) preserves every monomorphism, since every monomorphism is included in a tested fork.
Take any morphism \(f:Y\to Z\), and choose its image factorization
\[ Y\xrightarrow{e}I\xrightarrow{m}Z, \qquad f=me, \tag{3.2} \]with \(e\) epic and \(m\) monic. Let \(k:\ker f\hookrightarrow Y\). In an abelian category \(e\) is the cokernel of \(k\). The fork test for \(k\) says that \(Fk\) is the kernel of \(Fe\). The already proved preservation of monomorphisms makes \(Fm\) monic. Therefore \(\ker(Fm\,Fe)=\ker(Fe)\), and \(Fk\) is the kernel of \(Ff\).
So \(F\) preserves all kernels. Equalizers in an abelian category are kernels of differences, and additivity preserves differences. Finite products and a terminal zero object are already preserved by additivity. Every finite limit is an equalizer between finite products; hence \(F\) preserves every finite limit. \(\square\)
Theorem 3.2. Under the same hypotheses, \(F\) is right exact if and only if the kernel pair of every epimorphism \(q:X \twoheadrightarrow Y\) gives an exact cofork
\[ FR\mathrel{\substack{\xrightarrow{Fp_1}\\[-3pt]\xrightarrow{Fp_2}}} FX\xrightarrow{Fq}FY. \tag{3.3} \]Proof. A right exact functor preserves the coequalizer described in Section 2, giving (3.3).
Suppose instead that every tested cofork is exact. Equation (2.4) gives \(Fp_2-Fp_1=(Fi)(Fr)\). Since \(Fr\) is epic, a map out of \(FX\) kills this composite exactly when it kills \(Fi\). The cokernel universal properties are therefore the same. The test says that \(Fq\) is epic and is the cokernel of \(Fi\). In particular \(F\) preserves every epimorphism.
Take an arbitrary \(f:A\to B\) and factor it as \(f=me\), with \(e:A \twoheadrightarrow I\) epic and \(m:I\hookrightarrow B\) monic. Let \(q_f:B\twoheadrightarrow Q_f\) be its cokernel. Then \(m\) is the kernel of \(q_f\). Testing this epimorphism says that \(Fq_f\) is the cokernel of \(Fm\). Since \(Fe\) is epic, a map out of \(FB\) kills \(Fm\,Fe\) exactly when it kills \(Fm\). Thus \(Fq_f\) is the cokernel of \(Ff\).
The functor preserves all cokernels. Coequalizers are cokernels of differences, and finite coproducts together with an initial zero object are already preserved. Expressing a finite colimit as a coequalizer between finite coproducts proves right exactness. \(\square\)
For example, a tensor functor can keep the middle of a tested fork exact even when its first map loses monicity. Exercise 1 computes this phenomenon for every pair of positive integers. The corresponding missing epicity in a cofork is exhibited in Exercise 2.
4. How composition changes kernels and quotients
The kernels and cokernels of two consecutive maps are related even when their composite is nonzero. Write \(f:X\to Y\), \(g:Y\to Z\), and, for each map \(h\), write \(k_h:K_h\hookrightarrow\operatorname{dom}h\) and \(q_h:\operatorname{cod}h\twoheadrightarrow Q_h\) for its kernel and cokernel.
There are canonical arrows \(a:K_f\to K_{gf}\) and \(b:K_{gf}\to K_g\), characterized by
\[ k_{gf}a=k_f,\qquad k_gb=fk_{gf}. \tag{4.1} \]There are also canonical arrows
\[ \begin{gathered} c=q_fk_g:K_g\to Q_f,\\ d:Q_f\to Q_{gf},\qquad dq_f=q_{gf}g,\\ e:Q_{gf}\to Q_g,\qquad eq_{gf}=q_g. \end{gathered} \tag{4.2} \]The defining equations for \(d\) and \(e\) have unique solutions because the displayed maps kill \(f\) and \(gf\), respectively. With these choices, the following two lines form one exact sequence, joined at their occurrence of \(K_g\):
\[ 0\longrightarrow K_f\xrightarrow{a}K_{gf} \xrightarrow{b}K_g, \tag{4.3} \] \[ K_g\xrightarrow{c}Q_f\xrightarrow{d}Q_{gf} \xrightarrow{e}Q_g\longrightarrow0. \tag{4.4} \]Here is the precise reduction to Stacks snake lemma, Lemma 12.5.17. Use the two rows
\[ \begin{gathered} X\xrightarrow{f}Y\xrightarrow{q_f}Q_f\longrightarrow0,\\ 0\longrightarrow Z\xrightarrow{1_Z}Z\longrightarrow0. \end{gathered} \tag{4.5} \]The vertical arrows, in order, are \(gf:X\to Z\), \(g:Y\to Z\), and \(0:Q_f\to0\). The rows are exact, both squares commute, and the snake lemma gives the following exact sequence, displayed in two lines joined at \(Q_f\):
\[ \begin{gathered} K_{gf}\xrightarrow{b}K_g\xrightarrow{c}Q_f,\\ Q_f\xrightarrow{d}Q_{gf}\xrightarrow{e}Q_g\longrightarrow0. \end{gathered} \tag{4.6} \]To identify the sign of its connecting arrow, its defining pullback is \(Y\times_{Q_f}Q_f\cong Y\), using the identity on \(Q_f\). Its defining pushout is \(Q_{gf}\amalg_ZZ\cong Q_{gf}\), using the identity on \(Z\) and the map \(q_{gf}:Z\to Q_{gf}\). The snake defining square therefore says exactly \(dq_f=q_{gf}g\), with the positive sign used in (4.2). No monicity of \(f\), epicity of \(g\), or vanishing of \(gf\) was introduced.
It remains to prepend \(0\to K_f\). The arrow \(a\) is monic because \(k_{gf}a=k_f\) is monic. For an arbitrary \(t:W\to K_{gf}\) with \(bt=0\), equation (4.1) gives \(fk_{gf}t=0\). There is a unique \(r:W\to K_f\) with \(k_fr=k_{gf}t\). Monicity of \(k_{gf}\) gives \(ar=t\). Uniqueness follows from monicity of \(a\). Thus \(a\) is the kernel of \(b\), completing (4.3)–(4.4).
The entire sequence is natural in a commuting pair of squares between two composable pairs. More explicitly, if \(\alpha:X\to X'\), \(\beta:Y\to Y'\), \(\gamma:Z\to Z'\) satisfy \(\beta f=f'\alpha\) and \(\gamma g=g'\beta\), universality induces maps between all six kernel and cokernel objects. For \(a,b\), composing with the target kernel inclusions reduces the required equalities to these two square equations. For \(c\), its formula \(q_fk_g\) does the same. For \(d,e\), precomposing with the source cokernel epimorphisms reduces them to the square equations and the defining formulas in (4.2). Monicity and epicity then give the required equalities. Thus no choice of element representatives is needed for the connecting map.
5. Kernels in a diagram with open right ends
Consider three exact rows, indexed by \(i=0,1,2\)
\[ 0\longrightarrow L_i\xrightarrow{a_i}M_i \xrightarrow{b_i}R_i, \tag{5.1} \]so that each \(a_i\) is the kernel of \(b_i\). Between consecutive rows let the vertical arrows be \(\ell_i:L_i\to L_{i+1}\), \(m_i:M_i\to M_{i+1}\), and \(r_i:R_i\to R_{i+1}\), for \(i=0,1\). Assume every square commutes:
\[ \begin{gathered} a_{i+1}\ell_i=m_i a_i,\\ b_{i+1}m_i=r_i b_i. \end{gathered} \tag{5.2} \]Theorem 5.1. Suppose \(0\to M_0\xrightarrow{m_0}M_1\xrightarrow{m_1}M_2\) is exact and \(r_0\) is monic. Then
\[ 0\longrightarrow L_0\xrightarrow{\ell_0}L_1 \xrightarrow{\ell_1}L_2 \tag{5.3} \]is exact. In particular the conclusion holds if the right column \(0\to R_0\to R_1\to R_2\) is exact.
Proof. First, \(a_2\ell_1\ell_0=m_1m_0a_0=0\). Since \(a_2\) is monic, the left column is a complex. The equality \(a_1\ell_0=m_0a_0\), with both \(m_0\) and \(a_0\) monic, makes \(\ell_0\) monic.
Take an arbitrary \(t:W\to L_1\) with \(\ell_1t=0\). Then \(m_1a_1t=a_2\ell_1t=0\). The middle column is a kernel sequence, so there is a unique \(s:W\to M_0\) such that \(m_0s=a_1t\). Next,
\[ r_0b_0s=b_1m_0s=b_1a_1t=0. \tag{5.4} \]Monicity of \(r_0\) gives \(b_0s=0\). Row 0 is a kernel sequence, so there is a unique \(u:W\to L_0\) with \(a_0u=s\). Finally,
\[ a_1\ell_0u=m_0a_0u=m_0s=a_1t. \tag{5.5} \]Monicity of \(a_1\) gives \(\ell_0u=t\); monicity of \(\ell_0\) gives uniqueness. Section 1 therefore proves (5.3). \(\square\)
There is no terminal zero in (5.1), and none is needed: the maps \(b_i\) may fail to be epic. The proof uses only initial monicity in the right column, so it proves more than the version with both middle and right columns exact. It makes no claim of exactness at \(L_2\). Exercise 4 supplies a concrete diagram and shows how the conclusion can fail if \(r_0\) loses monicity.
6. Four exercises and complete solutions
Exercise 1 (introductory: calculation and diagnosis). Let \(m,n\) be positive integers and put \(d=\gcd(m,n)\). Form the self-pushout of \(i:\mathbb Z\hookrightarrow\mathbb Z\), \(i(t)=nt\). Apply the tensor functor \(F(A)=A\otimes\mathbb Z/m\), with tensor product over \(\mathbb Z\). Compute the difference of the two arrows out of \(F\mathbb Z\), its kernel, and the image and kernel of \(Fi\). For which \(m,n\) is this particular fork exact? Does equality of the middle image and kernel suffice?
Solution. The cokernel of \(i\) is \(\mathbb Z/n\). By (2.1), the doubled object is \(\mathbb Z\oplus\mathbb Z/n\). We have natural identifications
\[ \begin{gathered} F\mathbb Z=\mathbb Z/m,\\ F(\mathbb Z/n)\cong\mathbb Z/d,\\ FP\cong\mathbb Z/m\oplus\mathbb Z/d. \end{gathered} \tag{6.1} \]For the second identification, tensor the generators and relation presentation of \(\mathbb Z/n\): its tensor product is \((\mathbb Z/m)/n(\mathbb Z/m)\). The subgroup generated by \(n\) in \(\mathbb Z/m\) is the subgroup generated by \(d\), since Bezout gives \(d=an+bm\). Its quotient is \(\mathbb Z/d\). Equivalently, the mutually inverse tensor maps send \(\bar a\otimes\bar b\) to \(\overline{ab}\) modulo \(d\), and the generator \(\bar1\) modulo \(d\) to \(\bar1\otimes\bar1\). The relation \(d=an+bm\) makes the latter well-defined.
Under (6.1), the two arrows are \(x\mapsto(x,0)\) and \(x\mapsto(x,\bar x)\). Their difference is \(x\mapsto(0,\bar x)\), with \(\bar x\) taken modulo \(d\). Hence its kernel is \(d(\mathbb Z/m)\). The map \(Fi\) is multiplication by \(n\), whose image is exactly this same subgroup.
Writing \(m=dm'\), \(n=dn'\), with \(m',n'\) coprime, its kernel consists of the multiples of \(m'\) modulo \(m\): divisibility \(m\mid nx\) is equivalent to \(m'\mid x\). This kernel has \(d\) elements. Thus \(Fi\) is monic exactly when \(d=1\). The tested fork is exact precisely in that case. For \(d>1\), it has middle image equal to middle kernel, but its first arrow is not monic, so it is not an equalizer fork. For \(m=1\) all objects here are zero; for \(n=1\) the map \(i\) is the identity. Both give \(d=1\) and pass the test, as required.
Exercise 2 (intermediate: a missing quotient). Let \(m,n\) be positive and let \(T_m(A)=A[m]=\{a\in A:ma=0\}\), viewed as the additive functor \(\operatorname{Hom}(\mathbb Z/m,-)\) on abelian groups. Apply it to the kernel pair of \(q:\mathbb Z\twoheadrightarrow\mathbb Z/n\). When is the resulting cofork exact? Use the answer to decide whether \(T_m\) can be right exact when \(m>1\).
Solution. The kernel of \(q\) is \(n\mathbb Z\), embedded by inclusion. Its kernel pair is \(\mathbb Z\oplus n\mathbb Z\), with projections \((x,k)\mapsto x\) and \((x,k)\mapsto x+k\). Both this direct sum and \(\mathbb Z\) are torsion-free, so their \(m\)-torsion groups vanish.
Put \(d=\gcd(m,n)\), and write \(n=dn'\), \(m=dm'\). A residue \(x\) modulo \(n\) is killed by \(m\) exactly when \(n'\mid x\), since \(m',n'\) are coprime. Therefore \((\mathbb Z/n)[m]\) is generated by \(n'\) modulo \(n\), and is cyclic of order \(d\). The image cofork is consequently
\[ 0\rightrightarrows0\longrightarrow\mathbb Z/d. \tag{6.2} \]The cokernel of the difference \(0\to0\) is zero, so this is an exact cofork exactly when \(d=1\). For \(d>1\) its last arrow is not epic. Taking \(n=m>1\) gives a failed epimorphism test, and Theorem 3.2 shows that \(T_m\) is not right exact. When \(m=1\), \(T_m\) is the zero functor, which is exact. When \(m>1\) but \(m,n\) are coprime, this particular cofork passes; that alone says nothing about all the other tests required for right exactness.
Exercise 3 (advanced: a composition obstruction). Take
\[ \begin{gathered} f:\mathbb Z\to\mathbb Z^2,\qquad f(t)=(2t,0),\\ g:\mathbb Z^2\to\mathbb Z,\\ g(a,b)=3a+2b. \end{gathered} \tag{6.3} \]Compute all six objects and all arrows of (4.3)–(4.4). Verify its nontrivial exactness directly, including the map from \(Q_f\) to \(Q_{gf}\).
Solution. Both \(f\) and \(gf:t\mapsto6t\) are injective, so \(K_f=K_{gf}=0\). The equation \(3a+2b=0\) forces \(a=2t\), \(b=-3t\), uniquely, so \(K_g\cong\mathbb Z\), embedded by \(t\mapsto(2t,-3t)\). The cokernels are
\[ \begin{gathered} Q_f\cong\mathbb Z/2\oplus\mathbb Z,\\ Q_{gf}\cong\mathbb Z/6,\qquad Q_g=0. \end{gathered} \tag{6.4} \]For \(Q_g=0\), note that \(g(1,-1)=1\), so \(g\) is onto. The first two kernel arrows have zero domain. The map \(c=q_fk_g\) is \(t\mapsto(0,-3t)\). The defining formula for \(d\) gives
\[ d(\bar a,b)=\overline{3a+2b}\quad\text{in }\mathbb Z/6. \tag{6.5} \]Changing the integer representative \(a\) by \(2s\) changes \(3a+2b\) by \(6s\), so the formula is well-defined. The arrow \(e\) is the unique map to zero. Thus the nontrivial portion is
\[ 0\to\mathbb Z \xrightarrow{c} \mathbb Z/2\oplus\mathbb Z \xrightarrow{d}\mathbb Z/6\to0. \tag{6.6} \]The first map is injective. If \(d(\bar a,b)=0\), reduction modulo 2 gives \(\bar a=0\). Choosing \(a=0\), the remaining condition is \(6\mid2b\), hence \(3\mid b\). These are exactly the pairs \((0,-3t)\). Finally \(d(\bar1,-1)=\bar1\), so \(d\) is onto. This checks every nonzero exactness condition. The composite \(gf\) is nonzero, demonstrating that this sequence of defects does not require the original pair to be a complex.
Exercise 4 (advanced: kernel columns and a necessary hypothesis). Over a field \(k\), use \(M_0=R_0=k^2\), \(M_1=R_1=k^3\), and \(M_2=R_2=k\). In each vertical column use the inclusion \((x,y)\mapsto(x,y,0)\), followed by \((x,y,z)\mapsto z\). Define the row maps by
\[ \begin{gathered} b_0(a,b)=(a,0),\\ b_1(a,b,c)=(a,0,c),\\ b_2=1_k. \end{gathered} \tag{6.7} \]Find their kernels and the induced left column, and check the conclusion of Theorem 5.1 despite failure of row surjectivity. Then find a diagram with exact middle column and kernel-exact rows for which dropping monicity of \(r_0\) makes the conclusion false.
Solution. The two nontrivial squares commute: both composites from \(M_0\) to \(R_1\) send \((a,b)\) to \((a,0,0)\); both from \(M_1\) to \(R_2\) send \((a,b,c)\) to \(c\). Each middle and right column is exact at its first two positions: the first arrow is injective and its image is exactly the kernel of the last-coordinate projection.
Identify \(L_0\cong k\) by \(b\mapsto(0,b)\), and \(L_1\cong k\) by \(b\mapsto(0,b,0)\). We have \(L_2=0\). The induced arrows are the identity \(k\to k\) and the zero map \(k\to0\), so the kernel column is \(0\to k\xrightarrow{1}k\to0\), which is exact. Yet \(b_0\) misses \((0,1)\), and \(b_1\) misses \((0,1,0)\). Thus the rows are the kernel sequences specified in (5.1), with no terminal zero that could assert surjectivity.
For failure without monicity, take the middle column \(M_0=k\xrightarrow{1}M_1=k\to M_2=0\). Take the right column \(R_0=k\to R_1=0\to R_2=0\), so \(r_0=0\) is not monic. Use \(b_0=1_k\), \(b_1:k\to0\) zero, and the unique \(b_2:0\to0\). The squares commute, and the row kernels are \(L_0=0\), \(L_1=k\), \(L_2=0\). The induced left column \(0\to0\to k\to0\) is not exact at \(k\): the preceding image is zero while the following kernel is all of \(k\). This is exactly the point where (5.4) would require cancellation of \(r_0\).
Appendix: Elementary and universal checks
The following proofs spell out the universal constructions and elementary calculations used above. The starting assumptions are the stated additive and abelian category axioms, ordinary abelian-group operations, and integer arithmetic with well-ordering.
A.1. Normality and the specified image factorization
In an additive category, a kernel is monic by the uniqueness of factors; a cokernel is epic by the dual uniqueness. A monomorphism has zero kernel: every map killed by it is zero, so the unique map from zero supplies the kernel property. Conversely, if its kernel is zero, then a difference of two arrows killed by the map factors through zero and vanishes. The dual argument proves the corresponding epimorphism statement.
For a map \(f:X\to Y\) in an abelian category, use the specified factorization \(f=i_f u_f q_f\), where \(q_f:X\to\operatorname{coker}(\ker f)\), \(i_f:\ker(\operatorname{coker}f)\to Y\), and the compatible \(u_f\) is invertible by the abelian axiom. Put \(e=u_fq_f\) and \(m=i_f\). Then \(e\) is epic, \(m\) is monic, \(e\) is a cokernel of \(\ker f\), and \(m\) is a kernel of \(\operatorname{coker}f\). Composing with an isomorphism transports the relevant universal property; this follows by taking its inverse in each factorization formula. Since \(m\) is monic, a map is killed by \(me\) precisely when it is killed by \(e\). Dually, since \(e\) is epic, a map kills \(me\) precisely when it kills \(m\).
If \(i:K\to Y\) is monic, its coimage quotient is the cokernel of \(0\to K\), namely \(1_K\). The specified comparison therefore identifies \(i\) with the kernel of its own cokernel. If \(q:X\to Y\) is epic, its image inclusion is the kernel of \(Y\to0\), namely \(1_Y\). The specified comparison identifies \(q\) with the cokernel of its own kernel. These arguments prove the normality statements used in Sections 2 and 3 without assuming preservation by the functor.
A.2. Finite preservation, including the empty diagram
For a finite category \(I\) and a diagram \(D\), set \(V=\bigoplus_iD_i\), \(W=\bigoplus_{a:i\to j}D_j\). Define \(\delta:V\to W\) by \(p_a\delta=D(a)p_i-p_j\). The kernel arrow \(L\to V\), followed by each \(p_i\), is a cone. Given any test object, a map into \(V\) is a tuple of maps, and its composite with \(\delta\) vanishes exactly when every cone equation holds. Thus the kernel factors are exactly the unique cone factors, giving the entire limit universal property.
An additive functor preserving kernels sends each component equation to the identical component equation in the image diagram, because it preserves zero, differences and the specified finite biproduct structure. Hence its image of this kernel cone is the limit of the image diagram. When \(I\) is empty, \(V=W=0\), and the kernel of \(0\to0\) is the identity of zero; the additive functor preserves this zero object. Apply the same argument in the opposite categories to obtain finite colimit preservation from cokernel preservation, including the initial empty case. Bilinear composition, zero maps and biproduct identities remain valid on reversing arrows.
For the additive branch of Stacks 010N, the short exact rows \(0\to\ker f\to A\to I\to0\) and \(0\to I\to B\to\operatorname{coker}f\to0\) provide all universal maps in the image factorization. A functor preserving their left portions sends the first kernel to the kernel of the first image arrow and the second inclusion to a monomorphism; cancellation gives the kernel of the composite. A functor preserving their right portions sends the first image arrow to an epimorphism and the second quotient to its cokernel; cancellation gives the cokernel of the composite. The finite argument above supplies both conclusions about finite diagrams. The separate branches of 010N which deduce additivity are not needed here because F is assumed additive.
A.3. Integer division, Bezout and coprime cancellation
For an integer \(a\) and a positive integer \(b\), the set of nonnegative integers of the form \(a-qb\) is nonempty. Choose its least element \(r\) by well-ordering. If \(r\ge b\), then \(r-b\) is a smaller such element, a contradiction. Thus \(a=qb+r\), \(0\le r<b\). Two such decompositions have remainder difference strictly between \(-b\) and \(b\) which is divisible by \(b\); therefore the remainders, and then the quotients, coincide.
For positive \(m,n\), let \(d\) be the least positive integer of the form \(an+bm\). It exists because \(m\) is such an integer. Divide \(m\) and \(n\) by \(d\). Each remainder is an integer combination of \(m,n\), so a positive remainder would contradict minimality. Hence \(d\) divides both. Conversely every common divisor divides \(an+bm=d\). This proves that \(d\) is their gcd and proves the Bezout identity used in the lesson. The subgroup of \(\mathbb Z\) generated by \(m,n\) is therefore \(d\mathbb Z\).
If \(m=dm'\), \(n=dn'\), then any common divisor of \(m',n'\) would multiply \(d\) to a larger common divisor of \(m,n\). Thus \(m',n'\) are coprime. Alternatively divide the Bezout equation by \(d\) to obtain \(an'+bm'=1\). If \(m'\mid n'x\), multiplying this equation by \(x\) proves \(m'\mid x\); the reverse implication is immediate. The identical argument with the roles exchanged proves \(n'\mid m'x\Longleftrightarrow n'\mid x\).
Modulo \(m=dm'\), the multiples of \(m'\) have exactly \(d\) residues: \(tm'\), \(0\le t<d\). Two such residues agree exactly when \(d\mid t-t'\). Modulo \(n=dn'\), the same argument proves that the subgroup generated by \(n'\) has order \(d\). These prove the two kernel/torsion cardinal statements in Exercises 1 and 2, including \(d=1\).
A.4. The ordinary tensor and cyclic identifications
For a small set \(S\), the free abelian group is the group of integer functions on \(S\) with finite support, with pointwise operations. Given a function \(S\to B\) into an abelian group, the unique extension sends \(\sum n_s[s]\) to \(\sum n_s b_s\). Finite support makes this defined; additivity proves the homomorphism law, and values on basis elements force uniqueness.
For abelian groups \(A,B\), quotient the free abelian group on \(A\times B\) by the subgroup generated by \([a+a',b]-[a,b]-[a',b]\) and \([a,b+b']-[a,b]-[a,b']\). A map from this quotient to any abelian group is exactly a biadditive function: the relations give necessity, and the free extension and quotient factorization give existence and uniqueness. This is the tensor universal property. It agrees with the balanced construction in Ring actions and tensor–Hom, Section 6, specialized to \(k=S=\mathbb Z\); integer balancing follows from biadditivity, including negatives.
A map \(u:A\to A'\) induces \([a,b]\mapsto[u(a),b]\); the relations are preserved. Identities and composition are checked on these generators. For maps \(u,v\), \([(u+v)(a),b]=[u(a),b]+[v(a),b]\); therefore this tensor functor is additive. The zero group and the finite biproduct structure consequently have exactly the image structure established in the retained additive proof. This argument uses no general tensor exactness assertion.
The mutually inverse maps \(\mathbb Z\otimes B\to B\), \(t\otimes b\mapsto tb\), and \(B\to\mathbb Z\otimes B\), \(b\mapsto1\otimes b\), are well-defined and inverse on generators. For \(A=\mathbb Z/n\), \(B=\mathbb Z/m\), a biadditive function is determined by the image of \((\bar1,\bar1)\), which must be killed by \(n\) and \(m\). The quotient description is therefore \((\mathbb Z/m)/n(\mathbb Z/m)\), with its actual universal map, without presupposing right exactness of the tensor functor.
Let \(d=\gcd(m,n)\). The biadditive function \((\bar a,\bar b)\mapsto\overline{ab}\) modulo \(d\) is well-defined because \(d\) divides both moduli. It defines \(\phi:(\mathbb Z/n)\otimes(\mathbb Z/m)\to\mathbb Z/d\). Set \(z=\bar1\otimes\bar1\). The two cyclic relations give \(nz=mz=0\); the Bezout identity gives \(dz=0\). Thus \(\psi:\mathbb Z/d\to(\mathbb Z/n)\otimes(\mathbb Z/m)\), \(\bar t\mapsto tz\), is well-defined. We have \(\phi\psi=1\) on the cyclic generator. Every tensor generator satisfies \(\bar a\otimes\bar b=abz\), so \(\psi\phi=1\) on every generator and hence on the tensor group.
Under these maps, the image of the quotient \(\mathbb Z\to\mathbb Z/n\) under tensoring with \(\mathbb Z/m\) is exactly reduction modulo \(d\). Its kernel is \(d(\mathbb Z/m)\). Multiplication by \(n\) has the same image because \(n\) and \(d\) generate the same subgroup modulo \(m\). Its kernel consists of multiples of \(m'\), by Appendix A.3, and has \(d\) elements. Thus equality of the two middle subgroups does not provide the missing initial injectivity when \(d>1\).
A.5. Torsion as an actual Hom functor
Evaluation at \(\bar1\) sends \(\operatorname{Hom}(\mathbb Z/m,A)\) to \(A[m]\). Its inverse sends \(a\), with \(ma=0\), to \(\bar t\mapsto ta\). Changing \(t\) by a multiple of \(m\) changes the value by zero. The inverse is additive, and every homomorphism from the cyclic group is determined by its generator. Both assignments commute with postcomposition in \(A\), so they are natural and identify the specified Hom functor, including its maps. Pointwise addition proves its additivity.
For positive \(m\), both \(\mathbb Z\) and \(n\mathbb Z\) have no nonzero element killed by \(m\); their finite direct sum does not either. For a residue \(x\) modulo \(n\), \(mx=0\) precisely when \(n'\mid x\), by Appendix A.3. Thus its torsion group is the cyclic subgroup generated by \(n'\), of order \(d\). The image cofork is exactly \(0\rightrightarrows0\to\mathbb Z/d\). The unique map out of zero can be a cokernel of the zero pair only when its target is zero: test its universal property against the identity and zero endomorphisms of that target. Hence it is an exact cofork exactly when \(d=1\). Setting \(n=m>1\) gives the required failing test, while \(m=1\) gives the zero functor.
A.6. Bookkeeping for the weak-row snake specialization
Use the complete Stacks 010H proof with top row \(X\xrightarrow fY\xrightarrow{q_f}Q_f\to0\), bottom row \(0\to Z\xrightarrow{1_Z}Z\to0\), and vertical maps \(gf,g,0\). The top first arrow can have a nonzero kernel. In the bottom row the last arrow \(Z\to0\) is epic, so the source's last-endpoint conclusion gives the final \(Q_g\to0\). There is no assumption that \(f\) is monic, \(g\) is epic, or \(gf=0\).
The source connecting construction has \(p=Y\times_{Q_f}Q_f\cong Y\), with \(\pi=q_f\) and \(\pi'=1_Y\), and \(q=Q_{gf}\amalg_Z Z\cong Q_{gf}\), with \(\iota=1_{Q_{gf}}\) and \(\iota'=q_{gf}\). Its auxiliary lift \(a:p\to Z\) is \(g\), because the bottom kernel inclusion is \(1_Z\). The actual defining equation \(\delta\pi=\pi''a\) is therefore \(dq_f=q_{gf}g\), with positive sign. This is the map labelled \(d\), rather than the earlier map labelled \(c=q_fk_g\). The source symbols and the labels in Section 4 refer to different maps.
The complete source proof uses two successive epimorphism covers for a test map killed by the connecting map, then the difference \(\pi'n\varepsilon-f\zeta\). Its factor through \(\ker\beta\) is the required lift after the composite cover. Stacks 08N5 supplies the exactness criterion for these covers, 08N6 supplies the first kernel segment, and opposite-category duality supplies the cokernel segment. The complete epimorphism-cover criterion and kernel-sequence proof give these exactness positions; Appendix A.1 supplies the specified image identifications. In 08N5, the notation identifying coimage with image uses the specified abelian comparison isomorphism; Appendix A.1 makes that identification explicit.
Section 4 supplies the additional first endpoint: \(a:K_f\to K_{gf}\) is monic, and for every \(t\) with \(bt=0\), the unique factor of \(k_{gf}t\) through \(k_f\) gives the unique factor through \(a\). Thus this endpoint does not require the stronger, inapplicable hypothesis that the top-row \(f\) in the snake diagram is monic.
A.7. Why an abelian category need not have a single kernel-testing probe
To show that an abelian category need not have one kernel-testing probe, take the category whose objects are sequences of small abelian groups indexed by \(\mathbb N\), with only finitely many nonzero entries, and whose arrows are componentwise homomorphisms. Each Hom set is a finite product of Hom sets between small groups, because outside the finite union of supports there is only the unique zero map. The category is locally small. Zero, finite biproducts, kernels and cokernels are componentwise and have finite support. The compatible coimage–image comparison is componentwise the bijection \(A/\ker f\to f(A)\) proved in Coimages, images and composition of quotients, Section 5. Hence this is an abelian category, without asserting existence of infinite coproducts.
For every object \(W\), choose an index \(j\) outside its finite support and let \(C\) be \(\mathbb Z\) at \(j\) and zero elsewhere. Then \(C\ne0\), but \(\operatorname{Hom}(W,C)=0\). The candidate kernel arrow \(0\to C\) for \(C\to0\) passes the test from \(W\): its Hom sequence consists of zero groups and is exact. It is not a kernel, because \(1_C\) is killed by \(C\to0\) and cannot factor through \(0\to C\). Thus no object in this category detects every kernel test. This proves the negative-context assertion as well as exhibiting why one probe can be insufficient; the all-probe universal proof in Section 1 does not require this example.
References
- The Stacks Project, Lemma 12.5.8, for the two Hom tests.
- The Stacks Project, Lemma 12.5.17, for the weak-row snake lemma used in Section 4.
- The Stacks Project, Section 12.7, especially Lemma 12.7.2, for the retained additive exactness criteria.
- Trace coreflections and balanced nonabelian categories, Section 3, for the ordinary doubled-object constructions.
- Full subcategories and exact closure, Lemma 2.1, for preservation of kernels and cokernels by an exact additive functor.
- The Stacks Project, Lemma 12.7.2, gives both directions of the short-exact criteria used in Section 1. Lemma 12.5.17 gives the weak-row snake construction used in Section 4, with the maps and connecting-arrow sign identified there. The doubled-object arguments and four exercise solutions are supplied in this lesson and its precise prerequisites.