The splitting lemma in abelian categories is a basic tool for decomposing objects into biproducts. It is at the heart of some powerful structure theorems, such as the ones for finitely generated abelian groups and more generally finitely generated modules over a PID.

1. Statement and proof

There are lots of splitting' statements in mathematics, and they have roughly the following form: under certain conditions, a subobject $S$ of an object $A$ induces a decomposition of $A$ into a piece isomorphic to $S$ and another piece isomorphic to a co-subobject' of $A$. The power of these statements is that, applied repeatedly, under certain assumptions they lead to decompositions of an object into atomic' subobjects.

Proposition 1 (The splitting lemma) .

Suppose we have a short exact sequence \begin{align*}

\begin{xy} \xymatrix{ 0\ar[r] & A\ar[r]^f & B\ar[r]^g & C\ar[r] &0 \\ } \end{xy}
\end{align*} in an abelian category. Then there is an isomorphism between the set of morphisms $t:B\to A$ such that $tf=\mathop{\rm id}\nolimits_A$, and between the set of isomorphisms to the biproduct $A\oplus C \cong B$ making the diagram \begin{align*}
\begin{xy} \xymatrix{ & A\ar[r]^f\ar[dr]_{i_A} & B\ar[r]^g & C & \\ & & A\oplus C\ar[u]^\cong \ar[ur]_{\pi_C}& & } \end{xy}
\end{align*} commute, with $i_A$ the canonical injection of $A$ and $\pi_C$ the canonical projection onto $C$.

Analogously, there is a bijection between the set of morphisms $q:C\to B$ such that $gq=\mathop{\rm id}\nolimits_C$ and the above isomorphisms.

Proof 1.

We first need to say a couple of words about why the things we claim are groups indeed are. If $t_1,t_2$ are such that $t_if=\mathop{\rm id}\nolimits_A$ For the easy direction, suppose we have an isomorphism $e:A\oplus C\cong B$ that makes \begin{align*}

\begin{xy} \xymatrix{ & A\ar[r]^f\ar[dr]_{i_A} & B\ar[r]^g & C & \\ & & A\oplus C\ar[u]^\cong \ar[ur]_{\pi_C}& & } \end{xy}
\end{align*} commute. Then we get a morphism $\pi_Ae^{-1}:B\to A$ and observe that \begin{align*} \pi_Ae^{-1}f = \pi_Ae^{-1}ei_A = \pi_Ai_A = \mathop{\rm id}\nolimits_A \end{align*}

For the hard direction, the proof follows intuition from the case of e.g. abelian groups, replacing the things we don't have in the general case of abelian categories (e.g. concreteness) with their equivalents.

Suppose we have a morphism $t:B\to A$ such that $tf=\mathop{\rm id}\nolimits_A$. Using the post on decomposing morphisms in abelian categories, it follows that we have a diagram \begin{align*}

\begin{xy} \xymatrix{ & & & &\ker(\mathop{\rm coker}\nolimits g)\ar[dr]_{\cong}^{m_C} & & \\ 0\ar[r] & A\ar@<2pt>[rr]^f\ar[dr]_{e_A}^{\cong} & & B\ar@<2pt>[dl]^{p_A}\ar[rr]^g\ar@<2pt>[ll]^t\ar[ur]^{e_C} & & C\ar[r] &0 \\ & &\ker(\mathop{\rm coker}\nolimits f)\ar@<2pt>[ur]^{m_A} & & & & } \end{xy}
\end{align*} where $e_A$ is an isomorphism because $f$ is a monomorphism, and $m_C$ is an isomorphism because $g$ is an epimorphism. So it makes sense to try to show that $B\cong \ker(\mathop{\rm coker}\nolimits f)\oplus \ker(\mathop{\rm coker}\nolimits g)$, and we'll work towards that.

We have $tm_Ae_A=tf=\mathop{\rm id}\nolimits_A$, hence $tm_A$ is the unique inverse of $e_A$, and $e_Atm_A=\mathop{\rm id}\nolimits_{\ker(\mathop{\rm coker}\nolimits f)}$; denote $e_At=p_A$. So we have $p_Am_A=\mathop{\rm id}\nolimits_{\ker(\mathop{\rm coker}\nolimits f)}$, and $0 = gf = m_Ce_Cm_Ae_A$, hence $e_Cm_A=0$ because $m_C,e_A$ are invertible. What we need now is a map out of $\ker(\mathop{\rm coker}\nolimits g)$ that gives us the inclusion of $\ker(\mathop{\rm coker}\nolimits g)$ in the hypothetical biproduct $B$.

