--- title: "Homological Algebra Problem Sets" subtitle: "Problem Set 1" author: - name: D. Zack Garza affiliation: University of Georgia email: dzackgarza@gmail.com date: Spring 2021 order: 1 --- # Weibel 1.1.2 :::{.problem title="Weibel 1.1.2"} Show that a morphism $u: C\to D$ of chain complexes preserves boundaries and cycles respectively, hence inducing a map $H_n(C) \to H_n(D)$ for each $n$. Prove that $H_n: \Ch(\rmod) \to \rmod$ is a functor. ::: :::{.solution} :::{.claim title="1"} The chain map $u$ induces the following well-defined maps: \[ Z_n(u): Z_n(C) &\to Z_n(D) \\ B_n(u): B_n(C) &\to B_n(D) .\] ::: :::{.proof title="of claim (1)"} We'll use the convention that $Z_n \da \ker d_n$ and $B_n \da \im d_{n+1}$ where we index chain complexes as $C = \qty{ \cdots \to C_{n+1} \mapsvia{d_{n+1}^C} C_n \mapsvia{d_n^C} C_{n-1} \to \cdots}$. Unraveling definitions, we would like to show the existence of maps \[ Z_n(u): \ker d_n^C &\to \ker d_n^D \\ B_n(u): \im d_{n+1}^C &\to \im d_{n+1}^D .\] It suffices to show a. $x\in \ker d_n^C \implies u_n(x) \in \ker d_n^D$, and b. $y \in \im d_{n+1}^C \implies u_n(y) \in \im d_{n+1}^D$. Since $u$ is a morphism of chain complexes, we have a commuting ladder where $u_{n-1} \circ d_n^C = d_n^D \circ u_n$: \begin{tikzcd} \cdots && {C_{n+1}} && {C_n} && {C_{n-1}} && \cdots \\ \\ \cdots && {D_{n+1}} && {D_n} && {D_{n-1}} && \cdots \arrow[from=1-1, to=1-3] \arrow["{d_n^C}", color={rgb,255:red,214;green,92;blue,92}, from=1-5, to=1-7] \arrow["{d_{n-1}^C}", from=1-7, to=1-9] \arrow["{u_n}", color={rgb,255:red,92;green,92;blue,214}, from=1-5, to=3-5] \arrow["{d_{n-1}^D}"', from=3-7, to=3-9] \arrow["{d_n^D}"', color={rgb,255:red,92;green,92;blue,214}, from=3-5, to=3-7] \arrow["{d_{n+1}^D}"', from=3-3, to=3-5] \arrow[from=3-1, to=3-3] \arrow["{u_{n+1}}", from=1-3, to=3-3] \arrow["{u_{n-1}}", color={rgb,255:red,214;green,92;blue,92}, from=1-7, to=3-7] \arrow["{d_{n+1}^C}", from=1-3, to=1-5] \end{tikzcd} > [Link to Diagram](https://q.uiver.app/?q=WzAsMTAsWzIsMCwiQ197bisxfSJdLFs2LDAsIkNfe24tMX0iXSxbOCwwLCJcXGNkb3RzIl0sWzAsMCwiXFxjZG90cyJdLFs0LDAsIkNfbiJdLFs0LDIsIkRfbiJdLFsyLDIsIkRfe24rMX0iXSxbMCwyLCJcXGNkb3RzIl0sWzYsMiwiRF97bi0xfSJdLFs4LDIsIlxcY2RvdHMiXSxbMywwXSxbNCwxLCJkX25eQyIsMCx7ImNvbG91ciI6WzAsNjAsNjBdfSxbMCw2MCw2MCwxXV0sWzEsMiwiZF97bi0xfV5DIl0sWzQsNSwidV9uIiwwLHsiY29sb3VyIjpbMjQwLDYwLDYwXX0sWzI0MCw2MCw2MCwxXV0sWzgsOSwiZF97bi0xfV5EIiwyXSxbNSw4LCJkX25eRCIsMix7ImNvbG91ciI6WzI0MCw2MCw2MF19LFsyNDAsNjAsNjAsMV1dLFs2LDUsImRfe24rMX1eRCIsMl0sWzcsNl0sWzAsNiwidV97bisxfSJdLFsxLDgsInVfe24tMX0iLDAseyJjb2xvdXIiOlswLDYwLDYwXX0sWzAsNjAsNjAsMV1dLFswLDQsImRfe24rMX1eQyJdXQ==) To see that (a) holds, we use that fact that \(R\dash\)module morphisms send $0_R\to 0_R$ (using $R\dash$linearity) to compute \[ x \in \ker d_n^C &&\leq C_n \\ &\iff d_n^C(x)= 0_R &\in C_{n-1} \\ &\iff (u_{n-1} \circ d_n^C) (x) = 0_R &\in D_{n-1} && \text{since $u_n$ is $R\dash$linear}\\ &\implies (d_n^D \circ u_n)(x) = 0_R&\in D_{n-1} && \text{commutativity} \\ &\implies x\in \ker (d_n^D \circ u_n) & \leq D_{n-1} \\ &\iff u_n(x) \in \ker d_n^D & \leq D_n .\] Similarly, for (b) we have \[ y \in \im d_{n+1}^C &\iff \exists x\in C_{n+1} \text{ such that } d_{n+1}^C(x) = y \\ &\implies u_{n+1}(x) \in D_{n+1} \\ &\implies (d_{n+1}^D \circ u_{n+1})(x) \in \im d_{n+1}^D \leq D_{n} \\ &\implies (u_n \circ d_{n+1}^C)(x) \in \im d_{n+1}^D \leq D_n && \text{commutativity} \\ &\iff u_n(y) \in \im d_{n+1}^D && \text{using } d_{n+1}^C(x) = y .\] ::: ::: # Weibel 1.1.4 :::{.problem title="Weibel 1.1.4"} Show that for every $A\in \rmod$ and $C\in \Ch(\rmod)$ that $D_\wait \da \Hom_{\rmod}(A, C_\wait)$ is a chain complex of abelian groups. Taking $A \da Z_n$, show that $H_n(D_\wait) = 0 \implies H_n(C_\wait) = 0$. Is the converse true? ::: :::{.solution} We first show that if $A\in \rmod$ and $C \in \Ch(\rmod)$, then \[ D_n \da \Hom_{\rmod}(A, C_n) .\] defines a chain complex of abelian groups. Fixing notation, we write \[ C \da ( \cdots \to C_{n+1} \mapsvia{d_{n+1}^C} C_n \mapsvia{d_n^C} C_{n-1} \to \cdots) .\] 1. **$D_n$ is an abelian group for all $n$:** Define an operation \[ +_D: D_n \cross D_n &\to D_n \\ (f, g) & \mapsto \left\{ \begin{aligned} f+g: A &\to C_n \\ x &\mapsto f(x) +_C g(x) \end{aligned} \right\}, \] where $+_C$ is the addition on $C_n$ provided by its structure as an \(R\dash\)module. We can then check that this operation is commutative: \[ (f+_D g)(x) &\da f(x) +_C g(x) \\ &= g(x) +_C f(x) && \text{since the addition on $C_n$ is commutative} \\ &= (g+_D f)(x) ,\] The additive inverse of $f$ is $-f$, there is an identity function $\id_{C_n}(x) \da x$, and the sum of two functions $A\to C_n$ is again a function $A\to C_n$, making $D_n$ an abelian group for all $n$. 2. **There exist differentials $D_n \mapsvia{d_n^D} D_{n-1}$:** Noting that we have differentials $C_n \mapsvia{d_n^C} C_{n-1}$, we can define \[ d_n^D: D_n &\to D_{n-1} \\ (A \mapsvia{f} C_n) & \mapsto (A \mapsvia{f} C_n \mapsvia{d_n^C} C_{n-1}) ,\] i.e. we send $f\mapsto d_n^C \circ f$ be precomposing with the differential from $C_*$. 3. $(d^D)^2 = 0$: We can explicitly write \[ (d^D)^2: D_n &\to D_{n-2} \\ (A \mapsvia{f} C_n) &\mapsto (A \mapsvia{f} C_n \mapsvia{d_n^C} C_{n-1} \mapsvia{d_{n-1}^C} C_{n-2}) ,\] and so $f \mapsto d_{n-1}^C \circ d_n^C \circ f$. The claim is that this is the zero map, which follows from writing this as $(d^C)^2 \circ f = 0\circ f = 0$, using that $C_*$ is a chain complex. Thus \[ D \da ( \cdots \to D_{n+1} \mapsvia{d_{n+1}^D} D_n \mapsvia{d_n^D} D_{n-1} \to \cdots) \in \Ch(\Ab) .\] Writing $Z_n \da Z_n(C) \da \ker d_n^C$, we now show the following: :::{.claim} \[ H_n( \Hom_{\rmod}( Z_n, C) = 0 \implies H_n(C) = 0 .\] ::: It suffices to show that $\ker d_n^C \subseteq \im d_{n+1}^C$, so let $y\in \ker d_n^C$; we want to produce the following: \[ x\in C_{n+1}, \quad d_{n+1}^C(x) = y .\] We can start with the inclusion map \[ \iota: \ker d_n^C \injects C_n ,\] which by definition is an element of $D_n \da \Hom_{\rmod}(Z_n, C_n)$. By assumption, the following complex is exact at $n$ since its homology vanishes at position $n$: \[ (\cdots \to D_{n+1} \to D_n \to D_{n-1} \to \cdots) \da \\ \cdots \to \Hom_R(Z_n, C_{n+1}) \mapsvia{d_{n+1}^D} \Hom_R(Z_n, C_{n}) \mapsvia{d_n^D} \Hom_R(Z_n, C_{n-1}) \to \cdots .\] :::{.claim} $d_n^D(\iota) = 0$. ::: This can be seen by writing this out as the composition \[ d_n^D(\ker d_n^C \mapsvia{\iota} C_n) = (\ker d_n^C \mapsvia{\iota} C_n \mapsvia{d_n^C} C_{n-1}) .\] We can now use the general fact that the $f(\ker f) = 0$ for any map $f$, i.e. the image of the kernel is necessarily zero. Taking $f = d_n^C$ shows that this composition is zero. By exactness, $\ker d_n^D = \im d_{n+1}^D$ and we can thus pull $\iota$ back to some $f \in D_{n+1} \da \Hom_R(Z_n, C_{n+1})$, and since our original $y \in \ker d_n^C \da Z_n$, it makes sense to consider $x \da f(y) \in C_{n+1}$ and to identity $y = \iota(y) \in C_n$: \begin{tikzcd} &&&& y \\ &&&& {Z_n} \\ \\ \cdots && {C_{n+1}} && {C_n} && {C_{n-1}} && \cdots \\ && {x\da f(y)} && {\iota(y)} \arrow[from=4-1, to=4-3] \arrow["{d_{n+1}^C}"', from=4-3, to=4-5] \arrow["{d_n^C}"', from=4-5, to=4-7] \arrow["{\exists f}"', dashed, from=2-5, to=4-3] \arrow["\iota"', hook, from=2-5, to=4-5] \arrow[from=4-7, to=4-9] \arrow["\in"{marking}, draw=none, from=1-5, to=2-5] \arrow["\in"{marking}, draw=none, from=5-3, to=4-3] \arrow["\in"{marking}, draw=none, from=5-5, to=4-5] \end{tikzcd} > [Link to Diagram](https://q.uiver.app/?q=WzAsOSxbMiwzLCJDX3tuKzF9Il0sWzQsMywiQ19uIl0sWzYsMywiQ197bi0xfSJdLFswLDMsIlxcY2RvdHMiXSxbNCwxLCJaX24iXSxbOCwzLCJcXGNkb3RzIl0sWzQsMCwieSJdLFs0LDQsIlxcaW90YSh5KSJdLFsyLDQsInhcXGRhIGYoeSkiXSxbMywwXSxbMCwxLCJkX3tuKzF9XkMiLDJdLFsxLDIsImRfbl5DIiwyXSxbNCwwLCJcXGV4aXN0cyBmIiwyLHsic3R5bGUiOnsiYm9keSI6eyJuYW1lIjoiZGFzaGVkIn19fV0sWzQsMSwiXFxpb3RhIiwyLHsic3R5bGUiOnsidGFpbCI6eyJuYW1lIjoiaG9vayIsInNpZGUiOiJ0b3AifX19XSxbMiw1XSxbNiw0LCJcXGluIiwzLHsic3R5bGUiOnsiYm9keSI6eyJuYW1lIjoibm9uZSJ9LCJoZWFkIjp7Im5hbWUiOiJub25lIn19fV0sWzgsMCwiXFxpbiIsMyx7InN0eWxlIjp7ImJvZHkiOnsibmFtZSI6Im5vbmUifSwiaGVhZCI6eyJuYW1lIjoibm9uZSJ9fX1dLFs3LDEsIlxcaW4iLDMseyJzdHlsZSI6eyJib2R5Ijp7Im5hbWUiOiJub25lIn0sImhlYWQiOnsibmFtZSI6Im5vbmUifX19XV0=) Importantly, this $f$ satisfies $\iota = d_{n+1}^D(f) \da d_{n+1}^C \circ f$, and so we can write \[ y = \iota(y) = (d_{n+1}^C \circ f)(y) \da d_{n+1}(x) ,\] which is what we wanted to show. ::: # Weibel 1.1.6 :::{.problem title="Weibel 1.1.6: Homology of a graph"} Let \( \Gamma \) be a finite graph with vertices $V \da \ts{v_1, \cdots, v_V}$ and edge $E \da \ts{e_1, \cdots, e_E}$. Define the **incidence matrix** of \( \Gamma \) to be the $V\times E$ matrix $A$ where \[ A_{ij} = \begin{cases} 1 & e_j \text{ starts at } v_i, \\ -1 & e_j \text{ ends at } v_i, \\ 0 & \text{else}. \end{cases} \] Define a chain complex by taking free $R\dash$modules: \[ C \da (\cdots \to 0 \to C_1 \to C_0 \to 0 \to \cdots) = (\cdots \to 0 \to R^E \mapsvia{A} R^V \to 0 \to \cdots) .\] If \( \Gamma \) is connected, show that $H_0(C)$ and $H_1(C)$ are free \(R\dash\)modules of dimensions 1 and $E-V+1$ respectively. > Hint: choose a basis \( \ts{v_1, v_2 - v_1, \cdots, v_V - v_1} \) and use a path from $v_1 \leadsto v_i$ to produce an element $e\in C_1$ with $d(e) = v_i - v_1$. ::: :::{.solution} We first make the following two observations: 1. $H_0(C) = \coker(A) \cong R^V/\im A \implies \rank H_0(C) = V - \rank \im A$, and 2. $H_1(C) = \ker(A) \implies \rank H_1 (C) = \rank \ker A$ :::{.claim} $\rank \im(A) = V-1$. ::: Given this claim, applying observation (1) we immediately obtain \[ \rank H_0(C) = V - (V-1) = 1 ,\] which is the first equality we want to show. For the second equality, we can use the first isomorphism theorem to get a SES of free \(R\dash\)modules \[ 0 \to \ker(A) \injects R^E \to \im(A) \to 0 ,\] and since $\im(A)$ is free and thus projective, this sequence splits. So $R^E \cong \ker(A) \oplus \im(A)$, and taking free ranks yields \[ E = \rank \ker(A) + (V-1) \implies \rank \ker (A) = E - V + 1 ,\] and this yields the second equality by using observation (2) to identify the LHS with $\rank H_1(C)$. :::{.proof title="of claim"} Using the fact that \[ \mathcal{B} \da \ts{v_1, \cdots, v_V} \] is a basis for $R^V$ as a free \(R\dash\)module, we can make a change of basis to \[ \mathcal{B}' \da \ts{v_1, v_2 - v_1, \cdots, v_V - v_1} .\] That this is again a basis follows from the fact that the change-of-basis matrix $M$ is upper-triangular with ones on the diagonal and thus satisfies $\det M = 1_R\in R\units$ (i.e. it's a unit), so $M$ is nonsingular. We can then observe that if $e_i$ is an edge between two vertices $v_{i_1} \mapsvia{e_i} v_{i_2}$, then $d(e_i) \da Ae_i = v_{i_2} - v_{i_2}$. By linearity, if $e_{i_1}, \cdots, e_{i_n}$ is a sequence of edges connecting $v_{1}$ to $v_j$ for any $1\leq j\leq V$, then \[ d(e_{i_1} + \cdots + e_{i_n}) = v_j - v_1 .\] Since \( \Gamma \) is connected, there always exists such a sequence of edges connecting each $v_j$ to $v_1$, and thus $v_j - v_1$ is in $\im (A)$. We can conclude that \[ V-1 \leq \rk \im(A) \leq V .\] To see that $\rk \im (A) \neq V$, note that if $e$ is any sequence of edges connecting $v_1$ to itself in a loop, then $d(e_1) = v_1 - v_1 = 0$. Any other path $e'$ must necessarily start or end at some $v_j\neq v_1$ and satisfies $d(e') = v_j - v_1 \neq v_1$, and so $v_1\not\in\im (A)$. Thus \[ \rank \im(A) = V-1 .\] ::: ::: # Weibel 1.2.3 :::{.problem title="Weibel 1.2.3"} Let \( \mathcal{A} \) be the category $\Ch(\rmod)$ and let $f$ be a chain map. Show that the complex $\ker f$ is a (categorical) kernel of $f$ and that $\cok f$ is a (categorical) cokernel of $f$. ::: :::{.solution} For a fixed map $f:A\to B$, the *kernel* of $f$ is an object $\ker f$ satisfying the following universal property: for any object $K$ with a morphism $K \mapsvia{g} A$ making the following outer square commute, there is a unique morphism $u: K\to \ker f$ making the entire diagram commute: \begin{tikzcd} K \ar[drr, bend left , "g"] \ar[rdd, bend right, "0"'] \ar[rd, "\exists ! u", dotted] & & \\ & \ker f \ar[r, "\iota^f"] \ar[d, "0"'] & A \ar[d, "f"] \\ & 0 \ar[r, "0"'] & B \end{tikzcd} We'll use without proof that kernels exist in \( \mathcal{A} = \rmod \) and are given by $\ker f \da \ts{a\in A \st f(a) = 0_B}$ along with an inclusion map $\iota^f: \ker f \injects A$. Let $A, B\in \Ch(\mathcal{A})$ be chain complexes and $f: A\to B$ be a chain map. We will construct $\ker f$ as a chain complex and show it satisfies the correct universal property. :::{.claim title="1"} There are unique objects $\ker f_n \in \rmod$ which can be assembled into a unique chain complex $(\ker f, \bd^f)$. ::: **Proof of Claim 1**: Let $u: A\to B$ be a chain map, so that we have a commuting diagram of the following form: \begin{tikzcd} \cdots && {A_{n+1}} && {A_n} && {A_{n-1}} && \cdots \\ \\ \cdots && {B_{n+1}} && {B_n} && {B_{n-1}} && \cdots \arrow["{f_{n+1}}", from=1-3, to=3-3] \arrow["{f_n}", from=1-5, to=3-5] \arrow["{f_{n-1}}", from=1-7, to=3-7] \arrow["{\bd^A_{n+1}}"{description}, from=1-3, to=1-5] \arrow["{\bd^A_n}"{description}, from=1-5, to=1-7] \arrow["{\bd^B_{n+1}}"{description}, from=3-3, to=3-5] \arrow["{\bd^B_n}"{description}, from=3-5, to=3-7] \arrow[from=3-1, to=3-3] \arrow[from=1-1, to=1-3] \arrow[from=1-7, to=1-9] \arrow[from=3-7, to=3-9] \end{tikzcd} > [Link to Diagram](https://q.uiver.app/?q=WzAsMTAsWzIsMCwiQV97bisxfSJdLFs0LDAsIkFfbiJdLFs2LDAsIkFfe24tMX0iXSxbMiwyLCJCX3tuKzF9Il0sWzQsMiwiQl9uIl0sWzYsMiwiQl97bi0xfSJdLFswLDIsIlxcY2RvdHMiXSxbMCwwLCJcXGNkb3RzIl0sWzgsMCwiXFxjZG90cyJdLFs4LDIsIlxcY2RvdHMiXSxbMCwzLCJ1X3tuKzF9Il0sWzEsNCwidV9uIl0sWzIsNSwidV97bi0xfSJdLFswLDEsIlxcYmReQV97bisxfSIsMV0sWzEsMiwiXFxiZF5BX24iLDFdLFszLDQsIlxcYmReQl97bisxfSIsMV0sWzQsNSwiXFxiZF5CX24iLDFdLFs2LDNdLFs3LDBdLFsyLDhdLFs1LDldXQ==) Appealing to the universal property of kernels in $\rmod$, we can produce unique objects $\ker f_n$ and morphisms $\iota^f_n: \ker f_n \to A_n$ satisfying $(\ker f_n \to A_n \to B_n) = 0$ for every $n$. We also claim that there are maps $\bd^f_n: \ker f_n \to \ker f_{n-1}$, yielding the following diagram: \begin{tikzcd} \cdots && {\ker f_{n+1}} && {\ker f_n} && {\ker f_{n-1}} && \cdots \\ &&& 2 & &3 {} \\ \cdots && {A_{n+1}} && {A_n} && {A_{n-1}} && \cdots \\ &&& 1 \\ \cdots && {B_{n+1}} && {B_n} && {B_{n-1}} && \cdots \arrow["{u_{n+1}}", from=3-3, to=5-3] \arrow["{u_n}", from=3-5, to=5-5] \arrow["{u_{n-1}}", from=3-7, to=5-7] \arrow["{\bd^A_{n+1}}"{description}, from=3-3, to=3-5] \arrow["{\bd^A_n}"{description}, from=3-5, to=3-7] \arrow["{\bd^B_{n+1}}"{description}, from=5-3, to=5-5] \arrow["{\bd^B_n}"{description}, from=5-5, to=5-7] \arrow[from=5-1, to=5-3] \arrow[from=3-1, to=3-3] \arrow[from=3-7, to=3-9] \arrow[from=5-7, to=5-9] \arrow[dotted, from=1-1, to=1-3] \arrow["{\bd^f_{n+1}}"{description}, dotted, from=1-3, to=1-5] \arrow["{\bd^f_{n}}"{description}, dotted, from=1-5, to=1-7] \arrow["{\iota^f_{n+1}}"{description}, from=1-3, to=3-3] \arrow["{\iota^f_{n}}"{description}, from=1-5, to=3-5] \arrow["{\iota^f_{n-1}}"{description}, from=1-7, to=3-7] \arrow[dotted, from=1-7, to=1-9] \end{tikzcd} > [Link to Diagram](https://q.uiver.app/?q=WzAsMTcsWzIsMiwiQV97bisxfSJdLFs0LDIsIkFfbiJdLFs2LDIsIkFfe24tMX0iXSxbMiw0LCJCX3tuKzF9Il0sWzQsNCwiQl9uIl0sWzYsNCwiQl97bi0xfSJdLFswLDQsIlxcY2RvdHMiXSxbMCwyLCJcXGNkb3RzIl0sWzgsMiwiXFxjZG90cyJdLFs4LDQsIlxcY2RvdHMiXSxbMiwwLCJcXGtlciBmX3tuKzF9Il0sWzQsMCwiXFxrZXIgZl9uIl0sWzYsMCwiXFxrZXIgZl97bi0xfSJdLFswLDAsIlxcY2RvdHMiXSxbOCwwLCJcXGNkb3RzIl0sWzUsMV0sWzMsMywiMSJdLFswLDMsInVfe24rMX0iXSxbMSw0LCJ1X24iXSxbMiw1LCJ1X3tuLTF9Il0sWzAsMSwiXFxiZF5BX3tuKzF9IiwxXSxbMSwyLCJcXGJkXkFfbiIsMV0sWzMsNCwiXFxiZF5CX3tuKzF9IiwxXSxbNCw1LCJcXGJkXkJfbiIsMV0sWzYsM10sWzcsMF0sWzIsOF0sWzUsOV0sWzEzLDEwLCIiLDEseyJzdHlsZSI6eyJib2R5Ijp7Im5hbWUiOiJkb3R0ZWQifX19XSxbMTAsMTEsIlxcYmReZl97bisxfSIsMSx7InN0eWxlIjp7ImJvZHkiOnsibmFtZSI6ImRvdHRlZCJ9fX1dLFsxMSwxMiwiXFxiZF5mX3tufSIsMSx7InN0eWxlIjp7ImJvZHkiOnsibmFtZSI6ImRvdHRlZCJ9fX1dLFsxMCwwLCJcXGlvdGFeZl97bisxfSIsMV0sWzExLDEsIlxcaW90YV5mX3tufSIsMV0sWzEyLDIsIlxcaW90YV5mX3tuLTF9IiwxXSxbMTIsMTQsIiIsMSx7InN0eWxlIjp7ImJvZHkiOnsibmFtZSI6ImRvdHRlZCJ9fX1dXQ==) **Why the $\bd^f_n$ exist:** this follows from the universal property of kernels in \( \mathcal{A} \): Using the commutativity of square 1 we have \[ 0 = (\ker f_{n+1} \to A_{n+1} \to B_{n+1} \to B_n) = (\ker f_{n+1} \to A_{n+1} \to A_n \to B_n) ,\] where we've also used the fact that $(\ker f_{n+1} \to A_{n+1} \to B_{n+1} = 0)$ from the universal property of $\ker f_{n+1}$. So we can fit these into an appropriate diagram in \( \mathcal{A} \), which supplies these differentials: \begin{tikzcd} \ker f_{n+1} \ar[drr, bend left , "\bd_{n+1}^A \circ \iota_{n+1}^f"] \ar[rdd, bend right, "0"'] \ar[rd, "\exists ! \bd^f_{n+1}", dotted] & & \\ & \ker f_n \ar[r, "\iota^f"] \ar[d, "0"'] & A_n \ar[d, "f_n"] \\ & 0 \ar[r, "0"'] & B_n \end{tikzcd} **Why the $\iota^f: \ker f\to A$ assemble into a chain map:** Note that everything here commutes, and we can break the northeast corner of this diagram up and rearrange things slightly to form the following diagram: \begin{tikzcd} {\ker f_{n+1}} && {A_{n+1}} \\ & 2 & && {} \\ {\ker f_n} && {A_n} \\ \\ 0 && {B_n} \arrow["{f_n}", from=3-3, to=5-3] \arrow["0"', from=5-1, to=5-3] \arrow["0"', from=3-1, to=5-1] \arrow["{\iota^f_n}", from=3-1, to=3-3] \arrow["{\iota^f_{n+1}}", from=1-1, to=1-3] \arrow["{\exists ! \bd_{n+1}^f}"', dashed, from=1-1, to=3-1] \arrow[shift right=5, curve={height=30pt}, from=1-1, to=5-1] \arrow["{\bd^A_{n+1}}", from=1-3, to=3-3] \end{tikzcd} > [Link to Diagram](https://q.uiver.app/?q=WzAsOCxbMCwwLCJcXGtlciBmX3tuKzF9Il0sWzIsMCwiQV97bisxfSJdLFsxLDEsIjIiXSxbMCwyLCJcXGtlciBmX24iXSxbMiwyLCJBX24iXSxbNCwxXSxbMCw0LCIwIl0sWzIsNCwiQl9uIl0sWzQsNywiZl9uIl0sWzYsNywiMCIsMl0sWzMsNiwiMCIsMl0sWzMsNCwiXFxpb3RhXmZfbiJdLFswLDEsIlxcaW90YV5mX3tuKzF9Il0sWzAsMywiXFxleGlzdHMgISBcXGJkX3tuKzF9XmYiLDIseyJzdHlsZSI6eyJib2R5Ijp7Im5hbWUiOiJkYXNoZWQifX19XSxbMCw2LCIiLDEseyJvZmZzZXQiOjUsImN1cnZlIjo1fV0sWzEsNCwiXFxiZF5BX3tuKzF9IiwxXV0=) Here, square 2 is precisely the square 2 appearing in the original diagram, and commutativity of it for each $n$ is precisely what is required for $\iota^f$ to be a chain map. **Why $(\bd^f)^2 = 0$:** Using the commutativity of square 3 and the fact that $(\bd^A)^2 = 0$, we have \[ \iota_{n-1}^f \circ (\bd^f)^2 &\da (\ker f_{n+1} \to \ker f_n \to \ker f_{n-1} \to A_{n-1}) \\ &= (\ker f_{n+1} \to A_{n+1} \to A_n \to A_{n-1}) \\ &\da \iota^f_{n+1} \circ (\bd^A)^2 \\ &= 0 ,\] and since $\iota_{n-1}^f$ is not the zero map, this forces $(\bd^f)^2 = 0$. $\qed$ :::{.claim title="2"} The complex $\ker f$ satisfies the universal property of kernels in $\Ch( \mathcal{A})$, i.e. if $g^K: K \to A$ is a chain map satisfying $K\to A\to B = 0$, there is a unique chain map $u: K \to \ker f$ making the appropriate diagram commute. ::: :::{.proof title="?"} Again using the universal property of kernels in $\rmod$, for each $n$ we have a commutative diagram \begin{tikzcd} K_n \ar[drr, bend left , "g^K_n"] \ar[rdd, bend right, "0"'] \ar[rd, "\exists ! u_n", dotted] & & \\ & \ker f_n \ar[r, "\iota^f_n"] \ar[d, "0"'] & A_n \ar[d, "f"] \\ & 0 \ar[r, "0"'] & B_n \end{tikzcd} This results in a diagram of the following form: \begin{tikzcd} \cdots && {K_{n+1}} && {K_n} && {K_{n-1}} && \cdots \\ {} &&& 1 && \\ \cdots && {\ker f_{n+1}} && {\ker f_n} && {\ker f_{n-1}} && \cdots \\ &&& 3 && {} \\ \cdots && {A_{n+1}} && {A_n} && {A_{n-1}} && \cdots \\ &&& \\ \cdots && {B_{n+1}} && {B_n} && {B_{n-1}} && \cdots \arrow["{u_{n+1}}", from=5-3, to=7-3] \arrow["{u_n}", from=5-5, to=7-5] \arrow["{u_{n-1}}", from=5-7, to=7-7] \arrow["{\bd^A_{n+1}}"{description}, from=5-3, to=5-5] \arrow["{\bd^A_n}"{description}, from=5-5, to=5-7] \arrow["{\bd^B_{n+1}}"{description}, from=7-3, to=7-5] \arrow["{\bd^B_n}"{description}, from=7-5, to=7-7] \arrow[from=7-1, to=7-3] \arrow[from=5-1, to=5-3] \arrow[from=5-7, to=5-9] \arrow[from=7-7, to=7-9] \arrow[from=3-1, to=3-3] \arrow["{\bd^f_{n+1}}"{description}, from=3-3, to=3-5] \arrow["{\bd^f_{n}}"{description}, from=3-5, to=3-7] \arrow["{\iota^f_{n+1}}"{description}, from=3-3, to=5-3] \arrow["{\iota^f_{n}}"{description}, from=3-5, to=5-5] \arrow["{\iota^f_{n-1}}"{description}, from=3-7, to=5-7] \arrow[from=3-7, to=3-9] \arrow[from=1-1, to=1-3] \arrow["{\bd_{n+1}^K}", from=1-3, to=1-5] \arrow["{\bd_{n+1}^K}", from=1-5, to=1-7] \arrow["{\exists u_{n+1}}", dashed, from=1-3, to=3-3] \arrow["{\exists u_{n}}", dashed, from=1-5, to=3-5] \arrow["{\exists u_{n-1}}", dashed, from=1-7, to=3-7] \arrow[from=1-7, to=1-9] \arrow["{g^K_{n+1}}"'{pos=0.7}, color={rgb,255:red,255;green,100;blue,100}, curve={height=30pt}, from=1-3, to=5-3] \arrow["{g^K_{n}}"'{pos=0.7}, color={rgb,255:red,255;green,100;blue,100}, curve={height=30pt}, from=1-5, to=5-5] \arrow["{g^K_{n-1}}"'{pos=0.7}, color={rgb,255:red,255;green,100;blue,100}, curve={height=30pt}, from=1-7, to=5-7] \end{tikzcd} > [Link to Diagram](https://q.uiver.app/?q=WzAsMjUsWzIsNCwiQV97bisxfSJdLFs0LDQsIkFfbiJdLFs2LDQsIkFfe24tMX0iXSxbMiw2LCJCX3tuKzF9Il0sWzQsNiwiQl9uIl0sWzYsNiwiQl97bi0xfSJdLFswLDYsIlxcY2RvdHMiXSxbMCw0LCJcXGNkb3RzIl0sWzgsNCwiXFxjZG90cyJdLFs4LDYsIlxcY2RvdHMiXSxbMiwyLCJcXGtlciBmX3tuKzF9Il0sWzQsMiwiXFxrZXIgZl9uIl0sWzYsMiwiXFxrZXIgZl97bi0xfSJdLFswLDIsIlxcY2RvdHMiXSxbOCwyLCJcXGNkb3RzIl0sWzUsM10sWzMsNSwiMSJdLFswLDFdLFsyLDAsIktfe24rMX0iXSxbNCwwLCJLX24iXSxbNiwwLCJLX3tuLTF9Il0sWzAsMCwiXFxjZG90cyJdLFs4LDAsIlxcY2RvdHMiXSxbMywxLCIxIl0sWzUsMSwiMiJdLFswLDMsInVfe24rMX0iXSxbMSw0LCJ1X24iXSxbMiw1LCJ1X3tuLTF9Il0sWzAsMSwiXFxiZF5BX3tuKzF9IiwxXSxbMSwyLCJcXGJkXkFfbiIsMV0sWzMsNCwiXFxiZF5CX3tuKzF9IiwxXSxbNCw1LCJcXGJkXkJfbiIsMV0sWzYsM10sWzcsMF0sWzIsOF0sWzUsOV0sWzEzLDEwLCIiLDEseyJzdHlsZSI6eyJib2R5Ijp7Im5hbWUiOiJkb3R0ZWQifX19XSxbMTAsMTEsIlxcYmReZl97bisxfSIsMSx7InN0eWxlIjp7ImJvZHkiOnsibmFtZSI6ImRvdHRlZCJ9fX1dLFsxMSwxMiwiXFxiZF5mX3tufSIsMSx7InN0eWxlIjp7ImJvZHkiOnsibmFtZSI6ImRvdHRlZCJ9fX1dLFsxMCwwLCJcXGlvdGFeZl97bisxfSIsMV0sWzExLDEsIlxcaW90YV5mX3tufSIsMV0sWzEyLDIsIlxcaW90YV5mX3tuLTF9IiwxXSxbMTIsMTQsIiIsMSx7InN0eWxlIjp7ImJvZHkiOnsibmFtZSI6ImRvdHRlZCJ9fX1dLFsyMSwxOF0sWzE4LDE5LCJcXGJkX3tuKzF9XksiXSxbMTksMjAsIlxcYmRfe24rMX1eSyJdLFsxOCwxMCwiXFxleGlzdHMgdV97bisxfSIsMCx7InN0eWxlIjp7ImJvZHkiOnsibmFtZSI6ImRhc2hlZCJ9fX1dLFsxOSwxMSwiXFxleGlzdHMgdV97bn0iLDAseyJzdHlsZSI6eyJib2R5Ijp7Im5hbWUiOiJkYXNoZWQifX19XSxbMjAsMTIsIlxcZXhpc3RzIHVfe24tMX0iLDAseyJzdHlsZSI6eyJib2R5Ijp7Im5hbWUiOiJkYXNoZWQifX19XSxbMjAsMjJdLFsxOCwwLCJnXktfe24rMX0iLDEseyJsYWJlbF9wb3NpdGlvbiI6NzAsImN1cnZlIjo1LCJjb2xvdXIiOlsxMjUsNjUsNjBdfSxbMTI1LDY1LDYwLDFdXSxbMTksMSwiZ15LX3tufSIsMix7ImxhYmVsX3Bvc2l0aW9uIjo3MCwiY3VydmUiOjUsImNvbG91ciI6WzEyNSw2NSw2MF19LFsxMjUsNjUsNjAsMV1dLFsyMCwyLCJnXktfe24tMX0iLDIseyJsYWJlbF9wb3NpdGlvbiI6NzAsImN1cnZlIjo1LCJjb2xvdXIiOlsxMjUsNjUsNjBdfSxbMTI1LDY1LDYwLDFdXV0=) It only remains to check that the $u_n$ assemble to a chain map $K\to \ker f$, which would follow from the commutativity of e.g. square (1). However, if (1) were *not* commutative, then the rectangle formed by (1) and (3) together would not be commutative -- but $g^K$ was assumed to be a chain map, so this rectangle commutes, yielding a contradiction. ::: > Note: a proof of a similar flavor seems to work for the cokernel complex by reversing all of the arrows. ::: # Exactness in the Snake Lemma :::{.problem title="?"} Verify exactness in the Snake Lemma in at least two other positions. ::: :::{.solution} This follows from the construction of the complex $\ker f$ above, specifically using the fact that the constructed differential $\bd^f$ satisfies $(\bd^f)^2 = 0$. :::