are exact. If \(\alpha\) is surjective, \(\beta\) and \(\delta\) are isomorphisms, and \(\varepsilon\) is injective, then \(\gamma\) is an isomorphism [@Hat02].
For injectivity, let \(c\in C\) satisfy \(\gamma(c)=0\). Then \[ \delta(h(c))=h'(\gamma(c))=0. \] Since \(\delta\) is injective, \(h(c)=0\). Exactness of the top row gives \(c=g(b)\) for some \(b\in B\). Now \[ 0=\gamma(g(b))=g'(\beta(b)), \] so exactness of the bottom row gives \(a'\in A'\) with \(\beta(b)=f'(a')\). Choose \(a\in A\) with \(\alpha(a)=a'\) using surjectivity of \(\alpha\). Commutativity gives \[ \beta(b)=f'(\alpha(a))=\beta(f(a)). \] Since \(\beta\) is injective, \(b=f(a)\), hence \(c=g(f(a))=0\). Thus \(\gamma\) is injective.
For surjectivity, let \(c'\in C'\). Since \(\delta\) is surjective, choose \(d\in D\) with \(\delta(d)=h'(c')\). Then \[ \varepsilon(i(d))=i'(\delta(d))=i'(h'(c'))=0. \] Since \(\varepsilon\) is injective, \(i(d)=0\). Exactness of the top row gives \(c\in C\) with \(h(c)=d\). Hence \[ h'(c'-\gamma(c))=h'(c')-\delta(h(c))=0. \] By exactness of the bottom row, \(c'-\gamma(c)=g'(b')\) for some \(b'\in B'\). Choose \(b\in B\) with \(\beta(b)=b'\) using surjectivity of \(\beta\). Then \[ c'=\gamma(c)+g'(\beta(b))=\gamma(c)+\gamma(g(b))=\gamma(c+g(b)). \] Thus \(\gamma\) is surjective, so it is an isomorphism.