The idea is to get a map $\ker(\mathop{\rm coker}\nolimits g)\to B$ by getting a map out of the isomorphic $\mathop{\rm coker}\nolimits(\ker g)$ to $B$. A map $\mathop{\rm coker}\nolimits(\ker g)\to B$ will come from a map $B\to B$ which kills the injection' of $\ker g\cong \mathop{\rm im}\nolimits f\cong\ker(\mathop{\rm coker}\nolimits f)$, the first isomorphism because we have an exact sequence. Thus, since $\ker(\mathop{\rm coker}\nolimits f)$ has the universal property of $\ker g$, we need a map $B\to B$ that kills $m_A$. So it makes sense to consider the map $\mathop{\rm id}\nolimits_B - m_Ap_A:B\to B$, as \begin{align*} (\mathop{\rm id}\nolimits_B-m_Ap_A)m_A = m_A-m_Ap_Am_A=m_A-m_A=0 \end{align*} Hence, since $\ker(\mathop{\rm coker}\nolimits g)\cong\mathop{\rm coker}\nolimits(\ker g)$ satisfy the same universal property, we get a map $i_C:\ker(\mathop{\rm coker}\nolimits g)\to B$ such that \begin{align*}

\begin{xy} \xymatrix{ & & &B &\ker(\mathop{\rm coker}\nolimits g)\ar[dr]_{\cong}^{m_C}\ar[l]_{i_C} & & \\ 0\ar[r] & A\ar@<2pt>[rr]^f\ar[dr]_{e_A}^{\cong} & & B\ar@<2pt>[u]^{\mathop{\rm id}\nolimits_B-m_Ap_A}\ar@<2pt>[dl]^{p_A}\ar[rr]^g\ar@<2pt>[ll]^t\ar[ur]^{e_C} & & C\ar[r] &0 \\ & &\ker(\mathop{\rm coker}\nolimits f)\ar@<2pt>[ur]^{m_A} & & & & } \end{xy}
\end{align*} commutes. Observe that we have \begin{align*} e_Ci_Ce_C = e_C(\mathop{\rm id}\nolimits_B-m_Ap_A)=e_C-e_Cm_Ap_A = e_C \implies i_Ce_C=\mathop{\rm id}\nolimits_{\ker(\mathop{\rm coker}\nolimits g)} \end{align*} as $e_C$ is an epimorphism, and \begin{align*} m_Ap_Ai_Ce_C = m_Ap_A(\mathop{\rm id}\nolimits_B-m_Ap_A) = m_Ap_A-m_Ap_Am_Ap_A=m_Ap_A-m_Ap_A=0 \end{align*} hence $p_Ai_C=0$ as $m_A$ is a monomorphism and $e_C$ an epimorphism.

To sum up, we have two objects $A'\cong A,C'\cong C$ canonically isomorphic to $A$ and $C$ respectively, and maps \begin{align*}

\begin{xy} \xymatrix{ A'\ar@<2pt>[r]^{m_A} & B\ar@<2pt>[r]^{e_C}\ar@<2pt>[l]^{p_A} & C'\ar@<2pt>[l]^{i_C} \\ } \end{xy}
\end{align*} such that $p_Am_A=\mathop{\rm id}\nolimits_{A'}, e_Ci_C=\mathop{\rm id}\nolimits_{C'}$ and moreover $\mathop{\rm id}\nolimits_B = m_Ap_A+ i_Ce_C$. Pulling back and pushing forward as necessary by the isomorphisms $e_A$ and $m_C$, it's easy to see we in fact get maps \begin{align*}
\begin{xy} \xymatrix{ A\ar@<2pt>[r]^{j_A'} & B\ar@<2pt>[r]^{\pi_C'}\ar@<2pt>[l]^{\pi_A'} & C\ar@<2pt>[l]^{j_C'} \\ } \end{xy}
\end{align*} such that $\pi_A'j_A'=\mathop{\rm id}\nolimits_A, \pi_C'j_C'=\mathop{\rm id}\nolimits_C, j_A'\pi_A'+j_C'\pi_C' = \mathop{\rm id}\nolimits_B$. As the next easy lemma shows (see after this proof), this means there is a unique isomorphism between $B$ and the biproduct $A\oplus C$ compatible with the maps $m_A,p_A,e_C,i_C$: \begin{align*}
\begin{xy} \xymatrix{ A\ar@<2pt>[ddr]^{j_{A}}\ar@<2pt>[r]^{j_A'} & B\ar@<2pt>[r]^{\pi_C'}\ar@<2pt>[l]^{\pi_A'} & C\ar@<2pt>[l]^{j_C'}\ar@<2pt>[ddl]^{j_{C}} \\ & & & \\ &A\oplus C\ar[uu]^{h}_\cong \ar@<2pt>[uur]^{\pi_{C}}\ar@<2pt>[uul]^{\pi_{A}} & } \end{xy}
\end{align*}

