Snake lemma

From Wikipedia, the free encyclopedia
Jump to: navigation, search

The snake lemma is a tool used in mathematics, particularly homological algebra, to construct long exact sequences. The snake lemma is valid in every abelian category and is a crucial tool in homological algebra and its applications, for instance in algebraic topology. Homomorphisms constructed with its help are generally called connecting homomorphisms.


In an abelian category (such as the category of abelian groups or the category of vector spaces over a given field), consider a commutative diagram:

Snake lemma origin.svg

where the rows are exact sequences and 0 is the zero object.

Then there is an exact sequence relating the kernels and cokernels of a, b, and c:

where d is a homomorphism, known as the connecting homomorphism.

Furthermore, if the morphism f is a monomorphism, then so is the morphism, , and if g' is an epimorphism, then so is .

The cokernels here are:

Explanation of the name[edit]

To see where the snake lemma gets its name, expand the diagram above as follows:

Snake lemma complete.svg

and then note that the exact sequence that is the conclusion of the lemma can be drawn on this expanded diagram in the reversed "S" shape of a slithering snake.

Construction of the maps[edit]

The maps between the kernels and the maps between the cokernels are induced in a natural manner by the given (horizontal) maps because of the diagram's commutativity. The exactness of the two induced sequences follows in a straightforward way from the exactness of the rows of the original diagram. The important statement of the lemma is that a connecting homomorphism d exists which completes the exact sequence.

In the case of abelian groups or modules over some ring, the map d can be constructed as follows:

Pick an element x in ker c and view it as an element of C; since g is surjective, there exists y in B with g(y) = x. Because of the commutativity of the diagram, we have g'(b(y)) = c(g(y)) = c(x) = 0 (since x is in the kernel of c), and therefore b(y) is in the kernel of g' . Since the bottom row is exact, we find an element z in A' with f '(z) = b(y). z is unique by injectivity of f '. We then define d(x) = z + im(a). Now one has to check that d is well-defined (i.e., d(x) only depends on x and not on the choice of y), that it is a homomorphism, and that the resulting long sequence is indeed exact. One may routinely verify the exactness by diagram chasing (see the proof of Lemma 9.1 in [1]).

Once that is done, the theorem is proven for abelian groups or modules over a ring. For the general case, the argument may be rephrased in terms of properties of arrows and cancellation instead of elements. Alternatively, one may invoke Mitchell's embedding theorem.


In the applications, one often needs to show that long exact sequences are "natural" (in the sense of natural transformations). This follows from the naturality of the sequence produced by the snake lemma.


commutative diagram with exact rows

is a commutative diagram with exact rows, then the snake lemma can be applied twice, to the "front" and to the "back", yielding two long exact sequences; these are related by a commutative diagram of the form

commutative diagram with exact rows

In popular culture[edit]

See also[edit]


  1. ^ Lang, Serge (2005). Algebra (Rev. 3. ed., corr. printing. ed.). New York, NY: Springer. p. 159. ISBN 978-0-387-95385-4. 

External links[edit]