\documentclass[12pt,titlepage]{article} \usepackage{amsmath} \usepackage{mathrsfs} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsthm} \usepackage{mathtools} \usepackage{graphicx} \usepackage{color} \usepackage{ucs} \usepackage[utf8x]{inputenc} \usepackage{xparse} \usepackage{hyperref} %----Macros---------- % % Unresolved issues: % % \righttoleftarrow % \lefttorightarrow % % \color{} with HTML colorspec % \bgcolor % \array with options (without options, it's equivalent to the matrix environment) % Of the standard HTML named colors, white, black, red, green, blue and yellow % are predefined in the color package. Here are the rest. \definecolor{aqua}{rgb}{0, 1.0, 1.0} \definecolor{fuschia}{rgb}{1.0, 0, 1.0} \definecolor{gray}{rgb}{0.502, 0.502, 0.502} \definecolor{lime}{rgb}{0, 1.0, 0} \definecolor{maroon}{rgb}{0.502, 0, 0} \definecolor{navy}{rgb}{0, 0, 0.502} \definecolor{olive}{rgb}{0.502, 0.502, 0} \definecolor{purple}{rgb}{0.502, 0, 0.502} \definecolor{silver}{rgb}{0.753, 0.753, 0.753} \definecolor{teal}{rgb}{0, 0.502, 0.502} % Because of conflicts, \space and \mathop are converted to % \itexspace and \operatorname during preprocessing. % itex: \space{ht}{dp}{wd} % % Height and baseline depth measurements are in units of tenths of an ex while % the width is measured in tenths of an em. \makeatletter \newdimen\itex@wd% \newdimen\itex@dp% \newdimen\itex@thd% \def\itexspace#1#2#3{\itex@wd=#3em% \itex@wd=0.1\itex@wd% \itex@dp=#2ex% \itex@dp=0.1\itex@dp% \itex@thd=#1ex% \itex@thd=0.1\itex@thd% \advance\itex@thd\the\itex@dp% \makebox[\the\itex@wd]{\rule[-\the\itex@dp]{0cm}{\the\itex@thd}}} \makeatother % \tensor and \multiscript \makeatletter \newif\if@sup \newtoks\@sups \def\append@sup#1{\edef\act{\noexpand\@sups={\the\@sups #1}}\act}% \def\reset@sup{\@supfalse\@sups={}}% \def\mk@scripts#1#2{\if #2/ \if@sup ^{\the\@sups}\fi \else% \ifx #1_ \if@sup ^{\the\@sups}\reset@sup \fi {}_{#2}% \else \append@sup#2 \@suptrue \fi% \expandafter\mk@scripts\fi} \def\tensor#1#2{\reset@sup#1\mk@scripts#2_/} \def\multiscripts#1#2#3{\reset@sup{}\mk@scripts#1_/#2% \reset@sup\mk@scripts#3_/} \makeatother % \slash \makeatletter \newbox\slashbox \setbox\slashbox=\hbox{$/$} \def\itex@pslash#1{\setbox\@tempboxa=\hbox{$#1$} \@tempdima=0.5\wd\slashbox \advance\@tempdima 0.5\wd\@tempboxa \copy\slashbox \kern-\@tempdima \box\@tempboxa} \def\slash{\protect\itex@pslash} \makeatother % math-mode versions of \rlap, etc % from Alexander Perlis, "A complement to \smash, \llap, and lap" % http://math.arizona.edu/~aprl/publications/mathclap/ \def\clap#1{\hbox to 0pt{\hss#1\hss}} \def\mathllap{\mathpalette\mathllapinternal} \def\mathrlap{\mathpalette\mathrlapinternal} \def\mathclap{\mathpalette\mathclapinternal} \def\mathllapinternal#1#2{\llap{$\mathsurround=0pt#1{#2}$}} \def\mathrlapinternal#1#2{\rlap{$\mathsurround=0pt#1{#2}$}} \def\mathclapinternal#1#2{\clap{$\mathsurround=0pt#1{#2}$}} % Renames \sqrt as \oldsqrt and redefine root to result in \sqrt[#1]{#2} \let\oldroot\root \def\root#1#2{\oldroot #1 \of{#2}} \renewcommand{\sqrt}[2][]{\oldroot #1 \of{#2}} % Manually declare the txfonts symbolsC font \DeclareSymbolFont{symbolsC}{U}{txsyc}{m}{n} \SetSymbolFont{symbolsC}{bold}{U}{txsyc}{bx}{n} \DeclareFontSubstitution{U}{txsyc}{m}{n} % Manually declare the stmaryrd font \DeclareSymbolFont{stmry}{U}{stmry}{m}{n} \SetSymbolFont{stmry}{bold}{U}{stmry}{b}{n} % Manually declare the MnSymbolE font \DeclareFontFamily{OMX}{MnSymbolE}{} \DeclareSymbolFont{mnomx}{OMX}{MnSymbolE}{m}{n} \SetSymbolFont{mnomx}{bold}{OMX}{MnSymbolE}{b}{n} \DeclareFontShape{OMX}{MnSymbolE}{m}{n}{ <-6> MnSymbolE5 <6-7> MnSymbolE6 <7-8> MnSymbolE7 <8-9> MnSymbolE8 <9-10> MnSymbolE9 <10-12> MnSymbolE10 <12-> MnSymbolE12}{} % Declare specific arrows from txfonts without loading the full package \makeatletter \def\re@DeclareMathSymbol#1#2#3#4{% \let#1=\undefined \DeclareMathSymbol{#1}{#2}{#3}{#4}} \re@DeclareMathSymbol{\neArrow}{\mathrel}{symbolsC}{116} \re@DeclareMathSymbol{\neArr}{\mathrel}{symbolsC}{116} \re@DeclareMathSymbol{\seArrow}{\mathrel}{symbolsC}{117} \re@DeclareMathSymbol{\seArr}{\mathrel}{symbolsC}{117} \re@DeclareMathSymbol{\nwArrow}{\mathrel}{symbolsC}{118} \re@DeclareMathSymbol{\nwArr}{\mathrel}{symbolsC}{118} \re@DeclareMathSymbol{\swArrow}{\mathrel}{symbolsC}{119} \re@DeclareMathSymbol{\swArr}{\mathrel}{symbolsC}{119} \re@DeclareMathSymbol{\nequiv}{\mathrel}{symbolsC}{46} \re@DeclareMathSymbol{\Perp}{\mathrel}{symbolsC}{121} \re@DeclareMathSymbol{\Vbar}{\mathrel}{symbolsC}{121} \re@DeclareMathSymbol{\sslash}{\mathrel}{stmry}{12} \re@DeclareMathSymbol{\bigsqcap}{\mathop}{stmry}{"64} \re@DeclareMathSymbol{\biginterleave}{\mathop}{stmry}{"6} \re@DeclareMathSymbol{\invamp}{\mathrel}{symbolsC}{77} \re@DeclareMathSymbol{\parr}{\mathrel}{symbolsC}{77} \makeatother % \llangle, \rrangle, \lmoustache and \rmoustache from MnSymbolE \makeatletter \def\Decl@Mn@Delim#1#2#3#4{% \if\relax\noexpand#1% \let#1\undefined \fi \DeclareMathDelimiter{#1}{#2}{#3}{#4}{#3}{#4}} \def\Decl@Mn@Open#1#2#3{\Decl@Mn@Delim{#1}{\mathopen}{#2}{#3}} \def\Decl@Mn@Close#1#2#3{\Decl@Mn@Delim{#1}{\mathclose}{#2}{#3}} \Decl@Mn@Open{\llangle}{mnomx}{'164} \Decl@Mn@Close{\rrangle}{mnomx}{'171} \Decl@Mn@Open{\lmoustache}{mnomx}{'245} \Decl@Mn@Close{\rmoustache}{mnomx}{'244} \makeatother % Widecheck \makeatletter \DeclareRobustCommand\widecheck[1]{{\mathpalette\@widecheck{#1}}} \def\@widecheck#1#2{% \setbox\z@\hbox{\m@th$#1#2$}% \setbox\tw@\hbox{\m@th$#1% \widehat{% \vrule\@width\z@\@height\ht\z@ \vrule\@height\z@\@width\wd\z@}$}% \dp\tw@-\ht\z@ \@tempdima\ht\z@ \advance\@tempdima2\ht\tw@ \divide\@tempdima\thr@@ \setbox\tw@\hbox{% \raise\@tempdima\hbox{\scalebox{1}[-1]{\lower\@tempdima\box \tw@}}}% {\ooalign{\box\tw@ \cr \box\z@}}} \makeatother % \mathraisebox{voffset}[height][depth]{something} \makeatletter \NewDocumentCommand\mathraisebox{moom}{% \IfNoValueTF{#2}{\def\@temp##1##2{\raisebox{#1}{$\m@th##1##2$}}}{% \IfNoValueTF{#3}{\def\@temp##1##2{\raisebox{#1}[#2]{$\m@th##1##2$}}% }{\def\@temp##1##2{\raisebox{#1}[#2][#3]{$\m@th##1##2$}}}}% \mathpalette\@temp{#4}} \makeatletter % udots (taken from yhmath) \makeatletter \def\udots{\mathinner{\mkern2mu\raise\p@\hbox{.} \mkern2mu\raise4\p@\hbox{.}\mkern1mu \raise7\p@\vbox{\kern7\p@\hbox{.}}\mkern1mu}} \makeatother %% Fix array \newcommand{\itexarray}[1]{\begin{matrix}#1\end{matrix}} %% \itexnum is a noop \newcommand{\itexnum}[1]{#1} %% Renaming existing commands \newcommand{\underoverset}[3]{\underset{#1}{\overset{#2}{#3}}} \newcommand{\widevec}{\overrightarrow} \newcommand{\darr}{\downarrow} \newcommand{\nearr}{\nearrow} \newcommand{\nwarr}{\nwarrow} \newcommand{\searr}{\searrow} \newcommand{\swarr}{\swarrow} \newcommand{\curvearrowbotright}{\curvearrowright} \newcommand{\uparr}{\uparrow} \newcommand{\downuparrow}{\updownarrow} \newcommand{\duparr}{\updownarrow} \newcommand{\updarr}{\updownarrow} \newcommand{\gt}{>} \newcommand{\lt}{<} \newcommand{\map}{\mapsto} \newcommand{\embedsin}{\hookrightarrow} \newcommand{\Alpha}{A} \newcommand{\Beta}{B} \newcommand{\Zeta}{Z} \newcommand{\Eta}{H} \newcommand{\Iota}{I} \newcommand{\Kappa}{K} \newcommand{\Mu}{M} \newcommand{\Nu}{N} \newcommand{\Rho}{P} \newcommand{\Tau}{T} \newcommand{\Upsi}{\Upsilon} \newcommand{\omicron}{o} \newcommand{\lang}{\langle} \newcommand{\rang}{\rangle} \newcommand{\Union}{\bigcup} \newcommand{\Intersection}{\bigcap} \newcommand{\Oplus}{\bigoplus} \newcommand{\Otimes}{\bigotimes} \newcommand{\Wedge}{\bigwedge} \newcommand{\Vee}{\bigvee} \newcommand{\coproduct}{\coprod} \newcommand{\product}{\prod} \newcommand{\closure}{\overline} \newcommand{\integral}{\int} \newcommand{\doubleintegral}{\iint} \newcommand{\tripleintegral}{\iiint} \newcommand{\quadrupleintegral}{\iiiint} \newcommand{\conint}{\oint} \newcommand{\contourintegral}{\oint} \newcommand{\infinity}{\infty} \newcommand{\bottom}{\bot} \newcommand{\minusb}{\boxminus} \newcommand{\plusb}{\boxplus} \newcommand{\timesb}{\boxtimes} \newcommand{\intersection}{\cap} \newcommand{\union}{\cup} \newcommand{\Del}{\nabla} \newcommand{\odash}{\circleddash} \newcommand{\negspace}{\!} \newcommand{\widebar}{\overline} \newcommand{\textsize}{\normalsize} \renewcommand{\scriptsize}{\scriptstyle} \newcommand{\scriptscriptsize}{\scriptscriptstyle} \newcommand{\mathfr}{\mathfrak} \newcommand{\statusline}[2]{#2} \newcommand{\tooltip}[2]{#2} \newcommand{\toggle}[2]{#2} % Theorem Environments \theoremstyle{plain} \newtheorem{theorem}{Theorem} \newtheorem{lemma}{Lemma} \newtheorem{prop}{Proposition} \newtheorem{cor}{Corollary} \newtheorem*{utheorem}{Theorem} \newtheorem*{ulemma}{Lemma} \newtheorem*{uprop}{Proposition} \newtheorem*{ucor}{Corollary} \theoremstyle{definition} \newtheorem{defn}{Definition} \newtheorem{example}{Example} \newtheorem*{udefn}{Definition} \newtheorem*{uexample}{Example} \theoremstyle{remark} \newtheorem{remark}{Remark} \newtheorem{note}{Note} \newtheorem*{uremark}{Remark} \newtheorem*{unote}{Note} %------------------------------------------------------------------- \begin{document} %------------------------------------------------------------------- \section*{salamander lemma} \hypertarget{context}{}\subsubsection*{{Context}}\label{context} \hypertarget{diagram_chasing_lemmas}{}\paragraph*{{Diagram chasing lemmas}}\label{diagram_chasing_lemmas} [[!include diagram chasing lemmas - contents]] \hypertarget{homological_algebra}{}\paragraph*{{Homological algebra}}\label{homological_algebra} [[!include homological algebra - contents]] \hypertarget{contents}{}\section*{{Contents}}\label{contents} \noindent\hyperlink{idea}{Idea}\dotfill \pageref*{idea} \linebreak \noindent\hyperlink{TheSalamanderLemma}{The Salamander lemma}\dotfill \pageref*{TheSalamanderLemma} \linebreak \noindent\hyperlink{Preliminaries}{Preliminaries}\dotfill \pageref*{Preliminaries} \linebreak \noindent\hyperlink{statement}{Statement}\dotfill \pageref*{statement} \linebreak \noindent\hyperlink{IntraExtramuralIsomorphisms}{Intramural and extramural isomorphisms}\dotfill \pageref*{IntraExtramuralIsomorphisms} \linebreak \noindent\hyperlink{Implications}{Implications: The basic diagram-chasing lemmas}\dotfill \pageref*{Implications} \linebreak \noindent\hyperlink{3x3Lemmas}{The $3 \times 3$ lemma}\dotfill \pageref*{3x3Lemmas} \linebreak \noindent\hyperlink{nxnLemma}{The $n \times n$ lemma}\dotfill \pageref*{nxnLemma} \linebreak \noindent\hyperlink{FourLemma}{The four lemma}\dotfill \pageref*{FourLemma} \linebreak \noindent\hyperlink{TheSnakeLemma}{The snake lemma}\dotfill \pageref*{TheSnakeLemma} \linebreak \noindent\hyperlink{References}{References}\dotfill \pageref*{References} \linebreak \hypertarget{idea}{}\subsection*{{Idea}}\label{idea} The \emph{salamander lemma} is a fundamental lemma in [[homological algebra]] providing information on the relation between [[homology groups]] at different positions in a [[double complex]]. By a simple consequence illustrated in remark \ref{ExtramuralMapsAsDiagonals} below, all the standard [[diagram chasing lemmas]] of [[homological algebra]] are direct and transparent consequences of this lemma, such as the [[3x3 lemma]], the [[four lemma]], hence the [[five lemma]], the [[snake lemma]], and the [[long exact sequence in cohomology]] corresponding to a [[short exact sequence]]. These lemmas are old and classical, but their traditional proofs are, while elementary, not very illuminating. The Salamander lemma serves to make the mechanism behind these lemmas more transparent and also make evident a host of further lemmas of this kind not traditionally considered, such as an \hyperlink{nxnLemma}{nxn lemma} for all $n \in \mathbb{N}$. \hypertarget{TheSalamanderLemma}{}\subsection*{{The Salamander lemma}}\label{TheSalamanderLemma} The Salamander lemma, prop. \ref{SalamanderLemma} below, is a statement about the [[exact sequence|exactness]] of a sequence naturally associated with any [[morphism]] in a [[double complex]]. In the \emph{\hyperlink{Preliminaries}{Preliminaries}} we first introduce this sequence itself. \hypertarget{Preliminaries}{}\subsubsection*{{Preliminaries}}\label{Preliminaries} \begin{remark} \label{}\hypertarget{}{} \textbf{(general assumption/convention)} As always in [[homological algebra]], when we consider \emph{elements} of objects in the [[abelian category]] $\mathcal{A}$ it is either assumed that $\mathcal{A}$ is of the form $R$[[Mod]] for some [[ring]] $R$, or that one of the \emph{\href{http://ncatlab.org/nlab/show/abelian%20category#EmbeddingTheorems}{Embedding theorems}} has been used to embed it into such, by a [[faithful functor|faithful]] and [[exact functor]], and these elements are actual elements of the [[sets]] underlying these [[modules]]. In the following many of the proofs are spelled out in terms of elements this way and we will not always repeat this assumption. This should help to amplify how utterly elementary the salamander lemma is. But explicitly element-free/general abstract proofs can of course be given with not much more effort, too, see (\hyperlink{Wise}{Wise}). \end{remark} \begin{defn} \label{DonorReceptor}\hypertarget{DonorReceptor}{} Let $A_{\bullet \bullet}$ a [[double complex]] in some [[abelian category]] $\mathcal{A}$, hence a [[chain complex]] of chain complexes $A_{\bullet, \bullet} \in Ch_\bullet(Ch_\bullet(\mathcal{A}))$, hence a [[diagram]] of the form \begin{displaymath} \itexarray{ && \vdots && \vdots \\ & & \downarrow^{\mathrlap{\partial^{vert}}} && \downarrow^{\mathrlap{\partial^{vert}}} \\ \cdots &\to & A_{n,m} &\stackrel{\partial^{hor}}{\to}& A_{n-1,m} & \to & \cdots \\ & & \downarrow^{\mathrlap{\partial^{vert}}} && \downarrow^{\mathrlap{\partial^{vert}}} \\ \cdots &\to & A_{n,m-1} &\stackrel{\partial^{hor}}{\to}& A_{n-1,m-1} & \to & \cdots \\ & & \downarrow^{\mathrlap{\partial^{vert}}} && \downarrow^{\mathrlap{\partial^{vert}}} \\ && \vdots && \vdots } \end{displaymath} where $\partial^{hor} \circ \partial^{hor} = 0$, where $\partial^{vert} \circ \partial^{vert} = 0$ and where all squares [[commuting diagram|commute]], $\partial^{hor} \circ \partial^{vert} = \partial^{vert} \circ \partial^{hor}$. Let $A \coloneqq A_{k l}$ be any [[object]] in the double complex at any position $(k,l)$. This is the source and target of horizontal, vertical and diagonal (unique composite of a horizontal and a vertical) [[morphisms]] to be denoted as follows: \begin{displaymath} \itexarray{ ^\mathllap{\partial_{in}^{diag}} \searrow & \downarrow^{\mathrlap{\partial_{in}^{vert}}} \\ \stackrel{\partial_{in}^{hor}}{\to} & A & \stackrel{\partial_{out}^{hor}}{\to} \\ & ^\mathllap{\partial_{out}^{vert}} \downarrow & \searrow^{\mathrlap{\partial_{out}^{diag}}} } \,. \end{displaymath} Define \begin{itemize}% \item $A^{hor} \coloneqq ker (\partial^{hor}_{out}) / im (\partial^{hor}_{in}) \in \mathcal{A}$ -- the horizontal [[chain homology]] at $X$; \item $A^{vert} \coloneqq ker (\partial^{vert}_{out}) / im (\partial^{vert}_{in}) \in \mathcal{A}$ -- the vertical [[chain homology]] at $X$; \item ${}^{\Box}A \coloneqq \frac{ker (\partial^{hor}_{out}) \cap ker(\partial^{vert}_{out})}{im(\partial^{diag}_{in})} \in \mathcal{A}$ -- the ``receptor'' at $A$; \item $A_{\Box}\coloneqq \frac{ker (\partial^{diag}_{out}) }{ im(\partial^{hor}_{in}) + im(\partial^{vert}_{in})}$ -- the ``donor'' at $A$; \end{itemize} where $ker(-)$ denotes the [[kernel]] of a map, $im(-)$ the [[image]] of a map and $\frac{N_1}{N_2}$ the [[quotient module]] of the module $N_1$ by a [[submodule]] $N_2 \hookrightarrow N_1$ and $N_1 + N_2$ the sum of two submodules (i.e., [[join]] in the [[lattice]] of submodules under inclusion). \end{defn} \begin{lemma} \label{Intramural}\hypertarget{Intramural}{} The [[identity]] on representatives in $A$ induces a [[commuting diagram]] of [[homomorphisms]] from the donor of $A$ to the receptor of $A$, def. \ref{DonorReceptor}, via the horizontal and vertical [[homology groups]] at $A$: \begin{displaymath} \itexarray{ && {}^\Box A \\ & \swarrow && \searrow \\ A^{vert} &&&& A^{hor} \\ & \searrow && \swarrow \\ && A_\Box \,. } \end{displaymath} These morphisms are to be called the \textbf{intramural maps} of $A$. \end{lemma} This is immediate, but here is a way to make it fully explicit: \begin{proof} The statement that the top two morphisms exist and are given by the identity on representatives is that if $[a] \in {}^\Box A$ is represented by $a \in A$, then $a$ also represents an element in $A^{hor}$ and $A^{vert}$. But this is the very definition of ${}^\Box A$: being a [[quotient module]] of $ker(\partial^{vert}_{out}) \cap ker(\partial^{hor}_{out})$ means that its elements are represented by elements of $A$ that are annihiliated by both $\partial^{vert}_{out}$ and $\partial^{hor}_{out}$. Moreover if $[a] \in {}^\Box A$ is 0 then $a$ also represents the 0-element in $A^{hor}$ and in $A^{vert}$, because by definition of ${}^\Box A$ it is then in the [[image]] of $\partial^{hor} \circ \partial^{vert} = \partial^{vert} \circ \partial^{hor}$. Moreover it is clear that everything respects addition of module elements and the [[action]] by the ring $R$, hence the top morphisms are well defined [[module]] [[homomorphisms]]. Similarily the bottom two morphisms exist and are given by the identity on representatives by the very definition of $A_{\Box}$: this being a quotient of the kernel of $\partial^{vert} \partial^{hor} = \partial^{hor} \partial^{vert}$ it contains in particular the elements that are represented in $A$ by elements in the kernel of $\partial^{hor}$ and in the kernel of of $\partial^{vert}$ separately. And if $[a]$ is the 0-element in $A^{hor}$ or $A^{vert}$ then $a$ is in the image of $\partial^{hor}$ or of $\partial^{vert}$, respectively, and since these two images are quotiented out to obtain $A_{\Box}$, such $a$ also represent the 0-element there. \end{proof} \begin{remark} \label{}\hypertarget{}{} In lemma \ref{Intramural} ``intramural'' is meant to allude to the fact that these morphisms go between objects that all come from $A$ and hence remain ``in the context of $A$''. The ``extramural'' maps to follow in lemma \ref{Extramural} below instead go from objects associated to some $A$ to objects associated to some $B$, so they go ``out of the context of $A$''. \end{remark} \begin{lemma} \label{Extramural}\hypertarget{Extramural}{} For $\partial : A \to B$ is any morphism in the double complex (either horizontal or vertical), when applied to representatives in $A$ it induces a homomorphism \begin{displaymath} A_\Box \to {}^\Box B \end{displaymath} from the donor of $A$ to the receptor of $B$, def. \ref{DonorReceptor}, to be called the \textbf{extramural map} associated with $\partial$. \end{lemma} Again this is immediate, but here is a way to make it explicit: \begin{proof} We discuss the case that $\partial = \partial^{hor}$ is a horizontal [[differential]]. The other case works verbatim the same way, only with the roles of $\partial^{hor}$ and $\partial^{vert}$ interchanged. By definition \ref{DonorReceptor}, an $[a] \in A_{\Box}$ is represented by an $a \in A$ for which $\partial^{vert}\partial^{hor} a = 0$. The claim is that $\partial^{hor} a$ then represents an element in ${}^{\Box}B$ such that this is a module homomorphism. \begin{itemize}% \item We have $\partial^{vert} (\partial^{hor} a) = 0$ by assumption on $a$ and $\partial^{hor} (\partial^{hor} a) = 0$ by the chain complex property. Hence $\partial^{hor} a$ represents an element in ${}^{\Box} B$. \item If $[a] = 0$ then there is $c$ such that $a = \partial^{hor} c$ or $d$ such that $a = \partial^{vert} d$. In the first case the chain complex property gives that $\partial^{hor}a = \partial^{hor}\partial^{hor}c = 0$ and hence $[\partial^{hor} a] = 0$ in ${}^\Box B$, in the second $\partial^{hor}a = \partial^{hor}\partial^{vert} d$ which is also 0 in ${}^\Box B$ since this is the quotient by $im(\partial^{hor} \partial^{vert})$. \end{itemize} \end{proof} \begin{remark} \label{ExtramuralMapsAsDiagonals}\hypertarget{ExtramuralMapsAsDiagonals}{} \textbf{(central idea on diagram chasing)} It is useful in computations as those shown below in \emph{\hyperlink{Implications}{Implications - The diagram chasing lemmas}} to draw the extramural morphisms of lemma \ref{Extramural} as follows. \begin{enumerate}% \item For a horizontal $\partial^{hor} : A \to B$ we draw the induced extramural map as \begin{displaymath} \itexarray{ &&& \Box \\ A && \nearrow & & B \\ & \Box } \,. \end{displaymath} \item For a vertical $\partial^{vert} : A \to B$ we draw the induced extramural map as \begin{displaymath} \itexarray{ & A \\ && \Box \\ & \swarrow \\ \Box \\ & B } \end{displaymath} \end{enumerate} This notation makes it manifest that in every [[double complex]] $X_{\bullet, \bullet}$ the extramural maps form long diagonal [[zigzags]] between donors and receptors \begin{displaymath} \itexarray{ && &&&&&&&& \udots \\ && &&&&& X_{k, l+1} && \nearrow \\ && &&&&&& \Box \\ && &&&&& \swarrow \\ && &&&& \Box \\ && &X_{k+1,l} && \nearrow & & X_{k,l} \\ && && \Box \\ && &\swarrow \\ && \Box \\ & \nearrow & & X_{k+1, l-1} \\ \udots } \,. \end{displaymath} But moreover, the intramural maps relate the donors and receptors in particular at the far end of these zigzags back to the actual homology groups of interest: \begin{displaymath} \itexarray{ && && && &&&&&&&& & \Box \\ && && && &&&&& && & \udots && B \\ && && && &&&&& X_{k, l+1} && \nearrow & && & \searrow \\ && && && &&&&& & \Box && && & & B^{hor} \\ && & & && &&&&& \swarrow \\ && & & && &&&& \Box \\ && & & && &X_{k+1,l} && \nearrow & & X_{k,l} \\ && & & && && \Box \\ && & & && &\swarrow \\ A^{hor} && & & && \Box \\ &\searrow & & & & \nearrow & & X_{k+1, l-1} \\ && A & & \udots \\ && & \Box } \,. \end{displaymath} This means that in order to get ``far diagonal identifications'' of homology groups in a double complex, all one needs is sufficient conditions that all the intramural and extramural maps in a ``long salamander'' like this are all [[isomorphisms]]. These turn out to be certain exactness conditions to be checked/imposed locally at each of the positions involved in a long salamander like this discussed in \emph{\hyperlink{IntraExtramuralIsomorphisms}{Intramural and extramural isomorphism}} below. All the long diagonal identifications of the standard [[diagram chasing lemmas]] follows by piecing together such long salamanders. This is discussed in the \emph{\hyperlink{Implications}{Implications}} below. \end{remark} \begin{remark} \label{OmittingIntramuralMaps}\hypertarget{OmittingIntramuralMaps}{} Morever, it is useful to combine the exramural notation of remark \ref{ExtramuralMapsAsDiagonals} with the evident diagonal notation for the intramural maps, lemma \ref{Intramural}, which allow extramural maps to ``enter at the receptor'' and ``exit at the donor'' of a given entry in the double complex. Together these two notations yield for every piece of a [[double complex]] of the form \begin{displaymath} \itexarray{ C \\ \downarrow^{\mathrlap{\partial^{vert}}} \\ A &\stackrel{\partial^{hor}}{\to}& B \\ && \downarrow^{\mathrlap{\partial^{vert}}} \\ && D } \end{displaymath} the \textbf{salamander}-shaped diagrams of mural maps \begin{displaymath} \itexarray{ & C \\ && \Box \\ & \swarrow \\ \Box &&& & \Box \\ & A && \nearrow & & B \\ && \Box & && & \Box \\ &&&&& \swarrow \\ &&&& \Box \\ &&&&& D } \,. \end{displaymath} These give the salamander lemma, prop. \ref{SalamanderLemma} below, its name. \end{remark} \begin{lemma} \label{}\hypertarget{}{} For $\partial^{hor} : A \to B$ any horizontal morphism in the double complex, the canonically induced morphism $A^{vert} \to B^{vert}$ on vertical homology is the composite of the above intramural and extramural maps: \begin{displaymath} A^{vert} \to A_{\Box} \to {}^\Box B \to B^{vert} \,. \end{displaymath} \end{lemma} \begin{proof} By the above, on representatives the first map is the identity, the second is $\partial^{hor}$ and the third again the identity. Hence the total map is given on representative by $\partial^{hor}$. \end{proof} \hypertarget{statement}{}\subsubsection*{{Statement}}\label{statement} \begin{prop} \label{SalamanderLemma}\hypertarget{SalamanderLemma}{} \textbf{(Salamander lemma)} If a [[diagram]] \begin{displaymath} \itexarray{ C \\ \downarrow^{\mathrlap{\partial^{vert}}} \\ A &\stackrel{\partial^{hor}}{\to}& B \\ && \downarrow^{\mathrlap{\partial^{vert}}} \\ && D } \end{displaymath} is part of a [[double complex]] in an [[abelian category]], then there is a \textbf{6-term [[long exact sequence]]} running horizontally in \begin{displaymath} \itexarray{ && {}^\Box A \\ & \nearrow && \searrow \\ C_\Box &&\to&& A^{hor} &\to& A_{\Box} &\to& {}^{\Box} B &\to& B^{hor} &&\to&& {}^{\Box}D \\ && && && && && & \searrow && \nearrow \\ && && && && && && B_{\Box} } \,, \end{displaymath} where all the elementary morphisms are the unique intramural maps from lemma \ref{Intramural} and the extramural maps from lemma \ref{Extramural} -- they are the morphisms of the \emph{salamander diagram} of remark \ref{OmittingIntramuralMaps}. Dually, if a diagram \begin{displaymath} \itexarray{ C &\stackrel{\partial^{hor}}{\to}& A \\ && \downarrow^{\mathrlap{\partial^{vert}}} \\ && B &\stackrel{\partial^{hor}}{\to}& D } \end{displaymath} is part of a double complex, then there is a 6-term [[long exact sequence]] running horizontally in \begin{displaymath} \itexarray{ && {}^\Box A \\ & \nearrow & & \searrow \\ C_\Box &&\to&& A^{vert} &\to& A_{\Box} &\to& {}^\Box B &\to& B^{vert} &&\to&& {}^\Box D \\ && && && && && & \searrow && \nearrow \\ && && && && && && B_\Box } \, \end{displaymath} \end{prop} This is (\hyperlink{Bergman}{Bergman, lemma 1.7}). \begin{proof} We spell out the proof of the first case. That of the second case is verbatim the same, only with the roles of $\partial^{hor}$ and $\partial^{vert}$ interchanged. By lemmas \ref{Intramural} and \ref{Extramural}, all the maps are given on representatives either by identities or by the [[differentials]] of the double complex themselves. Using this we may check exactness at each position explicitly: \begin{enumerate}% \item exactness at $C_\Box \to A^{hor} \to A_\Box$. An element $[a] \in A^{hor}$ is in the kernel of $A^{hor} \to A_{\Box}$ if there is $c$ and $d$ such that $a = \partial^{vert}c + \partial^{hor} d$. The $c$ that satisfy this equation hence satisfy $\partial^{hor}\partial^{vert} c = 0$, hence represent elements in $C_\Box$ and so the map $\partial^{hor} : C_\Box \to A^{hor}$ hits all of the kernel of $A^{hor}\to A_\Box$. Also it clearly hits at most this kernel. \item exactness at $A^{hor} \to A_\Box \to {}^\Box B$. Suppose $[a] \in A_\Box$ is in the kernel of $A_\Box \to {}^\Box B$. This means that there is $c$ such that $\partial^{hor}a = \partial^{hor} \partial^{vert}c$, hence that $\partial^{hor} (a-\partial^{vert} c) = 0$. But $[a] = [a - \partial^{vert}c] \in A_{\Box}$ and so this says that $[a]$ is the image under $A^{hor} \to A_{\Box}$ of the element represented there by $a - \partial^{vert} c$. Conversely, clearly everything in that image is in the kernel of $A_\Box \to {}^\Box B$. \item exactness at $A_\Box \to {}^\Box B \to B^{hor}$ An element $[b] \in {}^\Box B$ is in the kernel of ${}^\Box B \to B^{hor}$ if there is $a$ such that $\partial^{hor} a = b$. But since the representative $b$ of $[b] \in {}^\Box B$ has to satisfy in particular $\partial^{hor} b = 0$ it follows that $\partial^{hor} \partial^{vert}a = 0$ and hence that $a$ represents an alement in $A_{\Box}$, hence that $[b]$ is in the image of $A_{\Box} \to {}^{\Box }B$. Conversely, clearly every element in that image is in the kernel of ${}^\Box B \to B^{hor}$. \item exactness at ${}^\Box B \to B^{hor} \to {}^\Box D$ An element $[b] \in B^{hor}$ is in the kernel of $B^{hor} \to {}^\Box D$ if there is $a$ with $\partial^{vert} b = \partial^{vert} \partial^{hor} a$, hence $\partial^{vert}(b - \partial^{hor}a) = 0$ Since in addition $\partial^{hor}(b - \partial^{hor}a) = 0$ by assumption on $b$ and the chain complex property, this says that $[b] = [b + \partial^{hor} a]$ is in the image of ${}^\Box B \to B^{hor}$. Moreover, clearly everything in this image is in the kernel of $B^{hor} \to {}^\Box D$. \end{enumerate} \end{proof} \hypertarget{IntraExtramuralIsomorphisms}{}\subsubsection*{{Intramural and extramural isomorphisms}}\label{IntraExtramuralIsomorphisms} The following two statements are direct consequences (special cases) of the salamander lemma, prop. \ref{SalamanderLemma}. They give sufficient conditions for the intramural and the extramural maps, lemma \ref{Intramural} and lemma \ref{Extramural}, to be [[isomorphisms]]. All of the standard [[diagram chasing lemmas]] in [[homological algebra]] follow in a natural way from combining these \emph{intramural isomorphisms} with long [[zigzags]] of these \emph{extramural isomorphisms}. This is discussed below in \emph{\hyperlink{Implications}{The basic diagram chasing lemmas}}. \begin{cor} \label{ExtramuralIso}\hypertarget{ExtramuralIso}{} \textbf{(extramural isomorphisms)} If the rows of a double complex are exact at the domain and codomain of a horizontal morphism $\partial^{hor} : A \to B$, hence if $A^{hor} = 0$ and $B^{hor} = 0$, then the extramural map of lemma \ref{Extramural} \begin{displaymath} A_{\Box} \to {}^\Box B \end{displaymath} is an [[isomorphism]]. Similarly if for a vertical morphism $\partial : A \to B$ we have $A^{vert} \simeq 0$ and $B^{vert} \simeq 0$, the induced extramural map \begin{displaymath} \itexarray{ A_\Box \\ \downarrow \\ {}^\Box B } \end{displaymath} is an isomorphism. \end{cor} This appears as (\hyperlink{Bergman}{Bergman, cor. 2.1}). It is straightforward to check this directly on elements: \begin{proof} It is sufficient to show that under the given assumptions both the [[kernel]] and the [[cokernel]] of the given map are trivial. We discuss the horizontal case. The proof of the vertical case is verbatim the same, only with the roles of $\partial^{vert}$ and $\partial^{hor}$ exchanged. Suppose an element $[a] \in A_{Box}$ is in the kernel of $\partial^{hor} : A_{\Box} \to {}^\Box B$. By definition of ${}^\Box B$ this means that there is $c$ such that $\partial^{hor} \partial^{vert} c = \partial^{hor} a$, hence such that $\partial^{hor}(a- \partial^{vert} c) = 0$. By assumption that $A^{hor} = 0$ this means that there is $d$ such that $a - \partial^{vert} c = \partial^{hor} d$. But this means that $a \in im(\partial^{hor}) \oplus im(\partial^{vert})$ and hence $[a] = 0$ in $A_\Box$. Conversely, consider $[b] \in {}^\Box B$. This means that $\partial^{vert}b = 0$ and $\partial^{hor} b = 0$. By $B^{hor} = 0$ the second condition means that there is $a$ such that $b = \partial^{hor} a$. Moreover, this $a$ satisfies $\partial^{vert}\partial^{hor} a = \partial^{vert} b = 0$ by the first condition. Therefore $[a] \in A_{\Box}$ and $[b]$ is its image. \end{proof} Alternatively, this statement is a direct consequence of the salamander lemma already proven above: \begin{proof} Under the given assumptions the exact sequence of prop. \ref{SalamanderLemma} involves the exact sequence \begin{displaymath} 0 \to A_{\Box} \to {}^\Box B \to 0 \,. \end{displaymath} This being exact says that the map in the middle has vanishing [[kernel]] and [[cokernel]] and is hence an [[isomorphism]]. \end{proof} \begin{cor} \label{IntramuralIsos}\hypertarget{IntramuralIsos}{} \textbf{(intramural isomorphisms)} In each of the situations in a double complex shown below, if the direction \emph{perpendicular} to $\partial : A \to B$ or $\partial : B \to A$ is [[exact sequence|exact]] at $B$ as indicated in the following, then the two intramural maps from lemma \ref{Intramural}, shown in each case on the right, are [[isomorphisms]]: \begin{enumerate}% \item \begin{displaymath} \itexarray{ && \vdots && \vdots \\ && \downarrow && \downarrow \\ 0 &\to& A &\to& &\to& \cdots \\ && \downarrow^{\mathrlap{\partial}} && \downarrow \\ 0 &\to& B &\stackrel{ker = 0}{\to}& &\to& \cdots \\ && \downarrow && \downarrow \\ && \vdots && \vdots } \;\;\;\;\;\;\;\;\;\;\;\; \Rightarrow \;\;\;\;\;\;\;\;\;\;\;\; \itexarray{ {}^\Box A &\stackrel{\simeq}{\to}& A^{hor} \\ A^{vert} & \stackrel{\simeq}{\to}& A_{\Box} } \end{displaymath} \item \begin{displaymath} \itexarray{ && 0 && 0 \\ && \downarrow && \downarrow \\ \cdots &\to& A &\stackrel{\partial}{\to}& B &\to& \cdots \\ && \downarrow && \downarrow^{\mathrlap{ker = 0}} \\ \cdots &\to& &\to& &\to& \cdots \\ && \vdots && \vdots } \;\;\;\;\;\;\;\;\;\;\;\; \Rightarrow \;\;\;\;\;\;\;\;\;\;\;\; \itexarray{ {}^\Box A &\stackrel{\simeq}{\to}& A^{vert} \\ A^{hor} & \stackrel{\simeq}{\to}& A_{\Box} } \end{displaymath} \item \begin{displaymath} \itexarray{ && \vdots && \vdots \\ && \downarrow && \downarrow \\ \cdots &\to& &\stackrel{im = B}{\to}& B &\to& 0 \\ && \downarrow && \downarrow^{\mathrlap{\partial}} \\ \cdots &\to& &\to& A &\to& 0 \\ && \downarrow && \downarrow \\ && \vdots && \vdots } \;\;\;\;\;\;\;\;\;\;\;\; \Rightarrow \;\;\;\;\;\;\;\;\;\;\;\; \itexarray{ A^{hor} &\stackrel{\simeq}{\to}& A_{\Box} \\ {}^\Box A &\stackrel{\simeq}{\to}& A^{vert} } \end{displaymath} \item \begin{displaymath} \itexarray{ && \vdots && \vdots \\ \cdots &\to& &\to& &\to& \cdots \\ && \downarrow^{\mathrlap{im = B}} && \downarrow \\ \cdots &\to& B &\stackrel{\partial}{\to}& A &\to& \cdots \\ && \downarrow && \downarrow \\ && 0 && 0 } \;\;\;\;\;\;\;\;\;\;\;\; \Rightarrow \;\;\;\;\;\;\;\;\;\;\;\; \itexarray{ A^{vert} &\stackrel{\simeq}{\to}& A_{\Box} \\ {}^\Box A &\stackrel{\simeq}{\to}& A^{vert} } \end{displaymath} \end{enumerate} \end{cor} This appears as (\hyperlink{Bergman}{Bergman, cor. 2.2}). \begin{proof} We spell out the proof of the first item. The others work analogously. Applying cor. \ref{ExtramuralIso} to $0 \to B$ yields ${}^\Box B \simeq 0_\Box = 0$. Therefore the exact sequence of the Salamander lemma \ref{SalamanderLemma} corresponding to \begin{displaymath} \itexarray{ 0 \\ \downarrow \\ 0 &\to& A \\ && \downarrow \\ && B } \end{displaymath} ends with \begin{displaymath} \cdots \to 0 \to {}^\Box A\to A^{hor} \to 0 \,, \end{displaymath} which implies the first isomorphism. Analogously, the salamander exact sequence associated with \begin{displaymath} \itexarray{ 0 &\to& A \\ && \downarrow \\ && B &\to& 0 } \end{displaymath} begins as \begin{displaymath} 0 \to A^{vert} \to A_{\Box} \to 0 \to \cdots \,. \end{displaymath} which gives the second isomorphism. \end{proof} \hypertarget{Implications}{}\subsection*{{Implications: The basic diagram-chasing lemmas}}\label{Implications} We derive the basic [[diagram chasing lemmas - contents|diagram chasing lemmas]] from the salamander lemma, or in fact just from repeated application of the \hyperlink{IntraExtramuralIsomorphisms}{intramural/extramural isomorphisms}. \hypertarget{3x3Lemmas}{}\subsubsection*{{The $3 \times 3$ lemma}}\label{3x3Lemmas} We derive the [[sharp 3x3 lemma]] from the salamander lemma. \begin{prop} \label{ShortSharp3x3}\hypertarget{ShortSharp3x3}{} If in a [[diagram]] of the form \begin{displaymath} \itexarray{ && 0 && 0 && 0 \\ && \downarrow && \downarrow && \downarrow \\ 0 &\to& A' &\to& B' &\to& C' \\ && \downarrow && \downarrow && \downarrow \\ 0 &\to& A &\to& B &\to& C \\ && \downarrow && \downarrow && \downarrow \\ 0 &\to& A'' &\to& B'' &\to& C'' } \end{displaymath} all columns and the second and third row are [[exact sequence|exact]], then also the first row is exact. \end{prop} The following proof is that given in (\hyperlink{Bergman}{Bergman, lemma 2.3}). \begin{proof} First of all one notices that the diagram is a [[double complex]]: by column-exactness the first row includes as [[subobjects]] into the second, so the horizontal maps of the first row are restrictions of the [[differentials]] of the second and so at least the first row is a [[chain complex]]. We need to show that ${A'}^{hor}\simeq 0$ and ${B'}^{hor} \simeq 0$. First consider exactness at $A'$. The intramural iso, cor. \ref{IntramuralIsos} item 1, of \begin{displaymath} \itexarray{ A' \\ \downarrow^{\mathrlap{\partial}} \\ A &\stackrel{ker = 0}{\to}& B } \end{displaymath} is ${}^\Box A \simeq A^{hor}$, and the one of \begin{displaymath} \itexarray{ A' &\stackrel{\partial}{\to}& B' \\ && \downarrow^{\mathrlap{ker = 0}} \\ && B } \end{displaymath} according to cor. \ref{IntramuralIsos} item 2 is ${}^\Box A' \simeq {A'}^{vert} = 0$. Together this gives the desired exactness from the assumption that ${A'}^{vert} \simeq 0$ (since all the columns are exact by assumption): \begin{displaymath} {A'}^{hor} \simeq A'_\Box \simeq ({A'}^{vert} \simeq 0) \,. \end{displaymath} To apply an analogous argument for ${B'}^{hor}$, we combine this kind of identification with the [[zigzag]] of intramural maps along the diagonal \begin{displaymath} \itexarray{ &&&& {B'}^{hor} \\ &&&&& \Box \\ &&&& \swarrow \\ &&& \Box \\ A^{vert} && \nearrow && B \\ & \Box } \,, \end{displaymath} which are isos by cor \ref{ExtramuralIso}. These appear now in the middle of the following chain of isomorphisms \begin{displaymath} {B'}^{hor} \simeq \left({B'}_{\Box}\simeq {}^{\Box}B \simeq A_{\Box}\right) \simeq \left(A^{vert} \simeq 0\right)\,, \end{displaymath} where the first and the last are intramural isos obtained from cor. \ref{IntramuralIsos}. \end{proof} \begin{remark} \label{}\hypertarget{}{} From this argument it is clear that by directly analogous reasoning we obtain ``$n \times n$-lemmas'' for arbitrary $n$, see prop. \ref{nxn} below. \end{remark} In particular we have the following \emph{[[sharp 3x3 lemma]]}. \begin{prop} \label{Sharp3x3}\hypertarget{Sharp3x3}{} If in a [[diagram]] of the form \begin{displaymath} \itexarray{ && 0 && 0 && 0 \\ && \downarrow && \downarrow && \downarrow \\ 0 &\to& A' &\to& B' &\to& C' &\to& 0 \\ && \downarrow && \downarrow && \downarrow \\ 0 &\to& A &\to& B &\to& C &\to& 0 \\ && \downarrow && \downarrow && \downarrow \\ 0 &\to& A'' &\to& B'' &\to& C'' \\ && \downarrow \\ && 0 } \end{displaymath} all columns and the second and third row are [[exact sequence|exact]], then also the first row is exact. \end{prop} \begin{proof} Exactness in $A'$ and $B'$ is as in prop. \ref{ShortSharp3x3}. For exactness in $C'$ we now use the long [[zigzag]] of intramural isomorphisms, cor \ref{ExtramuralIso}. \begin{displaymath} \itexarray{ &&&&&&&& {C'}^{hor} \\ &&&&&&&& & \Box \\ &&&&&&&& \swarrow \\ &&&&&&& \Box \\ &&&& B && \nearrow && C \\ &&&&& \Box \\ &&&& \swarrow \\ &&& \Box \\ {A''}^{hor} && \nearrow && B'' \\ & \Box } \,, \end{displaymath} So ${C'}^{hor} \simeq C_{\Box}$ by the intramural iso, then $\dots \simeq A''_\Box$ by this zigzag of extramural isos, and this finally $\cdots \simeq {A''}^{hor} \simeq 0$ by another intramural iso and by assumption. \end{proof} \hypertarget{nxnLemma}{}\subsubsection*{{The $n \times n$ lemma}}\label{nxnLemma} The proofs of the $3 \times 3$-lemmas \hyperlink{3x3Lemmas}{above} via long diagonal zigzags of extramural isomorphism clearly generalize from double complexes of size $3 \times 3$ to those of arbitrary finite size. \begin{prop} \label{nxn}\hypertarget{nxn}{} If in a diagram of the form \begin{displaymath} \itexarray{ && 0 && 0 && 0 && 0 && \\ && \downarrow && \downarrow && \downarrow && \downarrow \\ 0 &\to& X_{n,n} &\to& X_{n-1,n} &\to& X_{n-2,n} &\to& X_{n-3,n} &\to& \cdots \\ && \downarrow && \downarrow && \downarrow && \downarrow \\ 0 &\to& X_{n,n-1} &\to& X_{n-1,n-1} &\to& X_{n-2,n-1} &\to& X_{n-3,n-1} &\to& \cdots \\ && \downarrow && \downarrow && \downarrow && \downarrow \\ 0 &\to& X_{n,n-2} &\to& X_{n-1,n-2} &\to& X_{n-2,n-2} &\to& X_{n-3,n-2} &\to& \cdots \\ && \downarrow && \downarrow && \downarrow && \downarrow \\ 0 &\to& X_{n,n-3} &\to& X_{n-1,n-3} &\to& X_{n-2,n-3} &\to& X_{n-3,n-3} &\to& \cdots \\ && \downarrow && \downarrow && \downarrow && \downarrow } \end{displaymath} all rows except possibly the first $X_{\bullet, n}$ as well as all columns except possibly the first $X_{n,\bullet}$ are [[exact sequence|exact]], then the homology groups of the first row equal those of the first column in that \begin{displaymath} \forall k : X_{k,0}^{hor} \simeq X_{0,k}^{vert} \,. \end{displaymath} \end{prop} This appears as (\hyperlink{Bergman}{Bergman, lemma 2.6}). \begin{proof} The proof proceeds in direct generalization of the proofs of the 3x3 lemma \hyperlink{3x3Lemmas}{above}: the isomorphism for each $k$ is given by the composite of two extramural isomorphism that identify the given homology group with a donor or receptor group, respectively, with a long zigzag of extramural isomorphisms. \end{proof} \hypertarget{FourLemma}{}\subsubsection*{{The four lemma}}\label{FourLemma} We prove the \emph{strong [[four lemma]]} from the salamander lemma. \begin{prop} \label{}\hypertarget{}{} Consider a [[commuting diagram]] in $\mathcal{A}$ of the form \begin{displaymath} \itexarray{ A &\to& B &\stackrel{\xi}{\to}& C &\to& D \\ \downarrow^{\mathrlap{\tau}} && \downarrow^{\mathrlap{f}} && \downarrow^{\mathrlap{g}} && \downarrow^{\mathrlap{\nu}} \\ A' &\to& B' &\stackrel{\eta}{\to}& C' &\to& D' } \end{displaymath} where \begin{enumerate}% \item the rows are [[exact sequences]], \item $\tau$ is an [[epimorphism]], \item $\nu$ is a [[monomorphism]]. \end{enumerate} Then \begin{enumerate}% \item $\xi(ker(f)) = ker(g)$ \item $im(f) = \eta^{-1}(im(g))$ \end{enumerate} and so in particular \begin{enumerate}% \item if $f$ is a [[monomorphism]] then so is $g$; \item if $g$ is an [[epimorphism]] then so is $f$. \end{enumerate} \end{prop} \begin{proof} By assumption on $\tau$ and $\nu$ we can complete the diagram to a [[double complex]] of the form \begin{displaymath} \itexarray{ && 0 && 0 \\ && \downarrow && \downarrow \\ && ker(f) &\stackrel{\xi|_{ker(f)}}{\to}& ker(g) &\to& 0 \\ && \downarrow && \downarrow && \downarrow \\ A &\to& B &\stackrel{\xi}{\to}& C &\to& D \\ \downarrow^{\mathrlap{\tau}} && \downarrow^{\mathrlap{f}} && \downarrow^{\mathrlap{g}} && \downarrow^{\mathrlap{\nu}} \\ A' &\to& B' &\stackrel{\eta}{\to}& C' &\to& D' \\ \downarrow && \downarrow && \downarrow \\ 0 &\to& B'/im(f) &\to& C'/im(g) \\ && \downarrow && \downarrow \\ && 0 && 0 } \,. \end{displaymath} such that \begin{enumerate}% \item all columns are [[exact sequence|exact]]; \item the middle two rows are exact. \end{enumerate} For the first statement it is now sufficient to show that $ker(g)^{hor} \simeq 0$, for that is immediately equivalent to $\xi(ker(f)) = ker(g)$. To see this we use the intramural isomorphism, cor. \ref{IntramuralIsos} item 2, to deduce that \begin{displaymath} ker(g)^{hor} \simeq ker(g)_{\Box} \,. \end{displaymath} Then the long [[zigzag]] of extramural isomorphisms, cor. \ref{ExtramuralIso}, shows that this is isomorphic to the ${}^\Box 0 \simeq 0$ in the bottom left corner of the diagram. The second statement follows dually: it is implied by $(B'/im(f))^{hor} \simeq 0$ for that directly implies that $\eta^{-1}(im(g))\simeq im(f)$. Here the intramural ismorphism to use is \begin{displaymath} (B'/im(f))^{hor} \simeq {}^{\Box}(B'/im(f)) \end{displaymath} and then the long sequence of zigzags of extramural ismoporphisms identifies this with the $0_\Box \simeq 0$ in the top right corner. \end{proof} \begin{remark} \label{}\hypertarget{}{} The [[four lemma]], in turn, directly implies what is known as the [[five lemma]]. \end{remark} \hypertarget{TheSnakeLemma}{}\subsubsection*{{The snake lemma}}\label{TheSnakeLemma} We discuss a proof of the [[snake lemma]] from the salamander lemma. \begin{prop} \label{Snake}\hypertarget{Snake}{} If in a commuting diagram of the form \begin{displaymath} \itexarray{ && X_1 &\to& X_2 &\to& X_3 &\to& 0 \\ && \downarrow^{\mathrlap{f}} && \downarrow^{\mathrlap{g}} && \downarrow^{\mathrlap{h}} \\ 0 &\to& Y_1 &\to& Y_2 &\to& Y_3 } \end{displaymath} both rows are [[exact sequence|exact]], then there is a [[long exact sequence]] \begin{displaymath} ker(f) \to ker(g) \to ker(h) \stackrel{\partial}{\to} coker(f) \to coker(g) \to coker(h) \end{displaymath} starting with the [[kernels]] of the three vertical maps and ending with their [[cokernels]] (with the middle morphism $\delta$ called the ``[[connecting homomorphism]]''). \end{prop} \begin{proof} Consider the completion of the given diagram to a [[double complex]]: \begin{displaymath} \itexarray{ && ker(f) &\to& ker(g) &\to& ker(h) &\to& 0 \\ && \downarrow && \downarrow && \downarrow && \downarrow \\ ker(l) &\to& X_1 &\stackrel{l}{\to}& X_2 &\stackrel{p}{\to}& X_3 &\to& 0 \\ \downarrow && \downarrow^{\mathrlap{f}} && \downarrow^{\mathrlap{g}} && \downarrow^{\mathrlap{h}} && \downarrow \\ 0 &\to& Y_1 &\stackrel{i}{\to}& Y_2 &\stackrel{r}{\to}& Y_3 &\to& coker(r) \\ \downarrow && \downarrow && \downarrow && \downarrow \\ 0 &\to& coker(f) &\to& coker(g) &\to& coker(h) && } \,. \end{displaymath} By assumption and construction, here all columns are exact and the rows are exact at the $X_i$ and at the $Y_i$. Now horizontal exactness at $ker(g)$ follows from the intramural isomorphism $ker(g)^{hor} \simeq ker(f)_{\Box}$, cor. \ref{IntramuralIsos}, combined with the [[zigzag]] of extramural isomorphisms, cor. \ref{ExtramuralIso}, \begin{displaymath} \itexarray{ &&&&&&& ker(g) \\ &&&&&&&& \Box \\ &&&&&&& \swarrow \\ & &&&&& \Box \\ & X_1 &&&& \nearrow & & X_2 \\ && \Box \\ & \swarrow \\ \Box \\ & Y_1 } \end{displaymath} which give $\cdots \simeq {}^\Box Y_1$ and then by another intramural iso $\cdots \simeq Y_1^{hor}$, and finally by assumption $\cdots \simeq 0$. The exactness as $coker(g)$ is shown analogously. Finally, to build the [[connecting homomorphism]] $ker(h) \to coker(f)$ is the same as giving an [[isomorphism]] from $coker(ker(g) \to ker(h)) \simeq ker(h)^{hor}$ to $ker(coker(f) \to coker(g)) = coker(f)^{hor}$. This is in turn given by the intramural isomorphisms $ker(h)^{hor} \simeq ker(h)_{\Box}$ and ${}^\Box coker(f) \simeq coker(f)^{hor}$, cor. \ref{IntramuralIsos} connected by the [[zigzag]] of extramural isomorphisms, cor. \ref{ExtramuralIso} \begin{displaymath} \itexarray{ &&&&&&&&& ker(h) \\ &&&&&&&&&& \Box \\ &&&&&&&&& \swarrow \\ &&&&& && & \Box \\ &&&&& X_2 && \nearrow && X_3 \\ &&&&&& \Box \\ &&&&& \swarrow \\ &&&& \Box \\ & Y_1 && \nearrow & & Y_2 \\ && \Box \\ & \swarrow \\ \Box \\ & coker(f) } \,. \end{displaymath} \end{proof} \begin{remark} \label{}\hypertarget{}{} From the [[snake lemma]] one obtains in turn the [[connecting homomorphism]], see there for details. \end{remark} \hypertarget{References}{}\subsection*{{References}}\label{References} The salamander lemma is due to \begin{itemize}% \item [[George Bergman]], \emph{On diagram-chasing in double complexes} (\href{http://arxiv.org/abs/1108.0958}{arXiv:1108.0958}) \end{itemize} based on an earlier unpublished preprint which was circulated (\href{http://sbseminar.files.wordpress.com/2007/11/diagramchasingbergman.pdf}{pdf}). An exposition of this is in \begin{itemize}% \item [[Anton Geraschenko]], \emph{The Salamander lemma} (\href{http://sbseminar.wordpress.com/2007/11/13/anton-geraschenko-the-salamander-lemma/}{blog post}) \end{itemize} A purely [[category theory|category-theoretic proof]] is in section 2 of \begin{itemize}% \item [[Jonathan Wise]], \emph{The Snake Lemma} (\href{http://math.stanford.edu/~jonathan/papers/snake.pdf}{pdf}) \end{itemize} [[!redirects Salamander lemma]] \end{document}