Finally, we need to show that going back and forth between the map $t$ and the isomorphism to $A\oplus C$ is indeed an isomorphism of sets. We won't do this in detail, but the basic idea is that all our constructions were universal, so nothing can go wrong. Specifically, we can reconstruct each intermediate step in the construction of $h$ from $t$ going backwards; so for example, $p_A$ uniquely determines $t$ because $p_A=e_At$ and $e_A$ is an isomorphism, and so on.

And now the promised lemma on biproducts:

Lemma 2.

Suppose we have maps \begin{align*}

\begin{xy} \xymatrix{ A\ar@<2pt>[r]^{j_A'} & B\ar@<2pt>[r]^{\pi_C'}\ar@<2pt>[l]^{\pi_A'} & C\ar@<2pt>[l]^{j_C'} \\ } \end{xy}
\end{align*} such that $\pi_A'j_A'=\mathop{\rm id}\nolimits_A, \pi_C'j_C'=\mathop{\rm id}\nolimits_C, j_A'\pi_A'+j_C'\pi_C' = \mathop{\rm id}\nolimits_B$. Then there is a unique isomorphism $h:A\oplus C\to B$ compatible with the injections and projections, i.e. making \begin{align*}
\begin{xy} \xymatrix{ A\ar@<2pt>[ddr]^{j_{A}}\ar@<2pt>[r]^{j_A'} & B\ar@<2pt>[r]^{\pi_C'}\ar@<2pt>[l]^{\pi_A'} & C\ar@<2pt>[l]^{j_C'}\ar@<2pt>[ddl]^{j_{C}} \\ & & & \\ &A\oplus C\ar[uu]^{h}_\cong \ar@<2pt>[uur]^{\pi_{C}}\ar@<2pt>[uul]^{\pi_{A}} & } \end{xy}
\end{align*} commute.

Proof 2.

Since we have maps from $B$ to both $A$ and $C$, they give rise to a unique map $h:A\oplus C\to B$ such that $\pi_A'h=\pi_{A}$ and $\pi_C'h=\pi_C$, as $A\oplus C$ is a product of $A$ and $C$. Similarly, since we have maps into $B$ from both $A$ and $C$, they give rise to a unique map $p:B\to A\oplus C$ such that $pj_A'=j_A$ and $pj_C'=j_C$, because $A\oplus C$ is a coproduct of $A$ and $C$. The universal property of the biproduct implies that $\mathop{\rm id}\nolimits_{A\oplus C} = j_A\pi_A+j_C\pi_C$ (as the map on the right is compatible with the projections and injections), so we have \begin{align*} ph = p\mathop{\rm id}\nolimits_Bh = p(j_A'\pi_A'+j_C'\pi_C')h = pj_A'\pi_A'h +pj_C'\pi_C'h=j_A\pi_A+j_C\pi_C=\mathop{\rm id}\nolimits_{A\oplus C} \end{align*} and \begin{align*} hp &= (j_A'\pi_A'+j_C'\pi_C')hp(j_A'\pi_A'+j_C'\pi_C') = (j_A'\pi_A'h+j_C'\pi_C'h)(pj_A'\pi_A'+pj_C'\pi_C') \\ &=(j_A'\pi_A+j_C'\pi_C)(j_A\pi_A'+j_C\pi_C') = j_A'\pi_Aj_A\pi_A'+j_A'\pi_Aj_C\pi_C'+j_C'\pi_Cj_A\pi_A'+j_C'\pi_Cj_C\pi_C' \\ &=j_A'\pi_A' + 0 + 0 +j_C'\pi_C'=\mathop{\rm id}\nolimits_B \end{align*} and hence $h$ is an isomorphism.