Schreiber Introduction to Homological Algebra


This page is a detailed introduction to homological algebra. Starting with motivation from basic homotopy theory, it introduces the basics of the category of chain complexes and then develops the concepts of derived categories and derived functors in homological algebra, with the main examples of Ext and Tor. The last chapter introduces and proves the fundamental theorems of the field.


For the application to spectral sequences see at Introduction to Spectral Sequences.

For background/outlook on abstract homotopy theory see at Introduction to Homotopy Theory.

For generalization to stable homotopy theory see at Introduction to Stable homotopy theory.



This text is a first introduction to homological algebra, assuming only very basic prerequisites. For instance we do recall in some detail basic definitions and constructions in the theory of abelian groups and modules, though of course a prior familiarity with these ingredients will be helpful. Also we use very little category theory, if it all. Where universal constructions do appear we spell them out explicitly in components and just mention their category-theoretic names for those readers who want to dig deeper. We do however freely use the words functor and commuting diagram. The reader unfamiliar with these elementary notions should click on these keywords and follow the hyperlink to the explanation right now.


The subject of homological algebra may be motivated by its archetypical application, which is the singular homology of a topological space XX. This example illustrates homological algebra as being concerned with the abelianization of what is called the homotopy theory of XX.

So we begin with some basic concepts in homotopy theory in section 1) Homotopy type of topological spaces. Then we consider the “abelianization” of this setup in 2) Simplicial and abelian homology.

Together this serves to motivate many constructions in homological algebra, such as centrally chain complexes, chain maps and homology, but also chain homotopies, mapping cones etc, which we discuss in detail in chapter II below. In the bulk we develop the general theory of homological algebra in chapter III and chapter IV. Finally we come back to a systematic discussion of the relation to homotopy theory at the end in chapter V. A section Outlook is appended for readers interested in the grand scheme of things.

We do use some basic category theory language in the following, but no actual category theory. The reader should know what a category is, what a functor is and what a commuting diagram is. These concepts are more elementary than any genuine concept in homological algebra to appear below and of general use. Where we do encounter universal constructions below we call them by their category-theoretic name but always spell them out in components explicity.

1) Homotopy type of topological spaces

This section reviews some basic notions in topology and homotopy theory. These will all serve as blueprints for corresponding notions in homological algebra.


A topological space is a set XX equipped with a set of subsets UXU \subset X, called open sets, which are closed under

  1. finite intersections
  2. arbitrary unions.

The Cartesian space n\mathbb{R}^n with its standard notion of open subsets given by unions of open balls D n nD^n \subset \mathbb{R}^n.


For YXY \hookrightarrow X an injection of sets and {U iX} iI\{U_i \subset X\}_{i \in I} a topology on XX, the subspace topology on YY is {U iYY} iI\{U_i \cap Y \subset Y\}_{i \in I}.


For nn \in \mathbb{N}, the topological n-simplex is, up to homeomorphism, the topological space whose underlying set is the subset

Δ n{x n+1| i=0 nx i=1andi.x i0} n+1 \Delta^n \coloneqq \{ \vec x \in \mathbb{R}^{n+1} | \sum_{i = 0 }^n x_i = 1 \; and \; \forall i . x_i \geq 0 \} \subset \mathbb{R}^{n+1}

of the Cartesian space n+1\mathbb{R}^{n+1}, and whose topology is the subspace topology induces from the canonical topology in n+1\mathbb{R}^{n+1}.


For n=0n = 0 this is the point, Δ 0=*\Delta^0 = *.

For n=1n = 1 this is the standard interval object Δ 1=[0,1]\Delta^1 = [0,1].

For n=2n = 2 this is the filled triangle.

For n=3n = 3 this is the filled tetrahedron.


A homomorphisms between topological spaces f:XYf : X \to Y is a continuous function:

a function f:XYf:X\to Y of the underlying sets such that the preimage of every open set of YY is an open set of XX.

Topological spaces with continuous maps between them form the category Top.


For nn \in \mathbb{N}, n1\n \geq 1 and 0kn0 \leq k \leq n, the kkth (n1)(n-1)-face (inclusion) of the topological nn-simplex, def. , is the subspace inclusion

δ k:Δ n1Δ n \delta_k : \Delta^{n-1} \hookrightarrow \Delta^n

induced under the coordinate presentation of def. , by the inclusion

n n+1 \mathbb{R}^n \hookrightarrow \mathbb{R}^{n+1}

which “omits” the kkth canonical coordinate:

(x 0,,x n1)(x 0,,x k1,0,x k,,x n1). (x_0, \cdots , x_{n-1}) \mapsto (x_0, \cdots, x_{k-1} , 0 , x_{k}, \cdots, x_{n-1}) \,.

The inclusion

δ 0:Δ 0Δ 1 \delta_0 : \Delta^0 \to \Delta^1

is the inclusion

{1}[0,1] \{1\} \hookrightarrow [0,1]

of the “right” end of the standard interval. The other inclusion

δ 1:Δ 0Δ 1 \delta_1 : \Delta^0 \to \Delta^1

is that of the “left” end {0}[0,1]\{0\} \hookrightarrow [0,1].


For nn \in \mathbb{N} and 0k<n0 \leq k \lt n the kkth degenerate (n)(n)-simplex (projection) is the surjective map

σ k:Δ nΔ n1 \sigma_k : \Delta^{n} \to \Delta^{n-1}

induced under the barycentric coordinates of def. under the surjection

n+1 n \mathbb{R}^{n+1} \to \mathbb{R}^n

which sends

(x 0,,x n)(x 0,,x k+x k+1,,x n). (x_0, \cdots, x_n) \mapsto (x_0, \cdots, x_{k} + x_{k+1}, \cdots, x_n) \,.

For XX \in Top and nn \in \mathbb{N}, a singular nn-simplex in XX is a continuous map

σ:Δ nX \sigma : \Delta^n \to X

from the topological nn-simplex, def. , to XX.


(SingX) nHom Top(Δ n,X) (Sing X)_n \coloneqq Hom_{Top}(\Delta^n , X)

for the set of singular nn-simplices of XX.

As nn varies, this forms the singular simplicial complex of XX. This is the topic of the next section, see def. def. .


For f,g:XYf,g : X \to Y two continuous functions between topological spaces, a left homotopy η:fg\eta : f \Rightarrow g is a commuting diagram in Top of the form

X (id,δ 0) f X×Δ 1 η Y (id,δ 1) g X. \array{ X \\ {}^{\mathllap{(id,\delta_0)}}\downarrow & \searrow^{\mathrlap{f}} \\ X \times \Delta^1 &\stackrel{\eta}{\to}& Y \\ {}^{\mathllap{(id,\delta_1)}}\uparrow & \nearrow_{\mathrlap{g}} \\ X } \,.

In words this says that a homotopy between two continuous functions ff and gg is a continuous 1-parameter deformation of ff to gg. That deformation parameter is the canonical coordinate along the interval [0,1][0,1], hence along the “length” of the cylinder X×Δ 1X \times \Delta^1.


Left homotopy is an equivalence relation on Hom Top(X,Y)Hom_{Top}(X,Y).

The fundamental invariants of a topological space in the context of homotopy theory are its homotopy groups. We first review the first homotopy group, called the fundamental group of XX:


For XX a topological space and x:*Xx : * \to X a point. A loop in XX based at xx is a continuous function

γ:Δ 1X \gamma : \Delta^1 \to X

from the topological 1-simplex, such that γ(0)=γ(1)=x\gamma(0) = \gamma(1) = x.

A based homotopy between two loops is a homotopy

Δ 1 (id,δ 0) f Δ 1×Δ 1 η X (id,δ 1) g Δ 1 \array{ \Delta^1 \\ \downarrow^{\mathrlap{(id,\delta_0)}} & \searrow^{\mathrlap{f}} \\ \Delta^1 \times \Delta^1 &\stackrel{\eta}{\to}& X \\ \uparrow^{\mathrlap{(id,\delta_1)}} & \nearrow_{\mathrlap{g}} \\ \Delta^1 }

such that η(0,)=η(1,)=x\eta(0,-) = \eta(1,-) = x.


This notion of based homotopy is an equivalence relation.


This is directly checked. It is also a special case of the general discussion at homotopy.


Given two loops γ 1,γ 2:Δ 1X\gamma_1, \gamma_2 : \Delta^1 \to X, define their concatenation to be the loop

γ 2γ 1:t{γ 1(2t) (0t1/2) γ 2(2(t1/2)) (1/2t1). \gamma_2 \cdot \gamma_1 : t \mapsto \left\{ \array{ \gamma_1(2 t) & ( 0 \leq t \leq 1/2 ) \\ \gamma_2(2 (t-1/2)) & (1/2 \leq t \leq 1) } \right. \,.

Concatenation of loops respects based homotopy classes where it becomes an associative, unital binary pairing with inverses, hence the product in a group.


For XX a topological space and xXx \in X a point, the set of based homotopy equivalence classes of based loops in XX equipped with the group structure from prop. is the fundamental group or first homotopy group of (X,x)(X,x), denoted

π 1(X,x)Grp. \pi_1(X,x) \in Grp \,.

The fundamental group of the point is trivial: π 1(*)=*\pi_1(*) = *.


The fundamental group of the circle is the group of integers π 1(S 1)\pi_1(S^1) \simeq \mathbb{Z}.

This construction has a fairly straightforward generalizations to “higher dimensional loops”.


Let XX be a topological space and x:*Xx : * \to X a point. For (1n)(1 \leq n) \in \mathbb{N}, the nnth homotopy group π n(X,x)\pi_n(X,x) of XX at xx is the group:

  • whose elements are left-homotopy equivalence classes of maps S n(X,x)S^n \to (X,x) in Top */Top^{*/};

  • composition is given by gluing at the base point (wedge sum) of representatives.

The 0th homotopy group is taken to be the set of connected components.


For n=1n = 1 this reproduces the definition of the fundamental group of def. .

The homotopy theory of topological spaces is all controled by the following notion. The abelianization of this notion, the notion of quasi-isomorphism discussed in def. below is central to homological algebra.


For X,YX, Y \in Top two topological spaces, a continuous function f:XYf : X \to Y between them is called a weak homotopy equivalence if

  1. ff induces an isomorphism of connected components

    π 0(f):π 0(X)π 0(Y) \pi_0(f) \colon \pi_0(X) \stackrel{\simeq}{\to} \pi_0(Y)

    in Set;

  2. for all points xXx \in X and for all (1n)(1 \leq n) \in \mathbb{N} ff induces an isomorphism on homotopy groups

    π n(f,x):π n(X,x)π n(Y,f(x)) \pi_n(f,x) \colon \pi_n(X,x) \stackrel{\simeq}{\to} \pi_n(Y,f(x))

    in Grp.

What is called homotopy theory is effectively the study of topological spaces not up to isomorphism (here: homeomorphism), but up to weak homotopy equivalence. Similarly, we will see that homological algebra is effectively the study of chain complexes not up to isomorphism, but up to quasi-isomorphism. But this is slightly more subtle than it may seem, in parts due to the following:


The existence of a weak homotopy equivalence from XX to YY is a reflexive and transitive relation on Top, but it is not a symmetric relation.


Reflexivity and transitivity are trivially checked. A counterexample to symmetry is the weak homotopy equivalence between the stanard circle and the pseudocircle.

But we can consider the genuine equivalence relation generated by weak homotopy equivalence:


We say two spaces XX and YY have the same (weak) homotopy type if they are equivalent under the equivalence relation generated by weak homotopy equivalence.


Equivalently this means that XX and YY have the same (weak) homotopy type if there exists a zigzag of weak homotopy equivalences

XY. X \leftarrow \to\leftarrow \dots \to Y \,.

One can understand the homotopy type of a topological space just in terms of its homotopy groups and how they act on each other. (This data is called a Postnikov tower of XX.) But computing and handling homotopy groups is in general hard, famously so already for the seemingly simple case of the homotopy groups of spheres. Therefore we now want to simplify the situation by passing to a “linear/abelian approximation”.

2) Simplicial and singular homology

This section discusses how the “abelianization” of a topological space by singular chains gives rise to the notion of chain complexes and their homology.

Above in def. we saw that to a topological space XX is associated a sequence of sets

(SingX) nHom Top(Δ n,X) (Sing X)_n \coloneqq Hom_{Top}(\Delta^n, X)

of singular simplices. Since the topological nn-simplices Δ n\Delta^n from def. sit inside each other by the face inclusions of def.

δ k:Δ n1Δ n \delta_k : \Delta^{n-1} \to \Delta^{n}

and project onto each other by the degeneracy maps, def.

σ k:Δ n+1Δ n \sigma_k : \Delta^{n+1} \to \Delta^n

we dually have functions

d kHom Top(δ k,X):(SingX) n(SingX) n1 d_k \coloneqq Hom_{Top}(\delta_k, X) : (Sing X)_n \to (Sing X)_{n-1}

that send each singular nn-simplex to its kk-face and functions

s kHom Top(σ k,X):(SingX) n(SingX) n+1 s_k \coloneqq Hom_{Top}(\sigma_k,X) : (Sing X)_{n} \to (Sing X)_{n+1}

that regard an nn-simplex as beign a degenerate (“thin”) (n+1)(n+1)-simplex. All these sets of simplices and face and degeneracy maps between them form the following structure.


A simplicial set SsSetS \in sSet is

  • for each nn \in \mathbb{N} a set S nSetS_n \in Set – the set of nn-simplices;

  • for each injective map δ i:n1¯n¯\delta_i : \overline{n-1} \to \overline{n} of totally ordered sets n¯{0<1<<n}\bar n \coloneqq \{ 0 \lt 1 \lt \cdots \lt n \}

    a function d i:S nS n1d_i : S_{n} \to S_{n-1} – the iith face map on nn-simplices;

  • for each surjective map σ i:n+1¯n¯\sigma_i : \overline{n+1} \to \bar n of totally ordered sets

    a function σ i:S nS n+1\sigma_i : S_{n} \to S_{n+1} – the iith degeneracy map on nn-simplices;

such that these functions satisfy the simplicial identities.


The simplicial identities satisfied by face and degeneracy maps as above are (whenever these maps are composable as indicated):

  1. d id j=d j1d i d_i \circ d_j = d_{j-1} \circ d_i if i<ji \lt j,

  2. s is j=s js i1s_i \circ s_j = s_j \circ s_{i-1} if i>ji \gt j.

  3. d is j={s j1d i ifi<j id ifi=jori=j+1 s jd i1 ifi>j+1d_i \circ s_j = \left\{ \array{ s_{j-1} \circ d_i & if \; i \lt j \\ id & if \; i = j \; or \; i = j+1 \\ s_j \circ d_{i-1} & if i \gt j+1 } \right.

It is straightforward to check by explicit inspection that the evident injection and restriction maps between the sets of singular simplices make (SingX) (Sing X)_\bullet into a simplicial set. We now briefly indicate a systematic way to see this using basic category theory, but the reader already satisfied with this statement should jump ahead to the abelianization of (SingX) n(Sing X)_n in prop. below.


The simplex category Δ\Delta is the full subcategory of Cat on the free categories of the form

[0] {0} [1] {01} [2] {012} . \begin{aligned} [0] & \coloneqq \{0\} \\ [1] & \coloneqq \{0 \to 1\} \\ [2] & \coloneqq \{0 \to 1 \to 2\} \\ \vdots \end{aligned} \,.

This is called the “simplex category” because we are to think of the object [n][n] as being the “spine” of the nn-simplex. For instance for n=2n = 2 we think of 0120 \to 1 \to 2 as the “spine” of the triangle. This becomes clear if we don’t just draw the morphisms that generate the category [n][n], but draw also all their composites. For instance for n=2n = 2 we have_

[2]={ 1 0 2}. [2] = \left\{ \array{ && 1 \\ & \nearrow && \searrow \\ 0 &&\to&& 2 } \right\} \,.

A functor

S:Δ opSet S : \Delta^{op} \to Set

from the opposite category of the simplex category to the category Set of sets is canonically identified with a simplicial set, def. .


One checks by inspection that the simplicial identities characterize precisely the behaviour of the morphisms in Δ op([n],[n+1])\Delta^{op}([n],[n+1]) and Δ op([n],[n1])\Delta^{op}([n],[n-1]).

This makes the following evident:


The topological simplices from def. arrange into a cosimplicial object in Top, namely a functor

Δ :ΔTop. \Delta^\bullet : \Delta \to Top \,.

With this now the structure of a simplicial set on the singular simplices (SingX) (Sing X)_\bullet, def. , is manifest: it is just the nerve of XX with respect to Δ \Delta^\bullet, namely:


For XX a topological space its simplicial set of singular simplicies (often called the singular simplicial complex)

(SingX) :Δ opSet (Sing X)_\bullet : \Delta^{op} \to Set

is given by composition of the functor from example with the hom functor of Top:

(SingX):[n]Hom Top(Δ n,X). (Sing X) : [n] \mapsto Hom_{Top}( \Delta^n , X ) \,.
Remark (aside)

It turns out that homotopy type of the topological space XX is entirely captured by its singular simplicial complex SingXSing X (this is the content of the homotopy hypothesis-theorem).

Now we abelianize the singular simplicial complex (SingX) (Sing X)_\bullet in order to make it simpler and hence more tractable.


A formal linear combination of elements of a set SS \in Set is a function

a:S a : S \to \mathbb{Z}

such that only finitely many of the values a sa_s \in \mathbb{Z} are non-zero.

Identifying an element sSs \in S with the function SS \to \mathbb{Z}, which sends ss to 11 \in \mathbb{Z} and all other elements to 0, this is written as

a= sSa ss. a = \sum_{s \in S} a_s \cdot s \,.

In this expression one calls a sa_s \in \mathbb{Z} the coefficient of ss in the formal linear combination.


For SS \in Set, the group of formal linear combinations [S]\mathbb{Z}[S] is the group whose underlying set is that of formal linear combinations, def. , and whose group operation is the pointwise addition in \mathbb{Z}:

( sSa ss)+( sSb ss)= sS(a s+b s)s. (\sum_{s \in S} a_s \cdot s) + (\sum_{s \in S} b_s \cdot s) = \sum_{s \in S} (a_s + b_s) \cdot s \,.

For the present purpose the following statement may be regarded as just introducing different terminology for the group of formal linear combinations:


The group [S]\mathbb{Z}[S] is the free abelian group on SS.


For S S_\bullet a simplicial set, def. , the free abelian group [S n]\mathbb{Z}[S_n] is called the group of (simplicial) nn-chains on SS.


For XX a topological space, an nn-chain on the singular simplicial complex SingXSing X is called a singular nn-chain on XX.

This construction makes the sets of simplices into abelian groups. But this allows to formally add the different face maps in the simplicial set to one single boundary map:


For SS a simplicial set, its alternating face map differential in degree nn is the linear map

:[S n][S n1] \partial : \mathbb{Z}[S_n] \to \mathbb{Z}[S_{n-1}]

defined on basis elements σS n\sigma \in S_n to be the alternating sum of the simplicial face maps:

(1)σ k=0 n(1) kd kσ. \partial \sigma \coloneqq \sum_{k = 0}^n (-1)^k d_k \sigma \,.

The simplicial identity, def. part (1), implies that the alternating sum boundary map of def. squares to 0:

=0. \partial \circ \partial = 0 \,.

By linearity, it is sufficient to check this on a basis element σS n\sigma \in S_n. There we compute as follows:

σ =( j=0 n(1) jd jσ) = j=0 n i=0 n1(1) i+jd id jσ = 0i<jn(1) i+jd id jσ+ 0ji<n(1) i+jd id jσ = 0i<jn(1) i+jd j1d iσ+ 0ji<n(1) i+jd id jσ = 0ij<n(1) i+jd jd iσ+ 0ji<n(1) i+jd id jσ =0. \begin{aligned} \partial \partial \sigma & = \partial \left( \sum_{j = 0}^n (-1)^j d_j \sigma \right) \\ & = \sum_{j=0}^n \sum_{i = 0}^{n-1} (-1)^{i+j} d_i d_j \sigma \\ & = \sum_{0 \leq i \lt j \leq n} (-1)^{i+j} d_i d_j \sigma + \sum_{0 \leq j \leq i \lt n} (-1)^{i + j} d_i d_j \sigma \\ & = \sum_{0 \leq i \lt j \leq n} (-1)^{i+j} d_{j-1} d_i \sigma + \sum_{0 \leq j \leq i \lt n} (-1)^{i + j} d_i d_j \sigma \\ & = - \sum_{0 \leq i \leq j \lt n} (-1)^{i+j} d_{j} d_i \sigma + \sum_{0 \leq j \leq i \lt n} (-1)^{i + j} d_i d_j \sigma \\ & = 0 \end{aligned} \,.


  1. the first equality is (1);

  2. the second is (1) together with the linearity of dd;

  3. the third is obtained by decomposing the sum into two summands;

  4. the fourth finally uses the simplicial identity def. (1) in the first summand;

  5. the fifth relabels the summation index jj by j+1j +1;

  6. the last one observes that the resulting two summands are negatives of each other.


Let XX be a topological space. Let σ 1:Δ 1X\sigma^1 : \Delta^1 \to X be a singular 1-simplex, regarded as a 1-chain

σ 1C 1(X). \sigma^1 \in C_1(X) \,.

Then its boundary σH 0(X)\partial \sigma \in H_0(X) is

σ 1=σ(0)σ(1) \partial \sigma^1 = \sigma(0) -\sigma(1)

or graphically (using notation as for orientals)

(σ(0)σσ(1))=(σ(0))(σ(1)). \partial \left( \sigma(0) \stackrel{\sigma}{\to} \sigma(1) \right) = (\sigma(0)) - (\sigma(1)) \,.

In particular σ\sigma is a 1-cycle precisely if σ(0)=σ(1)\sigma(0) = \sigma(1), hence precisely if σ\sigma is a loop.

Let σ 2:Δ 2X\sigma^2 : \Delta^2 \to X be a singular 2-chain. The boundary is

( σ(1) σ(0,1) σ σ 1,2 σ(0) σ(0,2) σ(2))=( σ(1) σ(0,1) σ(0))( σ(0) σ(0,2) σ(2))+( σ(1) σ 1,2 σ(2)). \partial \left( \array{ && \sigma(1) \\ & {}^{\mathllap{\sigma(0,1)}}\nearrow & \Downarrow^{\mathrlap{\sigma}}& \searrow^{\mathrlap{\sigma^{1,2}}} \\ \sigma(0) &&\underset{\sigma(0,2)}{\to}&& \sigma(2) } \right) = \left( \array{ && \sigma(1) \\ & {}^{\mathllap{\sigma(0,1)}}\nearrow & & \\ \sigma(0) } \right) - \left( \array{ && \\ & & & \\ \sigma(0) &\underset{\sigma(0,2)}{\to}& \sigma(2) } \right) + \left( \array{ && \sigma(1) \\ & & & \searrow^{\mathrlap{\sigma^{1,2}}} \\ && && \sigma(2) } \right) \,.

Hence the boundary of the boundary is:

σ =(( σ(1) σ(0,1) σ(0))( σ(0) σ(0,2) σ(2))+( σ(1) σ 1,2 σ(2))) =( σ(0))( σ(1) )( σ(0) )+( σ(2))+( σ(1) )( σ(2)) =0 \begin{aligned} \partial \partial \sigma &= \partial \left( \left( \array{ && \sigma(1) \\ & {}^{\mathllap{\sigma(0,1)}}\nearrow & & \\ \sigma(0) } \right) - \left( \array{ && \\ & & & \\ \sigma(0) &\underset{\sigma(0,2)}{\to}& \sigma(2) } \right) + \left( \array{ && \sigma(1) \\ & & & \searrow^{\mathrlap{\sigma^{1,2}}} \\ && && \sigma(2) } \right) \right) \\ & = \left( \array{ && \\ & & & \\ \sigma(0) } \right) - \left( \array{ && \sigma(1) \\ & & & \\ } \right) - \left( \array{ && \\ & & & \\ \sigma(0) && } \right) + \left( \array{ && \\ & & & \\ && \sigma(2) } \right) + \left( \array{ && \sigma(1) \\ & & & \\ && && } \right) - \left( \array{ && \\ & & & \\ && && \sigma(2) } \right) \\ & = 0 \end{aligned}

For SS a simplicial set, we call the collection

  1. of abelian groups of chains C n(S)[S n]C_n(S) \coloneqq \mathbb{Z}[S_n], prop. ;

  2. and boundary homomorphisms n:C n+1(S)C n(X)\partial_n : C_{n+1}(S) \to C_n(X), def.

(for all nn \in \mathbb{N}) the alternating face map chain complex of SS:

C (S)=[ 2[S 2] 1[S 1] 0[S 0]]. C_\bullet(S) = [ \cdots \stackrel{\partial_2}{\to} \mathbb{Z}[S_2] \stackrel{\partial_1}{\to} \mathbb{Z}[S_1] \stackrel{\partial_0}{\to} \mathbb{Z}[S_0] ] \,.

Specifically for S=SingXS = Sing X we call this the singular chain complex of XX.

This motivates the general definition:


A chain complex of abelian groups C C_\bullet is a collection {C nAb} n\{C_n \in Ab\}_{n} of abelian groups together with group homomorphisms { n:C n+1C n}\{\partial_n : C_{n+1} \to C_n\} such that =0\partial \circ \partial = 0.

We turn to this definition in more detail in the next section. The thrust of this construction lies in the fact that the chain complex C (SingX)C_\bullet(Sing X) remembers the abelianized fundamental group of XX, as well as aspects of the higher homotopy groups: in its chain homology.


For C (S)C_\bullet(S) a chain complex as in def. , and for nn \in \mathbb{N} we say

  • an nn-chain of the form σC(S) n\partial \sigma \in C(S)_n is an nn-boundary;

  • a chain σC n(S)\sigma \in C_n(S) is an nn-cycle if σ=0\partial \sigma = 0

    (every 0-chain is a 0-cycle).

By linearity of \partial the boundaries and cycles form abelian sub-groups of the group of chains, and we write

B nim( n)C n(S) B_n \coloneqq im(\partial_n) \subset C_n(S)

for the group of nn-boundaries, and

Z nker( n)C (S) Z_n \coloneqq ker(\partial_n) \subset C_(S)

for the group of nn-cycles.


This means that a singular chain is a cycle if the formal linear combination of the oriented boundaries of all its constituent singular simplices sums to 0.


More generally, for RR any unital ring one can form the degreewise free module R[SingX]R[Sing X] over RR. The corresponding homology is the singular homology with coefficients in RR, denoted H n(X,R)H_n(X,R). This generality we come to below in the next section.


For C (S)C_\bullet(S) a chain complex as in def. and for nn \in \mathbb{N}, the degree-nn chain homology group H n(C(S))AbH_n(C(S)) \in Ab is the quotient group

H n(C(S))ker( n1)im( n)=Z nB n H_n(C(S)) \coloneqq \frac{ker(\partial_{n-1})}{im(\partial_n)} = \frac{Z_n}{B_n}

of the nn-cycles by the nn-boundaries – where for n=0n = 0 we declare that 10\partial_{-1} \coloneqq 0 and hence Z 0C 0Z_0 \coloneqq C_0.

Specifically, the chain homology of C (SingX)C_\bullet(Sing X) is called the singular homology of the topological space XX.

One usually writes H n(X,)H_n(X, \mathbb{Z}) or just H n(X)H_n(X) for the singular homology of XX in degree nn.


So H 0(C (S))=C 0(S)/im( 0)H_0(C_\bullet(S)) = C_0(S)/im(\partial_0).


For XX a topological space we have that the degree-0 singular homology

H 0(X)[π 0(X)] H_0(X) \simeq \mathbb{Z}[\pi_0(X)]

is the free abelian group on the set of connected components of XX.


For XX a compact connected, orientable manifold of dimension nn we have

H n(X). H_n(X) \simeq \mathbb{Z} \,.

The precise choice of this isomorphism is a choice of orientation on XX. With a choice of orientation, the element 11 \in \mathbb{Z} under this identification is called the fundamental class

[X]H n(X) [X] \in H_n(X)

of the manifold XX.


Given a continuous map f:XYf : X \to Y between topological spaces, and given nn \in \mathbb{N}, every singular nn-simplex σ:Δ nX\sigma : \Delta^n \to X in XX is sent to a singular nn-simplex

f *σ:Δ nσXfY f_* \sigma : \Delta^n \stackrel{\sigma}{\to} X \stackrel{f}{\to} Y

in YY. This is called the push-forward of σ\sigma along ff. Accordingly there is a push-forward map on groups of singular chains

(f *) n:C n(X)C n(Y). (f_*)_n : C_n(X) \to C_n(Y) \,.

These push-forward maps make all diagrams of the form

C n+1(X) (f *) n+1 C n+1(Y) n X n Y C n(X) (f *) n C n(Y) \array{ C_{n+1}(X) &\stackrel{(f_*)_{n+1}}{\to}& C_{n+1}(Y) \\ \downarrow^{\mathrlap{\partial^X_n}} && \downarrow^{\mathrlap{\partial^Y_n}} \\ C_n(X) &\stackrel{(f_*)_n}{\to}& C_n(Y) }



It is in fact evident that push-forward yields a functor of singular simplicial complexes

f *:SingXSingY. f_* : Sing X \to Sing Y \,.

From this the statement follows since []:sSetsAb\mathbb{Z}[-] : sSet \to sAb is a functor.

Therefore we have an “abelianized analog” of the notion of topological space:


For C ,D C_\bullet, D_\bullet two chain complexes, def. , a homomorphism between them – called a chain map f :C D f_\bullet : C_\bullet \to D_\bullet – is for each nn \in \mathbb{N} a homomorphism f n:C nD nf_n : C_n \to D_n of abelian groups, such that f n n C= n Df n+1f_n \circ \partial^C_n = \partial^D_n \circ f_{n+1}:

n+1 C n+1 D C n+1 f n+1 D n+1 n C n D C n f n D n n1 C n1 D . \array{ \vdots && \vdots \\ \downarrow^{\mathrlap{\partial^C_{n+1}}} && \downarrow^{\mathrlap{\partial^D_{n+1}}} \\ C_{n+1} &\stackrel{f_{n+1}}{\to}& D_{n+1} \\ \downarrow^{\mathrlap{\partial^C_n}} && \downarrow^{\mathrlap{\partial^D_n}} \\ C_{n} &\stackrel{f_{n}}{\to}& D_{n} \\ \downarrow^{\mathrlap{\partial^C_{n-1}}} && \downarrow^{\mathrlap{\partial^D_{n-1}}} \\ \vdots && \vdots } \,.

Composition of such chain maps is given by degreewise composition of their components. Clearly, chain complexes with chain maps between them hence form a category – the category of chain complexes in abelian groups, – which we write

Ch (Ab))Cat. Ch_\bullet(Ab)) \in Cat \,.

Accordingly we have:


Sending a topological space to its singular chain complex C (X)C_\bullet(X), def. , and a continuous map to its push-forward chain map, prop. , constitutes a functor

C ():TopCh (Ab) C_\bullet(-) : Top \to Ch_\bullet(Ab)

from the category Top of topological spaces and continuous maps, to the category of chain complexes.

In particular for each nn \in \mathbb{N} singular homology extends to a functor

H n():TopAb. H_n(-) : Top \to Ab \,.

We close this section by stating the basic properties of singular homology, which make precise the sense in which it is an abelian approximation to the homotopy type of XX. The proof of these statements requires some of the tools of homological algebra that we develop in the later chapters, as well as some tools in algebraic topology.


If f:XYf : X \to Y is a continuous map between topological spaces which is a weak homotopy equivalence, def, , then the induced morphism on singular homology groups

H n(f):H n(X)H n(Y) H_n(f) : H_n(X) \to H_n(Y)

is an isomorphism.

(A proof (via CW approximations) is spelled out for instance in (Hatcher, prop. 4.21)).

We therefore also have an “abelian analog” of weak homotopy equivalences:


For C ,D C_\bullet, D_\bullet two chain complexes, a chain map f :C D f_\bullet : C_\bullet \to D_\bullet is called a quasi-isomorphism if it induces isomorphisms on all homology groups:

f n:H n(C)H n(D). f_n : H_n(C) \stackrel{\simeq}{\to} H_n(D) \,.

In summary: chain homology sends weak homotopy equivalences to quasi-isomorphisms. Quasi-isomorphisms of chain complexes are the abelianized analog of weak homotopy equivalences of topological spaces.

In particular we have the analog of prop. :


The relation “There exists a quasi-isomorphism from C C_\bullet to D D_\bullet.” is a reflexive and transitive relation, but it is not a symmetric relation.


Reflexivity and transitivity are evident. An explicit counter-example showing the non-symmetry is the chain map

0 2 0 0 0 /2 0 \array{ \cdots &\to& 0 &\to& \mathbb{Z} &\stackrel{\cdot 2}{\to}& \mathbb{Z} &\to& 0 &\to& \cdots \\ \cdots && \downarrow && \downarrow && \downarrow && \downarrow && \cdots \\ \cdots &\to& 0 &\to& 0 &\to& \mathbb{Z}/2\mathbb{Z} &\to& 0 &\to& \cdots }

from the chain complex concentrated on the morphism of multiplication by 2 on integers, to the chain complex concentrated on the cyclic group of order 2.

This clearly induces an isomorphism on all homology groups. But there is not even a non-zero chain map in the other direction, since there is no non-zero group homomorphism /2\mathbb{Z}/2\mathbb{Z} \to \mathbb{Z}.

Accordingly, as for homotopy types of topological spaces, in homological algebra one regards two chain complexes C C_\bullet, D D_\bullet as essentially equivalent – “of the same weak homology type” – if there is a zigzag of quasi-isomorphisms

C D C_\bullet \leftarrow \to \leftarrow \cdots \to D_\bullet

between them. This is made precise by the central notion of the derived category of chain complexes. We turn to this below in section Derived categories and derived functors.

But quasi-isomorphisms are a little coarser than weak homotopy equivalences. The singular chain functor C ()C_\bullet(-) forgets some of the information in the homotopy types of topological spaces. The following series of statements characterizes to some extent what exactly is lost when passing to singular homology, and which information is in fact retained.

First we need a comparison map:


(Hurewicz homomorphism)

For (X,x)(X,x) a pointed topological space, the Hurewicz homomorphism is the function

Φ:π k(X,x)H k(X) \Phi : \pi_k(X,x) \to H_k(X)

from the kkth homotopy group of (X,x)(X,x) to the kkth singular homology group defined by sending

Φ:(f:S kX) f *[S k] \Phi : (f : S^k \to X)_{\sim} \mapsto f_*[S_k]

a representative singular kk-sphere ff in XX to the push-forward along ff of the fundamental class [S k]H k(S k)[S_k] \in H_k(S^k), example .


For XX a topological space the Hurewicz homomorphism in degree 0 exhibits an isomorphism between the free abelian group [π 0(X)]\mathbb{Z}[\pi_0(X)] on the set of path connected components of XX and the degree-0 singular homlogy:

[π 0(X)]H 0(X). \mathbb{Z}[\pi_0(X)] \simeq H_0(X) \,.

Since a homotopy group in positive degree depends on the homotopy type of the connected component of the base point, while the singular homology does not depend on a basepoint, it is interesting to compare these groups only for the case that XX is connected.


For XX a path-connected topological space the Hurewicz homomorphism in degree 1

Φ:π 1(X,x)H 1(X) \Phi : \pi_1(X,x) \to H_1(X)

is surjective. Its kernel is the commutator subgroup of π 1(X,x)\pi_1(X,x). Therefore it induces an isomorphism from the abelianization π 1(X,x) abπ 1(X,x)/[π 1,π 1]\pi_1(X,x)^{ab} \coloneqq \pi_1(X,x)/[\pi_1,\pi_1]:

π 1(X,x) abH 1(X). \pi_1(X,x)^{ab} \stackrel{\simeq}{\to} H_1(X) \,.

For higher connected XX we have the


If XX is (n-1)-connected for n2n \geq 2 then

Φ:π n(X,x)H n(X) \Phi : \pi_n(X,x) \to H_n(X)

is an isomorphism.

This is known as the Hurewicz theorem.

This gives plenty of motivation for studying

  1. chain complexes

  2. chain homology

  3. quasi-isomorphism

of chain complexes. This is essentially what homological algebra is about. In the next section we start to develop these notions more systematically.

Chain complexes

Chain complexes of modules with chain maps between them form a category, the category of chain complexes, which is where all of homological algebra takes place. We first construct this category and discuss its most fundamental properties in 3) Categories of chain complexes . Then we consider more interesting properties of this category: the most elementary and still already profoundly useful is the phenomenon of exact sequences and specifically of homology exact sequences, discussed in 4) Homology exact sequences. In 5) Homotopy fiber sequences and mapping cones we explain how these are the shadow under the homology functor of homotopy fiber sequences of chain complexes constructed using mapping cones. The construction of the connecting homomorphism obtained this way may be understood as a special case of the basic diagram chasing lemmas in double complexes, such as the snake lemma, which we discuss in 6) Double complexes and the diagram chasing lemmas.

This serves to provide a rich set of tools that is needed when in the next chaper Abelian homotopy theory we turn to the actual category of interest, which is not quite that of chain complexes and chain maps, but the localization of this at the quasi-isomorphisms: the derived category.

3) Categories of chain complexes

In def. we had encountered complexes of singular chains, of formal linear combinations of simplices in a topological space. Here we discuss such chain complexes in their own right in a bit more depth.

Also, above a singular chain was taken to be a formal sum of singular simplices with coefficients in the abelian group of integers \mathbb{Z}. It is just as straightforward, natural and useful to allow the coefficients to be an arbitrary abelian group AA, or in fact to be a module over a ring. We have to postpone proper discussion of motivating examples for this step below in chapter III and chapter IV, but the reader eager to see a deeper motivation right now might look at Modules – As generalized vector bundles. See also the archetypical example below.

So we start by developing a bit of the theory of abelian groups, rings and modules.


Write Ab \in Cat for the category of abelian groups and group homomorphisms between them:

  • an object is a group AA such that for all elements a 1,a 2Aa_1, a_2 \in A we have that the group product of a 1a_1 with a 2a_2 is the same as that of a 2a_2 with a 1a_1, which we write a 1+a 2Aa_1 + a_2 \in A (and the neutral element is denoted by 0A0 \in A);

  • a morphism ϕ:A 1A 2\phi : A_1 \to A_2 is a group homomorphism, hence a function of the underlying sets, such that for all elements as above ϕ(a 1+a 2)=ϕ(a 1)+ϕ(a 2)\phi(a_1 + a_2) = \phi(a_1) + \phi(a_2).

Among the basic constructions that produce new abelian groups from given ones are the tensor product of abelian groups and the direct sum of abelian groups. These we discuss now.


For AA, BB and CC abelian groups and A×BA \times B the cartesian product group, a bilinear map

f:A×BC f : A \times B \to C

is a function of the underlying sets which is linear – hence is a group homomorphism – in each argument separately.


In terms of elements this means that a bilinear map f:A×BCf : A \times B \to C is a function of sets that satisfies for all elements a 1,a 2Aa_1, a_2 \in A and b 1,b 2Bb_1, b_2 \in B the two relations

f(a 1+a 2,b 1)=f(a 1,b 1)+f(a 2,b 1) f(a_1 + a_2, b_1) = f(a_1,b_1) + f(a_2, b_1)


f(a 1,b 1+b 2)=f(a 1,b 1)+f(a 1,b 2). f(a_1, b_1 + b_2) = f(a_1, b_1) + f(a_1, b_2) \,.

Notice that this is not a group homomorphism out of the product group. The product group A×BA \times B is the group whose elements are pairs (a,b)(a,b) with aAa \in A and bBb \in B, and whose group operation is

(a 1,b 1)+(a 2,b 2)=(a 1+a 2,b 1+b 2). (a_1, b_1) + (a_2, b_2) = (a_1 + a_2 \;,\; b_1 + b_2) \,.

A group homomorphism

ϕ:A×BC \phi : A \times B \to C

hence satisfies

ϕ(a 1+a 2,b 1+b 2)=ϕ(a 1,b 1)+ϕ(a 2,b 2) \phi( a_1+a_2, b_1 + b_2 ) = \phi(a_1,b_1) + \phi(a_2, b_2)

and hence in particular

ϕ(a 1+a 2,b 1)=ϕ(a 1,b 1)+ϕ(a 2,0) \phi( a_1+a_2, b_1 ) = \phi(a_1,b_1) + \phi(a_2, 0)
ϕ(a 1,b 1+b 2)=ϕ(a 1,b 1)+ϕ(0,b 2) \phi( a_1, b_1 + b_2 ) = \phi(a_1,b_1) + \phi(0, b_2)

which is (in general) different from the behaviour of a bilinear map.


For A,BA, B two abelian groups, their tensor product of abelian groups is the abelian group ABA \otimes B which is the quotient group of the free group on the product (direct sum) A×BA \times B by the relations

  • (a 1,b)+(a 2,b)(a 1+a 2,b)(a_1,b)+(a_2,b)\sim (a_1+a_2,b)

  • (a,b 1)+(a,b 2)(a,b 1+b 2)(a,b_1)+(a,b_2)\sim (a,b_1+b_2)

for all a,a 1,a 2Aa, a_1, a_2 \in A and b,b 1,b 2Bb, b_1, b_2 \in B.

In words: it is the group whose elements are presented by pairs of elements in AA and BB and such that the group operation for one argument fixed is that of the other group in the other argument.


There is a canonical function of the underlying sets

A×BAB. A \times B \stackrel{\otimes}{\to} A \otimes B \,.

On elements this sends (a,b)(a,b) to the equivalence class that it represents under the above equivalence relations.


A function of underlying sets f:A×BCf : A \times B \to C is a bilinear function precisely if it factors by the morphism of through a group homomorphism ϕ:ABC\phi : A \otimes B \to C out of the tensor product:

f:A×BABϕC. f : A \times B \stackrel{\otimes}{\to} A \otimes B \stackrel{\phi}{\to} C \,.

Equipped with the tensor product \otimes of def. Ab becomes a monoidal category.

The unit object in (Ab,)(Ab, \otimes) is the additive group of integers \mathbb{Z}.

This means:

  1. forming the tensor product is a functor in each argument

    A():AbAb, A \otimes (-) : Ab \to Ab \,,
  2. there is an associativity natural isomorphism (AB)CA(BC)(A \otimes B) \otimes C \stackrel{\simeq}{\to} A \otimes (B \otimes C) which is “coherent” in the sense that all possible ways of using it to rebracket a given expression are equal.

  3. There is a unit natural isomorphism AAA \otimes \mathbb{Z} \stackrel{\simeq}{\to} A which is compatible with the asscociativity isomorphism in the evident sense.


To see that \mathbb{Z} is the unit object, consider for any abelian group AA the map

AA A \otimes \mathbb{Z} \to A

which sends for nn \in \mathbb{N} \subset \mathbb{Z}

(a,n)naa+a++a nsummands. (a, n) \mapsto n \cdot a \coloneqq \underbrace{a + a + \cdots + a}_{n\;summands} \,.

Due to the quotient relation defining the tensor product, the element on the left is also equal to

(a,n)=(a,1+1+1 nsummands)=(a,1)+(a,1)++(a,1) nsummands. (a, n) = (a, \underbrace{1 + 1 \cdots + 1}_{n\; summands}) = \underbrace{ (a,1) + (a,1) + \cdots + (a,1) }_{n\; summands} \,.

This shows that AAA \otimes \mathbb{Z} \to A is in fact an isomorphism.

The other properties are similarly direct to check.

We see simple but useful examples of tensor products of abelian groups put to work below in the context of example and then in many of the applications to follow. An elementary but not entirely trivial example that may help to illustrate the nature of the tensor product is the following.


For a,ba,b \in \mathbb{N} and positive, we have

a b LCM(a,b), \mathbb{Z}_a \oplus \mathbb{Z}_b \simeq \mathbb{Z}_{LCM(a,b)} \,,

where LCM(,)LCM(-,-) denotes the least common multiple, whereas

a b GCD(a,b), \mathbb{Z}_a \otimes \mathbb{Z}_b \simeq \mathbb{Z}_{GCD(a,b)} \,,

where GCD(,)GCD(-,-) denotes the greatest common divisor.


Let II \in Set be a set and {A i} iI\{A_i\}_{i \in I} an II-indexed family of abelian groups. The direct sum iIAb\oplus_{i \in I} \in Ab is the coproduct of these objects in Ab.

This means: the direct sum is an abelian group equipped with a collection of homomorphisms

A j A k ι j ι k iIA i, \array{ A_j &&\cdots && A_k \\ & {}_{\mathllap{\iota_j} }\searrow &\cdots& \swarrow_{\mathrlap{\iota_{k}}} \\ && \oplus_{i \in I} A_i } \,,

which is characterized (up to unique isomorphism) by the following universal property: for every other abelian group KK equipped with maps

A j A k f j f k K \array{ A_j &&\cdots && A_k \\ & {}_{\mathllap{f_j} }\searrow &\cdots& \swarrow_{\mathrlap{f_{k}}} \\ && K }

there is a unique homomorphism ϕ: iIA iK\phi : \oplus_{i \in I} A_i \to K such that f i=ϕι i f_i = \phi \circ \iota_i for all iIi \in I.

Explicitly in terms of elements we have:


The direct sum iIA i\oplus_{i \in I} A_i is the abelian group whose ements are formal sums

a 1+a 2++a k a_1 + a_2 + \cdots + a_k

of finitely many elements of the {A i}\{A_i\}, with addition given by componentwise addition in the corresponding A iA_i.


If each A i=A_i = \mathbb{Z}, then the direct sum is again the free abelian group on II

iI[I]. \oplus_{i \in I} \mathbb{Z} \simeq \mathbb{Z}[I] \,.

The tensor product of abelian groups distributes over arbitrary direct sums:

A( iIB i) iIAB i. A \otimes (\oplus_{i \in I} B_i) \simeq \oplus_{i \in I} A \otimes B_i \,.

For ISetI \in Set and AAbA \in Ab, the direct sum of |I|{\vert I\vert} copies of AA with itself is equivalently the tensor product of abelian groups of the free abelian group on II with AA:

iIA( iI)A([I])A. \oplus_{i \in I} A \simeq (\oplus_{i \in I} \mathbb{Z}) \otimes A \simeq (\mathbb{Z}[I]) \otimes A \,.

Together, tensor product and direct sum of abelian groups make Ab into what is called a bimonoidal category.

This now gives us enough structure to define rings and consider basic examples of their modules.


A ring (unital and not-necessarily commutative) is an abelian group RR equipped with

  1. an element 1R1 \in R

  2. a bilinear operation, hence a group homomorphism

    :RRR \cdot : R \otimes R \to R

    out of the tensor product of abelian groups,

such that this is associative and unital with respect to 1.


The fact that the product is a bilinear map is the distributivity law: for all r,r 1,r 2Rr, r_1, r_2 \in R we have

r(r 1+r 2)=rr 1+rr 2 r \cdot (r_1 + r_2) = r \cdot r_1 + r \cdot r_2


(r 1+r 2)r=(r 1+r 2)r. (r_1 + r_2) \cdot r = (r_1 + r_2) \cdot r \,.
  • The integers \mathbb{Z} are a ring under the standard addition and multiplication operation.

  • For each nn, this induces a ring structure on the cyclic group n\mathbb{Z}_n, given by operations in \mathbb{Z} modulo nn.

  • The rational numbers \mathbb{Q}, real numbers \mathbb{R} and complex numbers are rings under their standard operations (in fact these are even fields).


For RR a ring, the polynomials

r 0+r 1x+r 2x 2++r nx n r_0 + r_1 x + r_2 x^2 + \cdots + r_n x^n

(for arbitrary nn \in\mathbb{N}) in a variable xx with coefficients in RR form another ring, the polynomial ring denoted R[x]R[x]. This is the free RR-associative algebra on a single generator xx.


For RR a ring and nn \in \mathbb{N}, the set M(n,R)M(n,R) of n×nn \times n-matrices with coefficients in RR is a ring under elementwise addition and matrix multiplication.


For XX a topological space, the set of continuous functions C(X,)C(X,\mathbb{R}) or C(X,)C(X,\mathbb{C}) with values in the real numbers or complex numbers is a ring under pointwise (points in XX) addition and multiplication.

Just as an outlook and a suggestion for how to think geometrically of the objects appearing here, we mention the following.


The Gelfand duality theorem says that if one remembers certain extra structure on the rings of functions C(X,)C(X, \mathbb{C}) in example – called the structure of a C-star algebra, then this construction

C(,):TopC *Alg opforgetRing op C(-,\mathbb{C}) : Top \stackrel{\simeq}{\to} C^\ast Alg^{op} \stackrel{forget}{\to} Ring^op

is an equivalence of categories between that of topological spaces, and the opposite category of C *C^\ast-algebras. Together with remark further below this provides a useful dual geometric way of thinking about the theory of modules.

From now on and throughout, we take RR to be a commutative ring.


A module NN over a ring RR is

  1. an object NN \in Ab, hence an abelian group;

  2. equipped with a morphism

    α:RNN \alpha : R \otimes N \to N

    in Ab; hence a function of the underlying sets that sends elements

    (r,n)rnα(r,n) (r,n) \mapsto r n \coloneqq \alpha(r,n)

    and which is a bilinear function in that it satisfies

    (r,n 1+n 2)rn 1+rn 2 (r, n_1 + n_2) \mapsto r n_1 + r n_2


    (r 1+r 2,n)r 1n+r 2n (r_1 + r_2, n) \mapsto r_1 n + r_2 n

    for all r,r 1,r 2Rr, r_1, r_2 \in R and n,n 1,n 2Nn,n_1, n_2 \in N;

  3. such that the diagram

    RRN RId N RN Id Rα α RN N \array{ R \otimes R \otimes N &\stackrel{\cdot_R \otimes Id_N}{\to}& R \otimes N \\ {}^{\mathllap{Id_R \otimes \alpha}}\downarrow && \downarrow^{\mathrlap{\alpha}} \\ R \otimes N &\to& N }

    commutes in Ab, which means that for all elements as before we have

    (r 1r 2)n=r 1(r 2n). (r_1 \cdot r_2) n = r_1 (r_2 n) \,.
  4. such that the diagram

    1N 1id N RN α N \array{ 1 \otimes N &&\stackrel{1 \otimes id_N}{\to}&& R \otimes N \\ & \searrow && \swarrow_{\mathrlap{\alpha}} \\ && N }

    commutes, which means that on elements as above

    1n=n. 1 \cdot n = n \,.

The ring RR is naturally a module over itself, by regarding its multiplication map RRRR \otimes R \to R as a module action RNNR \otimes N \to N with NRN \coloneqq R.


More generally, for nn \in \mathbb{N} the nn-fold direct sum of the abelian group underlying RR is naturally a module over RR

R nR nRRR nsummands. R^n \coloneqq R^{\oplus_n} \coloneqq \underbrace{R \oplus R \oplus \cdots \oplus R}_{n\;summands} \,.

The module action is componentwise:

r(r 1,r 2,,r n)=(rr 1,rr 2,,rr n). r \cdot (r_1, r_2, \cdots, r_n) = (r \cdot r_1, r\cdot r_2, \cdots, r \cdot r_n) \,.

Even more generally, for II \in Set any set, the direct sum iIR\oplus_{i \in I} R is an RR-module.

This is the free module (over RR) on the set SS.

The set II serves as the basis of a free module: a general element v iRv \in \oplus_i R is a formal linear combination of elements of II with coefficients in RR.

For special cases of the ring RR, the notion of RR-module is equivalent to other notions:


For R=R = \mathbb{Z} the integers, an RR-module is equivalently just an abelian group.


For R=kR = k a field, an RR-module is equivalently a vector space over kk.

Every finitely-generated free kk-module is a free module, hence every finite dimensional vector space has a basis. For infinite dimensions this is true if the axiom of choice holds.


For NN a module and {n i} iI\{n_i\}_{i \in I} a set of elements, the linear span

n i iIN, \langle n_i\rangle_{i \in I} \hookrightarrow N \,,

(hence the completion of this set under addition in NN and multiplication by RR) is a submodule of NN.


Consider example for the case that the module is N=RN = R, the ring itself, as in example . Then a submodule is equivalently (called) an ideal of RR.


Write RRMod for the category or RR-modules and RR-linear maps between them.


For R=R = \mathbb{Z} we have ModAb\mathbb{Z} Mod \simeq Ab.


Let XX be a topological space and let

RC(X,) R \coloneqq C(X,\mathbb{C})

be the ring of continuous functions on XX with values in the complex numbers.

Given a complex vector bundle EXE \to X on XX, write Γ(E)\Gamma(E) for its set of continuous sections. Since for each point xXx \in X the fiber E xE_x of EE over xx is a \mathbb{C}-module (by example ), Γ(X)\Gamma(X) is a C(X,)C(X,\mathbb{C})-module.

Just as an outlook and a suggestion for how to think of modules geometrically, we mention the following.


The Serre-Swan theorem says that if XX is Hausdorff and compact with ring of functions C(X,)C(X,\mathbb{C}) – as in remark above – then Γ(X)\Gamma(X) is a projective C(X,)C(X,\mathbb{C})-module and indeed there is an equivalence of categories between projective C(X,)C(X,\mathbb{C})-modules and complex vector bundles over XX. (We introduce the notion of projective modules below in Derived categories and derived functors.)

We now discuss a bunch of properties of the category RRMod which together will show that there is a reasonable concept of chain complexes of RR-modules, in generalization of how there is a good concept of chain complexes of abelian groups. In a more abstract category theoretical context than we invoke here, all of the following properties are summarized in the following statement.


Let RR be a commutative ring. Then RModR Mod is an abelian category.

But for the moment we ignore this further abstraction and just consider the following list of properties.


An object in a category which is both an initial object and a terminal object is called a zero object.


This means that 0𝒞0 \in \mathcal{C} is a zero object precisely if for every other object AA there is a unique morphism A0A \to 0 to the zero object as well as a unique morphism 0A0 \to A from the zero object.


The trivial group is a zero object in Ab.

The trivial module is a zero object in RRMod.


Clearly the 0-module 00 is a terminal object, since every morphism N0N \to 0 has to send all elements of NN to the unique element of 00, and every such morphism is a homomorphism. Also, 0 is an initial object because a morphism 0N0 \to N always exists and is unique, as it has to send the unique element of 0, which is the neutral element, to the neutral element of NN.


In a category with an initial object 00 and pullbacks, the kernel ker(f)ker(f) of a morphism f:ABf: A \to B is the pullback ker(f)Aker(f) \to A along ff of the unique morphism 0B0 \to B

ker(f) 0 p A f B. \array{ ker(f) &\to& 0 \\ {}^{\mathllap{p}}\downarrow && \downarrow \\ A &\stackrel{f}{\to}& B } \,.

More explicitly, this characterizes the object ker(f)ker(f) as the object (unique up to unique isomorphism) that satisfies the following universal property:

for every object CC and every morphism h:CAh : C \to A such that fh=0f\circ h = 0 is the zero morphism, there is a unique morphism ϕ:Cker(f)\phi : C \to ker(f) such that h=pϕh = p\circ \phi.


In the category Ab of abelian groups, the kernel of a group homomorphism f:ABf : A \to B is the subgroup of AA on the set f 1(0)f^{-1}(0) of elements of AA that are sent to the zero-element of BB.


More generally, for RR any ring, this is true in RRMod: the kernel of a morphism of modules is the preimage of the zero-element at the level of the underlying sets, equipped with the unique sub-module structure on that set.


In a category with zero object, the cokernel of a morphism f:ABf : A \to B is the pushout coker(f)coker(f) in

A f B i 0 coker(f). \array{ A &\stackrel{f}{\to}& B \\ \downarrow && \downarrow^{\mathrlap{i}} \\ 0 &\to& coker(f) } \,.

More explicitly, this characterizes the object coker(f)coker(f) as the object (unique up to unique isomorphism) that satisfies the following universal property:

for every object CC and every morphism h:BCh : B \to C such that hf=0h \circ f = 0 is the zero morphism, there is a unique morphism ϕ:coker(f)C\phi : coker(f) \to C such that h=ϕih = \phi \circ i.


In the category Ab of abelian groups the cokernel of a morphism f:ABf : A \to B is the quotient group of BB by the image (of the underlying morphism of sets) of ff.


RModR Mod has all kernels. The kernel of a homomorphism f:N 1N 2f : N_1 \to N_2 is the set-theoretic preimage U(f) 1(0)U(f)^{-1}(0) equipped with the induced RR-module structure.

RModR Mod has all cokernels. The cokernel of a homomorphism f:N 1N 2f : N_1 \to N_2 is the quotient abelian group

cokerf=N 2im(f) coker f = \frac{N_2}{im(f)}

of N 2N_2 by the image of ff.

The reader unfamiliar with the general concept of monomorphism and epimorphism may take the following to define these in Ab to be simply the injections and surjections.


U:RModSetU : R Mod \to Set preserves and reflects monomorphisms and epimorphisms:

A homomorphism f:N 1N 2f : N_1 \to N_2 in RModR Mod is a monomorphism / epimorphism precisely if U(f)U(f) is an injection / surjection.


Suppose that ff is a monomorphism, hence that f:N 1N 2f : N_1 \to N_2 is such that for all morphisms g 1,g 2:KN 1g_1, g_2 : K \to N_1 such that fg 1=fg 2f \circ g_1 = f \circ g_2 already g 1=g 2g_1 = g_2. Let then g 1g_1 and g 2g_2 be the inclusion of submodules generated by a single element k 1Kk_1 \in K and k 2Kk_2 \in K, respectively. It follows that if f(k 1)=f(k 2)f(k_1) = f(k_2) then already k 1=k 2k_1 = k_2 and so ff is an injection. Conversely, if ff is an injection then its image is a submodule and it follows directly that ff is a monomorphism.

Suppose now that ff is an epimorphism and hence that f:N 1N 2f : N_1 \to N_2 is such that for all morphisms g 1,g 2:N 2Kg_1, g_2 : N_2 \to K such that fg 1=fg 2f \circ g_1 = f \circ g_2 already g 1=g 2g_1 = g_2. Let then g 1:N 2N 2im(f)g_1 : N_2 \to \frac{N_2}{im(f)} be the natural projection. and let g 2:N 20g_2 : N_2 \to 0 be the zero morphism. Since by construction fg 1=0f \circ g_1 = 0 and fg 2=0f \circ g_2 = 0 we have that g 1=0g_1 = 0, which means that Nim(f)=0\frac{N}{im(f)} = 0 and hence that N=im(f)N = im(f) and so that ff is surjective. The other direction is evident on elements.


For N 1,N 2RModN_1, N_2 \in R Mod two modules, define on the hom set Hom RMod(N 1,N 2)Hom_{R Mod}(N_1,N_2) the structure of an abelian group whose addition is given by argumentwise addition in N 2N_2: (f 1+f 2):nf 1(n)+f 2(n)(f_1 + f_2) : n \mapsto f_1(n) + f_2(n).


With def. RModR Mod composition of morphisms

:Hom(N 1,N 2)×Hom(N 2,N 3)Hom(N 1,N 3) \circ : Hom(N_1, N_2) \times Hom(N_2, N_3) \to Hom(N_1,N_3)

is a bilinear map, hence is equivalently a morphism

Hom(N 1,N 2)Hom(N 2,N 3)Hom(N 1,N 3) Hom(N_1, N_2) \otimes Hom(N_2,N_3) \to Hom(N_1, N_3)

out of the tensor product of abelian groups.

This makes RModR Mod into an Ab-enriched category.


Linearity of composition in the second argument is immediate from the pointwise definition of the abelian group structure on morphisms. Linearity of the composition in the first argument comes down to linearity of the second module homomorphism.


In fact RModR Mod is even a closed category, but this we do not need for showing that it is abelian.

Prop. and prop. together say that:


RModR Mod is an pre-additive category.


RModR Mod has all products and coproducts, being direct products and direct sums.

The products are given by cartesian product of the underlying sets with componentwise addition and RR-action.

The direct sum is the subobject of the product consisting of tuples of elements such that only finitely many are non-zero.


The defining universal properties are directly checked. Notice that the direct product iIN i\prod_{i \in I} N_i consists of arbitrary tuples because it needs to have a projection map

p j: iIN iN j p_j : \prod_{i \in I} N_i \to N_j

to each of the modules in the product, reproducing all of a possibly infinite number of non-trivial maps {KN j}\{K \to N_j\}. On the other hand, the direct sum just needs to contain all the modules in the sum

ι j:N j iIN i \iota_j : N_j \to \oplus_{i \in I} N_i

and since, being a module, it needs to be closed only under addition of finitely many elements, so it consists only of linear combinations of the elements in the N jN_j, hence of finite formal sums of these.

Together cor. and prop. say that:


RModR Mod is an additive category.


In RModR Mod


Using prop. this is directly checked on the underlying sets: given a monomorphism KNK \hookrightarrow N, its cokernel is NNKN \to \frac{N}{K}, The kernel of that morphism is evidently KNK \hookrightarrow N.

Now cor. and prop. imply theorem , by definition.

Now we finally have all the ingredients to talk about chain complexes of RR-modules. The following definitions are the direct analogs of the definitions of chain complexes of abelian groups in Simplicial and singular homology above.


A (\mathbb{Z}-graded) chain complex in RRMod is

  • a collection of objects {C n} n\{C_n\}_{n\in\mathbb{Z}},

  • and of morphisms n:C nC n1\partial_n : C_n \to C_{n-1}

3C 2 2C 1 1C 0 0C 1 1 \cdots \overset{\partial_3}{\to} C_2 \overset{\partial_2}{\to} C_1 \overset{\partial_1}{\to} C_0 \overset{\partial_0}{\to} C_{-1} \overset{\partial_{-1}}{\to} \cdots

such that

n n+1=0 \partial_n \circ \partial_{n+1} = 0

(the zero morphism) for all nn \in \mathbb{N}.


For C C_\bullet a chain complex and nn \in \mathbb{N}

  • the morphisms n\partial_n are called the differentials or boundary maps;

  • the elements of C nC_n are called the nn-chains;

  • for n1n \geq 1 the elements in the kernel

    Z nker( n1) Z_n \coloneqq ker(\partial_{n-1})

    of n1:C nC n1\partial_{n-1} : C_n \to C_{n-1} are called the nn-cycles

    and for n=0n = 0 we say that every 0-chain is a 0-cycle

    Z 0C 0 Z_0 \coloneqq C_0

    (equivalently we declare that 1=0\partial_{-1} = 0).

  • the elements in the image

    B nim( n) B_n \coloneqq im(\partial_n)

    of n:C n+1C n\partial_{n} : C_{n+1} \to C_{n} are called the nn-boundaries;

Notice that due to =0\partial \partial = 0 we have canonical inclusions

0B nZ nC n. 0 \hookrightarrow B_n \hookrightarrow Z_n \hookrightarrow C_n \,.
0B nZ nH n0. 0 \to B_n \to Z_n \to H_n \to 0 \,.

A chain map f:V W f : V_\bullet \to W_\bullet is a collection of morphism {f n:V nW n} n\{f_n : V_n \to W_n\}_{n \in \mathbb{Z}} in 𝒜\mathcal{A} such that all the diagrams

V n+1 d n V V n f n+1 f n W n+1 d n W W n \array{ V_{n+1} &\stackrel{d^V_n}{\to}& V_n \\ \downarrow^{\mathrlap{f_{n+1}}} && \downarrow^{\mathrlap{f_{n}}} \\ W_{n+1} &\stackrel{d^W_n}{\to} & W_n }

commute, hence such that all the equations

f nd n V=d n+1 Wf n+1 f_n \circ d^V_n = d^W_{n+1} \circ f_{n+1}



For f:C D f : C_\bullet \to D_\bullet a chain map, it respects boundaries and cycles, so that for all nn \in \mathbb{Z} it restricts to a morphism

B n(f):B n(C )B n(D ) B_n(f) : B_n(C_\bullet) \to B_n(D_\bullet)


Z n(f):Z n(C )Z n(D ). Z_n(f) : Z_n(C_\bullet) \to Z_n(D_\bullet) \,.

In particular it also respects chain homology

H n(f):H n(C )H n(D ). H_n(f) : H_n(C_\bullet) \to H_n(D_\bullet) \,.

Conversely this means that taking chain homology is a functor

H n():Ch (𝒜)𝒜 H_n(-) : Ch_\bullet(\mathcal{A}) \to \mathcal{A}

from the category of chain complexes in 𝒜\mathcal{A} to 𝒜\mathcal{A} itself.

This establishes the basic objects that we are concerned with in the following. But as before, we are not so much interested in chain complexes up to chain map isomorphism, rather, we are interested in them up to a notion of homotopy equivalence. This we begin to study in the next section Homology exact sequences and homotopy fiber sequences. But in order to formulate that neatly, it is useful to have the tensor product of chain complexes. We close this section with introducing that notion.


For X,YCh (𝒜)X, Y \in Ch_\bullet(\mathcal{A}) write XYCh (𝒜)X \otimes Y \in Ch_\bullet(\mathcal{A}) for the chain complex whose component in degree nn is given by the direct sum

(XY) n:= i+j=nX i RY j (X \otimes Y)_n := \oplus_{i + j = n} X_i \otimes_R Y_j

over all tensor products of components whose degrees sum to nn, and whose differential is given on elements (x,y)(x,y) of homogeneous degree by

XY(x,y)=( Xx,y)+(1) deg(x)(x, Yy). \partial^{X \otimes Y} (x, y) = (\partial^X x, y) + (-1)^{deg(x)} (x, \partial^Y y) \,.

(square as tensor product of interval with itself)

For RR some ring, let I Ch (RMod)I_\bullet \in Ch_\bullet(R Mod) be the chain complex given by

I =[00R 0 IRR], I_\bullet = \left[ \cdots \to 0 \to 0 \to R \stackrel{\partial^{I}_0}{\to} R \oplus R \right] \,,

where 0 I=(id,id)\partial^I_0 = (-id, id).

This is the normalized chain complex of the simplicial chain complex of the standard simplicial interval, the 1-simplex Δ 1\Delta_1, which means: we may think of

I 0=RRR[{(0),(1)}] I_0 = R \oplus R \simeq R[ \{(0), (1)\} ]

as the RR-linear span of two basis elements labelled “(0)(0)” and “(1)(1)”, to be thought of as the two 0-chains on the endpoints of the interval. Similarly we may think of

I 1=RR[{(01)}] I_1 = R \simeq R[\{(0 \to 1)\}]

as the free RR-module on the single basis element which is the unique non-degenerate 1-simplex (01)(0 \to 1) in Δ 1\Delta^1.

Accordingly, the differential 0 I\partial^I_0 is the oriented boundary map of the interval, taking this basis element to

0 I:(01)(1)(0) \partial^I_0 : (0 \to 1) \mapsto (1) - (0)

and hence a general element r(01)r\cdot(0 \to 1) for some rRr \in R to

0 I:r(01)r(1)r(0). \partial^I_0 : r\cdot(0 \to 1) \mapsto r\cdot (1) - r\cdot(0) \,.

We now write out in full details the tensor product of chain complexes of I I_\bullet with itself, according to def. :

S I I . S_\bullet \coloneqq I_\bullet \otimes I_\bullet \,.

By definition and using the above choice of basis element, this is in low degree given as follows:

S 0 =I 0I 0 =(RR)(RR) RRRR ={r 00((0),(0))+r 01((0),(1))+r 10((1),(0))+r 11((1),(1))|r ,R}, \begin{aligned} S_0 &= I_0 \oplus I_0 \\ & = (R \oplus R) \otimes (R \oplus R) \\ & \simeq R \oplus R \oplus R \oplus R \\ & = \left\{ r_{00} \cdot ((0),(0)') + r_{01} \cdot ((0),(1)') + r_{10} \cdot ((1),(0)') + r_{11} \cdot ((1),(1)') | r_{\cdot, \cdot} \in R \right\} \end{aligned} \,,

where in the last line we express a general element as a linear combination of the canonical basis elements which are obtained as tensor products (a,b)RR(a,b) \in R\otimes R of the previous basis elements. Notice that by the definition of tensor product of modules we have relations like

r((0),(1))=(r(0),(1))=((0),r(1)) r ( (0), (1)') = (r(0), (1)') = ((0), r(1)')


Similarly then, in degree-1 the tensor product chain complex is

(II) 1 =(I 0I 1)(I 1I 0) R(RR)(RR)R RRRR {r 0((0),(01))+r 1((1),(01))+r¯ 0((01),(0))+r¯ 1((01),(1))|r ,r¯ R}. \begin{aligned} (I \otimes I)_1 & = (I_0 \otimes I_1) \oplus (I_1 \otimes I_0) \\ & \simeq R \otimes (R \oplus R) \oplus (R \oplus R) \otimes R \\ & \simeq R \oplus R \oplus R \oplus R \\ & \simeq \left\{ r_{0} \cdot ((0),(0\to 1)') + r_{1} \cdot ((1), (0 \to 1)') + \bar r_0 \cdot ((0\to 1), (0)') + \bar r_1 \cdot ((0 \to 1), (1)') | r_{\cdot}, \bar r_{\cdot} \in R \right\} \end{aligned} \,.

And finally in degree 2 it is

(II) 2 I 1I 1 RR R {r((01),(01))|rR}. \begin{aligned} (I \otimes I)_2 & \simeq I_1 \otimes I_1 \\ & \simeq R \otimes R \\ & \simeq R \\ & \simeq \left\{ r\cdot ((0 \to 1), (0 \to 1)') | r \in R \right\} \end{aligned} \,.

All other contributions that are potentially present in (II) (I \otimes I)_\bullet vanish (are the 0-module) because all higher terms in I I_\bullet are.

The tensor product basis elements appearing in the above expressions have a clear geometric interpretation: we can label a square with them as follows

((0),(1)) ((01),(0)) ((1),(1)) ((0),(01)) ((01),(01)) ((1),(01)) ((0),(0)) ((01),(0)) ((1),(0)). \array{ ((0),(1)') &&\underset{((0\to 1),(0))}{\to}&& ((1),(1)') \\ \\ {}^{\mathllap{((0),(0\to 1)')}}\uparrow &&\righttoleftarrow^{((0 \to 1), (0\to 1)')}&& \uparrow^{\mathrlap{((1),(0 \to 1)')}} \\ \\ ((0),(0)') &&\underset{((0\to 1),(0)')}{\to}&& ((1),(0)') } \,.

This diagram indicates a cellular square and identifies its canonical singular chains with the elements of (II) (I \otimes I)_\bullet. The arrows indicate the orientation. For instance the fact that

II((01),(0)) =( I(01),(0))+(1) 1((01), I(0)) =((1)(0),(0))0 =((1),(0))((0),(0)) \begin{aligned} \partial^{I \otimes I} ((0 \to 1), (0)') & = (\partial^I (0 \to 1), (0)') + (-1)^1 ((0\to 1), \partial^I (0)) \\ & = ( (1) - (0), \;(0)' ) - 0 \\ & = ((1), (0)') - ((0), (0)') \end{aligned}

says that the oriented boundary of the bottom morphism is the bottom right element (its target) minus the bottom left element (its source), as indicated. Here we used that the differential of a degree-0 element in I I_\bullet is 0, and hence so is any tensor product with it.

Similarly the oriented boundary of the square itself is computed to

II((01),(01)) =( I(01),(01))((01), I(01)) =((1)(0),(01))((01),(1)(0)) =((1),(01))((0),(01))((01),(1))+((01),(0)), \begin{aligned} \partial^{I \otimes I} ((0 \to 1), (0 \to 1)') &= (\partial^I (0 \to 1), (0 \to 1)') - ((0 \to 1), \partial^I(0 \to 1)) \\ & = ((1)- (0), (0 \to 1)') - ((0 \to 1), (1)' - (0)') \\ & = ((1), (0 \to 1)') - ((0), (0 \to 1)') - ((0 \to 1), (1)') + ((0 \to 1), (0)') \end{aligned} \,,

which can be read as saying that the boundary is the evident boundary thought of as oriented by drawing it counterclockwise into the plane, so that the right arrow (which points up) contributes with a +1 prefactor, while the left arrow (which also points up) contributes with a -1 prefactor.


Equipped with the standard tensor product of chain complexes \otimes, def. the category of chain complexes is a monoidal category (Ch (RMod),)(Ch_\bullet(R Mod), \otimes). The unit object is the chain complex concentrated in degree 0 on the tensor unit RR of RModR Mod.


We write Ch ubCh_\bullet^{ub} for the category of unbounded chain complexes.


For X,YCh ub(𝒜)X,Y \in Ch^{ub}_\bullet(\mathcal{A}) any two objects, define a chain complex [X,Y]Ch ub(𝒜)[X,Y] \in Ch^{ub}_\bullet(\mathcal{A}) to have components

[X,Y] n:= iHom RMod(X i,Y i+n) [X,Y]_n := \prod_{i \in \mathbb{Z}} Hom_{R Mod}(X_i, Y_{i+n})

(the collection of degree-nn maps between the underlying graded modules) and whose differential is defined on homogeneously graded elements f[X,Y] nf \in [X,Y]_n by

df:=d Yf(1) nfd X. d f := d_Y \circ f - (-1)^{n} f \circ d_X \,.

This defines a functor

[,]:Ch ub(𝒜) op×Ch ub(𝒜)Ch ub(𝒜). [-,-] : Ch^{ub}_\bullet(\mathcal{A})^{op} \times Ch^{ub}_\bullet(\mathcal{A}) \to Ch^{ub}_\bullet(\mathcal{A}) \,.

This functor

[,]:Ch ub×Ch ubCh ub[-,-] : Ch^{ub}_\bullet \times Ch^{ub}_\bullet \to Ch^{ub}_\bullet

is the internal hom of the category of chain complexes.


The collection of cycles of the internal hom [X,Y] [X,Y]_\bullet in degree 0 coincides with the external hom functor

Z 0([X,Y])Hom Ch ub(X,Y). Z_0([X,Y]) \simeq Hom_{Ch^{ub}_\bullet}(X,Y) \,.

The chain homology of the internal hom [X,Y][X,Y] in degree 0 coincides with the homotopy classes of chain maps.


By Definition the 0-cycles in [X,Y][X,Y] are collections of morphisms {f k:X kY k}\{f_k : X_k \to Y_k\} such that

f k+1d X=d Yf k. f_{k+1} \circ d_X = d_Y \circ f_k \,.

This is precisely the condition for ff to be a chain map.

Similarly, the boundaries in degree 0 are precisely the collections of morphisms of the form

λ k+1d X+d Yλ k \lambda_{k+1} \circ d_X + d_Y \circ \lambda_k

for a collection of maps {λ k:X kY k+1}\{\lambda_k : X_k \to Y_{k+1}\}. This are precisely the null homotopies.


The monoidal category (Ch ,)(Ch_\bullet, \otimes) is a closed monoidal category, the internal hom is the standard internal hom of chain complexes.

4) Homology exact sequences

With the basic definition of the category of chain complexes in hand, we now consider the first application, which is as simple as it is of ubiquituous use in mathematics: long exact sequences in homology. This is the “abelianization”, in the sense of the discussion in 2) above, of what in homotopy theory are long exact sequences of homotopy groups. But both concepts, in turn, are just the shadow on homology groups/homotopy groups, respectively of homotopy fiber sequences of the underlying chain complexes/topological spaces themselves. Since these are even more useful, in particular in chapter III) below, we discuss below in 5) how to construct these using chain homotopy and mapping cones.

First we need the fundamental notion of exact sequences. As before, we fix some commutative ring RR throughout and consider the category of modules over RR, which we will abbreviate

𝒜RMod. \mathcal{A} \coloneqq R Mod \,.

An exact sequence in 𝒜\mathcal{A} is a chain complex C C_\bullet in 𝒜\mathcal{A} with vanishing chain homology in each degree:

n.H n(C)=0. \forall n \in \mathbb{N} . H_n(C) = 0 \,.

A short exact sequence is an exact sequence, def. of the form

00ABC00. \cdots \to 0 \to 0 \to A \to B \to C \to 0 \to 0 \to \cdots \,.

One usually writes this just “0ABC00 \to A \to B \to C \to 0” or even just “ABCA \to B \to C”.


A general exact sequence is sometimes called a long exact sequence, to distinguish from the special case of a short exact sequence.

Beware that there is a difference between ABCA \to B \to C being exact (at BB) and ABCA \to B \to C being a “short exact sequence” in that 0ABC00 \to A \to B \to C \to 0 is exact at AA, BB and CC. This is illustrated by the following proposition.


Explicitly, a sequence of morphisms

0AiBpC0 0 \to A \stackrel{i}\to B \stackrel{p}\to C \to 0

in 𝒜\mathcal{A} is short exact, def. , precisely if

  1. ii is a monomorphism,

  2. pp is an epimorphism,

  3. and the image of ii equals the kernel of pp (equivalently, the coimage of pp equals the cokernel of ii).


The third condition is the definition of exactness at BB. So we need to show that the first two conditions are equivalent to exactness at AA and at CC.

This is easy to see by looking at elements when 𝒜R\mathcal{A} \simeq RMod, for some ring RR (and the general case can be reduced to this one using one of the embedding theorems):

The sequence being exact at

0AB 0 \to A \to B

means, since the image of 0A0 \to A is just the element 0A0 \in A, that the kernel of ABA \to B consists of just this element. But since ABA \to B is a group homomorphism, this means equivalently that ABA \to B is an injection.

Dually, the sequence being exact at

BC0 B \to C \to 0

means, since the kernel of C0C \to 0 is all of CC, that also the image of BCB \to C is all of CC, hence equivalently that BCB \to C is a surjection.


Let 𝒜=\mathcal{A} = \mathbb{Z}Mod \simeq Ab. For nn \in \mathbb{N} with n1n \geq 1 let n\mathbb{Z} \stackrel{\cdot n}{\to} \mathbb{Z} be the linear map/homomorphism of abelian groups which acts by the ordinary multiplication of integers by nn. This is clearly an injection. The cokernel of this morphism is the projection to the quotient group, which is the cyclic group n/n\mathbb{Z}_n \coloneqq \mathbb{Z}/n\mathbb{Z}. Hence we have a short exact sequence

0n n. 0 \to \mathbb{Z} \stackrel{\cdot n}{\to} \mathbb{Z} \to \mathbb{Z}_n \,.

A typical use of a long exact sequence, notably of the homology long exact sequence to be discussed, is that it allows to determine some of its entries in terms of others.

The characterization of short exact sequences in prop. is one example for this. Another is this:


If part of an exact sequence looks like

0C n+1 nC n0, \cdots \to 0 \to C_{n+1} \stackrel{\partial_n}{\to} C_n \to 0 \to \cdots \,,

then n\partial_n is an isomorphism and hence

C n+1C n. C_{n+1} \simeq C_n \,.

Often it is useful to make the following strengthening of short exactness explicit.


A short exact sequence 0AiBpC00\to A \stackrel{i}{\to} B \stackrel{p}{\to} C\to 0 in 𝒜\mathcal{A} is called split if either of the following equivalent conditions hold

  1. There exists a section of pp, hence a homomorphism s:CBs \colon C\to B such that ps=id Cp \circ s = id_C.

  2. There exists a retract of ii, hence a homomorphism r:BAr \colon B\to A such that ri=id Ar \circ i = id_A.

  3. There exists an isomorphism of sequences with the sequence

    0AACC0 0\to A\to A\oplus C\to C\to 0

    given by the direct sum and its canonical injection/projection morphisms.


(splitting lemma)

The three conditions in def. are indeed equivalent.


It is clear that the third condition implies the first two: take the section/retract to be given by the canonical injection/projection maps that come with a direct sum.

Conversely, suppose we have a retract r:BAr \colon B \to A of i:ABi \colon A \to B. Write P:BrAiBP \colon B \stackrel{r}{\to} A \stackrel{i}{\to} B for the composite. Notice that by ri=idr\circ i = id this is an idempotent: PP=PP \circ P = P, hence a projector.

Then every element bBb \in B can be decomposed as b=(bP(b))+P(b)b = (b - P(b)) + P(b) hence with bP(b)ker(r)b - P(b) \in ker(r) and P(b)im(i)P(b) \in im(i). Moreover this decomposition is unique since if b=i(a)b = i(a) while at the same time r(b)=0r(b) = 0 then 0=r(i(a))=a0 = r(i(a)) = a. This shows that Bim(i)ker(r)B \simeq im(i) \oplus ker(r) is a direct sum and that i:ABi \colon A \to B is the canonical inclusion of im(i)im(i). By exactness it then follows that ker(r)ker(p)ker(r) \simeq ker(p) and hence that BACB \simeq A \oplus C with the canonical inclusion and projection.

The implication that the second condition also implies the third is formally dual to this argument.

Moreover, of particular interest are exact sequences of chain complexes. We consider this concept in full beauty below in section 5). In order to motivate the discussion there we here content ourselves with the following quick definition, which already admits discussion of some of its rich consequences.


A sequence of chain maps of chain complexes

0A B C 0 0 \to A_\bullet \to B_\bullet \to C_\bullet \to 0

is a short exact sequence of chain complexes in 𝒜\mathcal{A} if for each nn the component

0A nB nC n0 0 \to A_n \to B_n \to C_n \to 0

is a short exact sequence in 𝒜\mathcal{A}, according to def. .


Consider a short exact sequence of chain complexes as in def. . For nn \in \mathbb{Z}, define a group homomorphism

δ n:H n(C)H n1(A), \delta_n : H_n(C) \to H_{n-1}(A) \,,

called the nnth connecting homomorphism of the short exact sequence, by sending

δ n:[c][ Bc^] A, \delta_n : [c] \mapsto [\partial^B \hat c]_A \,,


  1. cZ n(C)c \in Z_n(C) is a cycle representing the given homology group [c][c];

  2. c^C n(B)\hat c \in C_n(B) is any lift of that cycle to an element in B nB_n, which exists because pp is a surjection (but which no longer needs to be a cycle itself);

  3. [ Bc^] A[\partial^B \hat c]_A is the AA-homology class of Bc^\partial^B \hat c which is indeed in A n1B n1A_{n-1} \hookrightarrow B_{n-1} by exactness (since p( Bc^)= Cp(c^)= Cc=0p(\partial^B \hat c) = \partial^C p(\hat c) = \partial^C c = 0) and indeed in Z n1(A)A n1Z_{n-1}(A) \hookrightarrow A_{n-1} since A Bc^= B Bc^=0\partial^A \partial^B \hat c = \partial^B \partial^B \hat c = 0.


Def. is indeed well defined in that the given map is independent of the choice of lift c^\hat c involved and in that the group structure is respected.


To see that the construction is well-defined, let c˜B n\tilde c \in B_{n} be another lift. Then p(c^c˜)=0p(\hat c - \tilde c) = 0 and hence c^c˜A nB n\hat c - \tilde c \in A_n \hookrightarrow B_n. This exhibits a homology-equivalence [ Bc^] A[ Bc˜] A[\partial^B\hat c]_A \simeq [\partial^B \tilde c]_A since A(c^c˜)= Bc^ Bc˜ \partial^A(\hat c - \tilde c) = \partial^B \hat c - \partial^B \tilde c.

To see that δ n\delta_n is a group homomorphism, let [c]=[c 1]+[c 2][c] = [c_1] + [c_2] be a sum. Then c^c^ 1+c^ 2\hat c \coloneqq \hat c_1 + \hat c_2 is a lift and by linearity of \partial we have [ Bc^] A=[ Bc^ 1]+[ Bc^ 2][\partial^B \hat c]_A = [\partial^B \hat c_1] + [\partial^B \hat c_2].


Under chain homology H ()H_\bullet(-) the morphisms in the short exact sequence together with the connecting homomorphisms yield the homology long exact sequence

H n(A)H n(B)H n(C)δ nH n1(A)H n1(B)H n1(C). \cdots \to H_n(A) \to H_n(B) \to H_n(C) \stackrel{\delta_n}{\to} H_{n-1}(A) \to H_{n-1}(B) \to H_{n-1}(C) \to \cdots \,.

Consider first the exactness of H n(A)H n(i)H n(B)H n(p)H n(C)H_n(A) \stackrel{H_n(i)}{\to} H_n(B) \stackrel{H_n(p)}{\to} H_n(C).

It is clear that if aZ n(A)Z n(B)a \in Z_n(A) \hookrightarrow Z_n(B) then the image of [a]H n(B)[a] \in H_n(B) is [p(a)]=0H n(C)[p(a)] = 0 \in H_n(C). Conversely, an element [b]H n(B)[b] \in H_n(B) is in the kernel of H n(p)H_n(p) if there is cC n+1c \in C_{n+1} with Cc=p(b)\partial^C c = p(b). Since pp is surjective let c^B n+1\hat c \in B_{n+1} be any lift, then [b]=[b Bc^][b] = [b - \partial^B \hat c] but p(b Bc)=0p(b - \partial^B c) = 0 hence by exactness b Bc^Z n(A)Z n(B)b - \partial^B \hat c \in Z_n(A) \hookrightarrow Z_n(B) and so [b][b] is in the image of H n(A)H n(B)H_n(A) \to H_n(B).

It remains to see that

  1. the image of H n(B)H n(C)H_n(B) \to H_n(C) is the kernel of δ n\delta_n;

  2. the kernel of H n1(A)H n1(B)H_{n-1}(A) \to H_{n-1}(B) is the image of δ n\delta_n.

This follows by inspection of the formula in def. . We spell out the first one:

If [c][c] is in the image of H n(B)H n(C)H_n(B) \to H_n(C) we have a lift c^\hat c with Bc^=0\partial^B \hat c = 0 and so δ n[c]=[ Bc^] A=0\delta_n[c] = [\partial^B \hat c]_A = 0. Conversely, if for a given lift c^\hat c we have that [ Bc^] A=0[\partial^B \hat c]_A = 0 this means there is aA na \in A_n such that Aa Ba= Bc^\partial^A a \coloneqq \partial^B a = \partial^B \hat c. But then c˜c^a\tilde c \coloneqq \hat c - a is another possible lift of cc for which Bc˜=0\partial^B \tilde c = 0 and so [c][c] is in the image of H n(B)H n(C)H_n(B) \to H_n(C).


The connecting homomorphism of the long exact sequence in homology induced from short exact sequences of the form in example is called a Bockstein homomorphism.

We now discuss a deeper, more conceptual way of understanding the origin of long exact sequences in homology and the nature of connecting homomorphisms. This will give first occasion to see some actual homotopy theory of chain complexes at work, and hence serves also as a motivating example for the discussions to follow in chapter III).

For this we need the notion of chain homotopy, which is the abelianized analog of the notion of homotopy of continuous maps above in def. . We now first introduce this concept by straightforwardly mimicking the construction in def. with topological spaces replaced by chain complexes. Then we use chain homotopies to construct mapping cones of chain maps. Finally we explain how these refine the above long exact sequences in homology groups to homotopy cofiber sequences of the chain complexes themselves.

A chain homotopy is a homotopy in Ch (𝒜)Ch_\bullet(\mathcal{A}). We first give the explicit definition, the more abstract characterization is below in prop. .


A chain homotopy ψ:fg\psi : f \Rightarrow g between two chain maps f,g:C D f,g : C_\bullet \to D_\bullet in Ch (𝒜)Ch_\bullet(\mathcal{A}) is a sequence of morphisms

{(ψ n:C nD n+1)𝒜|n} \{ (\psi_n : C_n \to D_{n+1}) \in \mathcal{A} | n \in \mathbb{N} \}

in 𝒜\mathcal{A} such that

f ng n= Dψ n+ψ n1 C. f_n - g_n = \partial^D \circ \psi_n + \psi_{n-1} \partial^C \,.

It may be useful to illustrate this with the following graphics, which however is not a commuting diagram:

C n+1 f n+1g n+1 D n+1 n C ψ n n D C n f ng n D n n1 C ψ n1 n1 D C n1 f n1g n1 D n1 . \array{ \vdots && \vdots \\ \downarrow && \downarrow \\ C_{n+1} &\stackrel{f_{n+1} - g_{n+1}}{\to}& D_{n+1} \\ \downarrow^{\mathrlap{\partial^C_{n}}} &\nearrow_{\mathrlap{\psi_{n}}}& \downarrow^{\mathrlap{\partial^D_{n}}} \\ C_n &\stackrel{f_n - g_n}{\to}& D_n \\ \downarrow^{\mathrlap{\partial^C_{n-1}}} &\nearrow_{\mathrlap{\psi_{n-1}}}& \downarrow^{\mathrlap{\partial^D_{n-1}}} \\ C_{n-1} &\stackrel{f_{n-1} - g_{n-1}}{\to}& D_{n-1} \\ \downarrow && \downarrow \\ \vdots && \vdots } \,.

Instead, a way to encode chain homotopies by genuine diagrammatics is below in prop. , for which we introduce the interval object for chain complexes:



I N (C(Δ[1])) I_\bullet \coloneqq N_\bullet(C(\Delta[1]))

be the normalized chain complex in 𝒜\mathcal{A} of the simplicial chains on the simplicial 1-simplex:

I =[00R(id,id)RR]. I_\bullet = [ \cdots \to 0 \to 0 \to R \stackrel{(-id,id)}{\to} R \oplus R ] \,.

This is the standard interval in chain complexes. Indeed it is manifestly the “abelianization” of the standard interval object Δ 1\Delta^1 in sSet/Top: the 1-simplex.


A chain homotopy ψ:fg\psi : f \Rightarrow g is equivalently a commuting diagram

C f I C (f,g,ψ) D g C \array{ C_\bullet \\ \downarrow & \searrow^{\mathrlap{f}} \\ I_\bullet \otimes C_\bullet &\stackrel{(f,g,\psi)}{\to}& D_\bullet \\ \uparrow & \nearrow_{\mathrlap{g}} \\ C_\bullet }

in Ch (𝒜)Ch_\bullet(\mathcal{A}), hence a genuine left homotopy with respect to the interval object in chain complexes.


For notational simplicity we discuss this in 𝒜=\mathcal{A} = Ab.

Observe that N ((Δ[1]))N_\bullet(\mathbb{Z}(\Delta[1])) is the chain complex

(00(id,id)00) ( \cdots \to 0 \to 0 \to \mathbb{Z} \stackrel{(-id,id)}{\to} \mathbb{Z} \oplus \mathbb{Z} \to 0 \to 0 \to \cdots)

where the term \mathbb{Z} \oplus \mathbb{Z} is in degree 0: this is the free abelian group on the set {(0),(1)}\{(0),(1)\} of 0-simplices in Δ[1]\Delta[1]. The other copy of \mathbb{Z} is the free abelian group on the single non-degenerate edge (01)(0 \to 1) in Δ[1]\Delta[1]. (All other simplices of Δ[1]\Delta[1] are degenerate and hence do not contribute to the normalized chain complex which we are discussing here.) The single nontrivial differential sends 11 \in \mathbb{Z} to (1,1)(-1,1) \in \mathbb{Z} \oplus \mathbb{Z}, reflecting the fact that one of the vertices is the 0-boundary the other the 1-boundary of the single nontrivial edge.

It follows that the tensor product of chain complexes I C I_\bullet \otimes C_\bullet is

(IC) 2 (IC) 1 (IC) 0 C 1C 2C 2 C 0C 1C 1 C 1C 0C 0 . \array{ && (I \otimes C)_2 &\to& (I \otimes C)_1 &\to& (I \otimes C)_0 &\to& \cdots \\ \cdots &\to& C_1 \oplus C_{2} \oplus C_2 &\to& C_0 \oplus C_{1} \oplus C_{1} &\to& C_{-1} \oplus C_0 \oplus C_0 &\to& \cdots } \,.

Therefore a chain map (f,g,ψ):I C D (f,g,\psi) : I_\bullet \otimes C_\bullet \to D_\bullet that restricted to the two copies of C C_\bullet is ff and gg, respectively, is characterized by a collection of commuting diagrams

C n+1C n+1C n (f n+1,g n+1,ψ n) D n IC D C nC nC n1 (f n,g n,ψ n1) D n1. \array{ C_{n+1}\oplus C_{n+1} \oplus C_{n} &\stackrel{(f_{n+1},g_{n+1}, \psi_n)}{\to}& D_n \\ {}^{\mathllap{\partial^{I \otimes C}}}\downarrow && \downarrow^{\mathrlap{\partial^D}} \\ C_{n} \oplus C_{n} \oplus C_{n-1} &\stackrel{(f_n,g_n,\psi_{n-1})}{\to} & D_{n-1} } \,.

On the elements (1,0,0)(1,0,0) and (0,1,0)(0,1,0) in the top left this reduces to the chain map condition for ff and gg, respectively. On the element (0,0,1)(0,0,1) this is the equation for the chain homotopy

f ng nψ n1d C=d Dψ n. f_n - g_n - \psi_{n-1} d_C = d_D \psi_{n} \,.

Let C ,D Ch (𝒜)C_\bullet, D_\bullet \in Ch_\bullet(\mathcal{A}) be two chain complexes.


Define the relation chain homotopic on Hom(C ,D )Hom(C_\bullet, D_\bullet) by

(fg)(ψ:fg). (f \sim g) \Leftrightarrow \exists (\psi : f \Rightarrow g) \,.

Chain homotopy is an equivalence relation on Hom(C ,D )Hom(C_\bullet,D_\bullet).


Write Hom(C ,D ) Hom(C_\bullet,D_\bullet)_{\sim} for the quotient of the hom set Hom(C ,D )Hom(C_\bullet,D_\bullet) by chain homotopy.


This quotient is compatible with composition of chain maps.

Accordingly the following category exists:


Write 𝒦 (𝒜)\mathcal{K}_\bullet(\mathcal{A}) for the category whose objects are those of Ch (𝒜)Ch_\bullet(\mathcal{A}), and whose morphisms are chain homotopy classes of chain maps:

Hom 𝒦 (𝒜)(C ,D )Hom Ch (𝒜)(C ,D ) . Hom_{\mathcal{K}_\bullet(\mathcal{A})}(C_\bullet, D_\bullet) \coloneqq Hom_{Ch_\bullet(\mathcal{A})}(C_\bullet, D_\bullet)_\sim \,.

This is usually called the (strong) homotopy category of chain complexes in 𝒜\mathcal{A}.


Beware, as we will discuss in detail below in 8), that another category that would deserve to carry this name instead is called the derived category of 𝒜\mathcal{A}. In the derived category one also quotients out chain homotopy, but one allows that first the domain of the two chain maps ff and gg is refined along a quasi-isomorphism.


A chain map f :C D f_\bullet : C_\bullet \to D_\bullet in Ch (𝒜)Ch_\bullet(\mathcal{A}) is called a quasi-isomorphism if for each nn \in \mathbb{N} the induced morphisms on chain homology groups

H n(f):H n(C)H n(D) H_n(f) \colon H_n(C) \to H_n(D)

is an isomorphism.


Quasi-isomorphisms are also called, more descriptively, homology isomorphisms or H H_\bullet-isomorphisms. See at homology localization for more on this.

With the homotopy theoretic notions of chain homotopy and quasi-isomorphism in hand, we can now give a deeper explanation of long exact sequences in homology. We first give now a heuristic discussion that means to serve as a guide through the constructions to follow. The reader wishing to skip this may directly jump ahead to definition .

While the notion of a short exact sequence of chain complexes is very useful for computations, it does not have invariant meaning if one considers chain complexes as objects in (abelian) homotopy theory, where one takes into account chain homotopies between chain maps and takes equivalence of chain complexes not to be given by isomorphism, but by quasi-isomorphism.

For if a chain map A B A_\bullet \to B_\bullet is the degreewise kernel of a chain map B C B_\bullet \to C_\bullet, then if A^ A \hat A_\bullet \stackrel{\simeq}{\to} A_\bullet is a quasi-isomorphism (for instance a projective resolution of A A_\bullet) then of course the composite chain map A^ B \hat A_\bullet \to B_\bullet is in general far from being the degreewise kernel of C C_\bullet. Hence the notion of degreewise kernels of chain maps and hence that of short exact sequences is not meaningful in the homotopy theory of chain complexes in 𝒜\mathcal{A} (for instance: not in the derived category of 𝒜\mathcal{A}).

That short exact sequences of chain complexes nevertheless play an important role in homological algebra is due to what might be called a “technical coincidence”:


If A B C A_\bullet \to B_\bullet \to C_\bullet is a short exact sequence of chain complexes, then the commuting square

A 0 B C \array{ A_\bullet &\to& 0 \\ \downarrow && \downarrow \\ B_\bullet &\to& C_\bullet }

is not only a pullback square in Ch (𝒜)Ch_\bullet(\mathcal{A}), exhibiting A A_\bullet as the fiber of B C B_\bullet \to C_\bullet over 0C 0 \in C_\bullet, it is in fact also a homotopy pullback.

This means it is universal not just among commuting such squares, but also among such squares which commute possibly only up to a chain homotopy ϕ\phi:

Q 0 ϕ B C \array{ Q_\bullet &\to& 0 \\ \downarrow &\swArrow_{\phi}& \downarrow \\ B_\bullet &\to& C_\bullet }

and with morphisms between such squares being maps A A A_\bullet \to A'_\bullet correspondingly with further chain homotopies filling all diagrams in sight.

Equivalently, we have the formally dual result


If A B C A_\bullet \to B_\bullet \to C_\bullet is a short exact sequence of chain complexes, then the commuting square

A 0 B C \array{ A_\bullet &\to& 0 \\ \downarrow && \downarrow \\ B_\bullet &\to& C_\bullet }

is not only a pushout square in Ch (𝒜)Ch_\bullet(\mathcal{A}), exhibiting C C_\bullet as the cofiber of A B A_\bullet \to B_\bullet over 0C 0 \in C_\bullet, it is in fact also a homotopy pushout.

But a central difference between fibers/cofibers on the one hand and homotopy fibers/homotopy cofibers on the other is that while the (co)fiber of a (co)fiber is necessarily trivial, the homotopy (co)fiber of a homotopy (co)fiber is in general far from trivial: it is instead the looping Ω()\Omega(-) or suspension Σ()\Sigma(-) of the codomain/domain of the original morphism: by the pasting law for homotopy pullbacks the pasting composite of successive homotopy cofibers of a given morphism f:A B f : A_\bullet \to B_\bullet looks like this:

A f B 0 ϕ 0 cone(f) A[1] 0 f[1] 0 B[1] cone(f)[1] \array{ A_\bullet &\stackrel{f}{\to}& B_\bullet &\to& 0 \\ \downarrow &\swArrow_{\mathrlap{\phi}}& \downarrow &\swArrow& \downarrow \\ 0 &\to& cone(f) &\to& A[1]_{\bullet} &\stackrel{}{\to}& 0 \\ && \downarrow &\swArrow& \downarrow^{\mathrlap{f[1]}} &\swArrow& \downarrow \\ && 0 &\to& B[1] &\to& cone(f)[1]_\bullet &\to& \cdots \\ && && \downarrow && \downarrow &\ddots& \\ && && \vdots && && }


  • cone(f)cone(f) is a specific representative of the homotopy cofiber of ff called the mapping cone of ff, whose construction comes with an explicit chain homotopy ϕ\phi as indicated, hence cone(f)cone(f) is homology-equivalence to C C_\bullet above, but is in general a “bigger” model of the homotopy cofiber;

  • A[1]A[1] etc. is the suspension of a chain complex of AA, hence the same chain complex but pushed up in degree by one.

In conclusion we get from every morphim of chain complexes a long homotopy cofiber sequence

A fB cone(f)A[1] f[1]B[1] cone(f)[1] . \cdots \to A_\bullet \stackrel{f}{\to}B_\bullet \stackrel{}{\to} cone(f) \stackrel{}{\to} A[1]_\bullet \stackrel{f[1]}{\to} B[1]_\bullet \stackrel{}{\to} cone(f)[1]_\bullet \to \cdots \,.

And applying the chain homology functor to this yields the long exact sequence in chain homology which is traditionally said to be associated to the short exact sequence A B C A_\bullet \to B_\bullet \to C_\bullet.

In conclusion this means that it is not really the passage to homology groups which “makes a short exact sequence become long”. It’s rather that passing to homology groups is a shadow of passing to chain complexes regarded up to quasi-isomorphism, and this is what makes every short exact sequence be realized as but a special presentation of a stage in a long homotopy fiber sequence.

We give a precise account of this story in the next section.

5) Homotopy fiber sequences and mapping cones

We have seen in 4) the long exact sequence in homology implied by a short exact sequence of chain complexes, constructed by an elementary if somewhat un-illuminating formula for the connecting homomorphism. We ended 4) by sketching how this formula arises as the shadow under the homology functor of a homotopy fiber sequence of chain complexes, constructed using mapping cones. This we now discuss in precise detail.

In the following we repeatedly mention that certain chain complexes are colimits of certain diagrams of chain complexes. The reader unfamiliar with colimits may simply ignore them and regard the given chain complex as arising by definition. However, even a vague intuitive understanding of the indicated colimits as formalizations of “gluing” of chain complexes along certain maps should help to motivate why these definitions are what they are. The reader unhappy even with this can jump ahead to prop. and take this and the following propositions up to and including prop. as definitions.

The notion of a mapping cone that we introduce now is something that makes sense whenever

  1. there is a notion of cylinder object, such as the topological cylinder [0,1]×X[0,1] \times X over a topological space, or the chain complex cylinder I X I_\bullet \otimes X_\bullet of a chain complex from def. .

  2. there is a way to glue objects along maps between them, a notion of colimit.


For f:XYf : X \to Y a morphism in a category with cylinder objects cyl()cyl(-), the mapping cone or homotopy cofiber of ff is the colimit in the following diagram

X f Y i 1 X i 0 cyl(X) * cone(f) \array{ && X &\stackrel{f}{\to}& Y \\ && \downarrow^{\mathrlap{i_1}} && \downarrow \\ X &\stackrel{i_0}{\to}& cyl(X) \\ \downarrow && &\searrow & \downarrow \\ {*} &\to& &\to& cone(f) }

in CC using any cylinder object cyl(X)cyl(X) for XX.


Heuristically this says that cone(f)cone(f) is the object obtained by

  1. forming the cylinder over XX;

  2. gluing to one end of that the object YY as specified by the map ff.

  3. shrinking the other end of the cylinder to the point.

Heuristically it is clear that this way every cycle in YY that happens to be in the image of XX can be “continuously” translated in the cylinder-direction, keeping it constant in YY, to the other end of the cylinder, where it becomes the point. This means that every homotopy group of YY in the image of ff vanishes in the mapping cone. Hence in the mapping cone the image of XX under ff in YY is removed up to homotopy. This makes it clear how cone(f)cone(f) is a homotopy-version of the cokernel of ff. And therefore the name “mapping cone”.

Another interpretation of the mapping cone is just as important:


A morphism η:cyl(X)Y\eta : cyl(X) \to Y out of a cylinder object is a left homotopy η:gh\eta : g \Rightarrow h between its restrictions gη(0)g\coloneqq \eta(0) and hη(1)h \coloneqq \eta(1) to the cylinder boundaries

X i 0 g cyl(X) η Y i 1 h X. \array{ X \\ \downarrow^{\mathrlap{i_0}} & \searrow^{\mathrlap{g}} \\ cyl(X) &\stackrel{\eta}{\to}& Y \\ \uparrow^{\mathrlap{i_1}} & \nearrow_{\mathrlap{h}} \\ X } \,.

Therefore prop. says that the mapping cone is the universal object with a morphism ii from YY and a left homotopy from ifi \circ f to the zero morphism.

X f Y η * cone(f) \array{ X &\stackrel{f}{\to}& Y \\ \downarrow &\swArrow_{\eta}& \downarrow \\ * &\to& cone(f) }

The interested reader can find more on the conceptual background of this construction at factorization lemma and at homotopy pullback.


This colimit, in turn, may be computed in two stages by two consecutive pushouts in CC, and in two ways by the following pasting diagram:

X f Y i 1 X i 0 cyl(X) cyl(f) * cone(X) cone(f). \array{ && X &\stackrel{f}{\to}& Y \\ && \downarrow^{i_1} && \downarrow \\ X &\stackrel{i_0}{\to}& cyl(X) &\to & cyl(f) \\ \downarrow && \downarrow && \downarrow \\ {*} &\to& cone(X) &\to& cone(f) } \,.

Here every square is a pushout, (and so by the pasting law is every rectangular pasting composite).

This now is a basic fact in ordinary category theory. The pushouts appearing here go by the following names:


The pushout

X i 0 cyl(X) * cone(X) \array{ X &\stackrel{i_0}{\to}& cyl(X) \\ \downarrow && \downarrow \\ {*} &\to& cone(X) }

defines the cone cone(X)cone(X) over XX (with respect to the chosen cylinder object): the result of taking the cylinder over XX and identifying one XX-shaped end with the point.

The pushout

X f Y cyl(X) cyl(f) \array{ X &\stackrel{f}{\to}& Y \\ \downarrow && \downarrow \\ cyl(X) &\to& cyl(f) }

defines the mapping cylinder cyl(f)cyl(f) of ff, the result of identifying one end of the cylinder over XX with YY, using ff as the gluing map.

The pushout

cyl(x) cyl(f) cone(X) cone(f) \array{ cyl(x) &\to& cyl(f) \\ \downarrow && \downarrow \\ cone(X) &\to& cone(f) }

defines the mapping cone cone(f)cone(f) of ff: the result of forming the cyclinder over XX and then identifying one end with the point and the other with YY, via ff.


As in remark all these step have evident heuristic geometric interpretations:

  1. cone(X)cone(X) is obtained from the cylinder over XX by contracting one end of the cylinder to the point;

  2. cyl(f)cyl(f) is obtained from the cylinder over XX by gluing YY to one end of the cylinder, as specified by the map ff;

We discuss now this general construction of the mapping cone cone(f)cone(f) for a chain map ff between chain complexes. The end result is prop. below, reproducing the classical formula for the mapping cone.


Write * Ch (𝒜)*_\bullet \in Ch_\bullet(\mathcal{A}) for the chain complex concentrated on RR in degree 0

* 0=[00R]. *_\bullet 0 = [\cdots \to 0 \to 0 \to R] \,.

This may be understood as the normalized chain complex of chains of simplices on the terminal simplicial set Δ 0\Delta^0, the 0-simplex.


Let I Ch (𝒜)I_\bullet \in Ch_{\bullet}(\mathcal{A}) be given by

I =(00R(id,id)RR). I_\bullet = (\cdots 0 \to 0 \to R \stackrel{(-id,id)}{\to} R \oplus R) \,.

Denote by

i 0:* I i_0 : *_\bullet \to I_\bullet

the chain map which in degree 0 is the canonical inclusion into the second summand of a direct sum and by

i 1:* I i_1 : *_\bullet \to I_\bullet

correspondingly the canonical inclusion into the first summand.


This is the standard interval object in chain complexes.

It is in fact the normalized chain complex of chains on a simplicial set for the canonical simplicial interval, the 1-simplex:

I =C (Δ[1]). I_\bullet = C_\bullet(\Delta[1]) \,.

The differential I=(id,id)\partial^I = (-id, id) here expresses the alternating face map complex boundary operator, which in terms of the three non-degenerate basis elements is given by

(01)=(1)(0). \partial ( 0 \to 1 ) = (1) - (0) \,.

We decompose the proof of this statement is a sequence of substatements.


For X Ch X_\bullet \in Ch_\bullet the tensor product of chain complexes

(IX) Ch (I \otimes X)_\bullet \in Ch_\bullet

is a cylinder object of X X_\bullet for the structure of a category of cofibrant objects on Ch Ch_\bullet whose cofibrations are the monomorphisms and whose weak equivalences are the quasi-isomorphisms (the substructure of the standard injective model structure on chain complexes).


In example above we saw the cyclinder over the interval itself: the square.


The complex (IX) (I \otimes X)_\bullet has components

(IX) n=X nX nX n1 (I \otimes X)_n = X_n \oplus X_n \oplus X_{n-1}

and the differential is given by

X n+1X n+1 X X X nX n (id,id) X n X X n1, \array{ X_{n+1} \oplus X_{n+1} &\stackrel{\partial^X \oplus \partial^X}{\to}& X_n \oplus X_n \\ \oplus &\nearrow_{(-id,id)}& \oplus \\ X_{n} &\underset{-\partial^X}{\to}& X_{n-1} } \,,

hence in matrix calculus by

IX=( X X (id,id) 0 X):(X n+1X n+1)X n(X nX n)X n1. \partial^{I \otimes X} = \left( \array{ \partial^X \oplus \partial^X & (-id, id) \\ 0 & -\partial^X } \right) : (X_{n+1} \oplus X_{n+1}) \oplus X_{n} \to (X_{n} \oplus X_{n}) \oplus X_{n-1} \,.

By the formula discussed at tensor product of chain complexes the components arise as the direct sum

(IX) n=(R (0)X n)(R (1)X n)(R (01)X (n1)) (I \otimes X )_n = (R_{(0)} \otimes X_n ) \oplus (R_{(1)} \otimes X_n ) \oplus (R_{(0 \to 1)} \otimes X_{(n-1)} )

and the differential picks up a sign when passed past the degree-1 term R (01)R_{(0 \to 1)}:

IX((01),x) =(( I(01)),x)((01), Xx) =((0)+(1),x)((01), Xx) =((0),x)+((1),x)((01), Xx). \begin{aligned} \partial^{I \otimes X} ( (0 \to 1), x ) &= ( (\partial^I (0 \to 1)), x ) - ( (0\to 1), \partial^X x ) \\ & = ( - (0) + (1), x ) - ( (0 \to 1), \partial^X x ) \\ & = -((0), x) + ((1), x) - ( (0 \to 1), \partial^X x ) \end{aligned} \,.

The two boundary inclusions of X X_\bullet into the cylinder are given in terms of def. by

i 0 X:X * X i 0id X(IX) i^X_0 : X_\bullet \simeq *_\bullet \otimes X_\bullet \stackrel{i_0 \otimes id_X}{\to} (I\otimes X)_\bullet


i 1 X:X * X i 1id X(IX) i^X_1 : X_\bullet \simeq *_\bullet \otimes X_\bullet \stackrel{i_1 \otimes id_X}{\to} (I\otimes X)_\bullet

which in components is the inclusion of the second or first direct summand, respectively

X nX nX nX n1. X_n \hookrightarrow X_n \oplus X_n \oplus X_{n-1} \,.

One part of definition now reads:


For f :X Y f_\bullet : X_\bullet \to Y_\bullet a chain map, the mapping cylinder cyl(f)cyl(f) is the pushout

cyl(f) Y f I X i 0 X . \array{ cyl(f)_\bullet &\leftarrow& Y_\bullet \\ \uparrow && \uparrow^{\mathrlap{f}} \\ I_\bullet \otimes X_\bullet &\stackrel{i_0}{\leftarrow}& X_\bullet } \,.

The components of cyl(f)cyl(f) are

cyl(f) n=X nY nX n1 cyl(f)_n = X_n \oplus Y_n \oplus X_{n-1}

and the differential is given by

X n+1Y n+1 X Y X nY n (id,f) X n X X n1, \array{ X_{n+1} \oplus Y_{n+1} &\stackrel{\partial^X \oplus \partial^Y}{\to}& X_n \oplus Y_n \\ \oplus &\nearrow_{(-id,f)}& \oplus \\ X_{n} &\underset{-\partial^X}{\to}& X_{n-1} } \,,

hence in matrix calculus by

cyl(f)=( X Y (id,f n) 0 X):(X n+1Y n+1)X n(X nY n)X n1. \partial^{cyl(f)} = \left( \array{ \partial^X \oplus \partial^Y & (-id, f_n) \\ 0 & -\partial^X } \right) : (X_{n+1} \oplus Y_{n+1}) \oplus X_{n} \to (X_{n} \oplus Y_{n}) \oplus X_{n-1} \,.

The colimits in a category of chain complexes Ch (𝒜)Ch_\bullet(\mathcal{A}) are computed in the underlying presheaf category of towers in 𝒜\mathcal{A}. There they are computed degreewise in 𝒜\mathcal{A} (since limits of presheaves are computed objectwise). Here the statement is evident:

the pushout identifies one direct summand X nX_n with Y nY_n along f nf_n and so where previously a id X nid_{X_n} appeared on the diagonl, there is now f nf_n.

The last part of definition now reads:


For f :X Y f_\bullet : X_\bullet \to Y_\bullet a chain map, the mapping cone cone(f)cone(f) is the pushout

cone(f) cyl(f) cone(X) XI i 1 0 X \array{ cone(f) &\leftarrow& cyl(f) \\ \uparrow && \uparrow \\ cone(X) &\leftarrow& X \otimes I \\ \uparrow && \uparrow^{\mathrlap{i_1}} \\ 0 &\leftarrow& X }

The components of the mapping cone cone(f)cone(f) are

cone(f) n=Y nX n1 cone(f)_n = Y_n \oplus X_{n-1}

with differential given by

Y n+1 Y Y n f n X n X X n1, \array{ Y_{n+1} &\stackrel{\partial^Y}{\to}& Y_n \\ \oplus &\nearrow_{f_n}& \oplus \\ X_{n} &\underset{-\partial^X}{\to}& X_{n-1} } \,,

and hence in matrix calculus by

cone(f)=( n Y f n 0 n X):Y n+1X nY nX n1. \partial^{cone(f)} = \left( \array{ \partial^Y_n & f_n \\ 0 & -\partial^X_n } \right) : Y_{n+1} \oplus X_{n} \to Y_{n} \oplus X_{n-1} \,.

As before the pushout is computed degreewise. This identifies the remaining unshifted copy of XX with 0.


For f:X Y f : X_\bullet \to Y_\bullet a chain map, the canonical inclusion i:Y cone(f) i : Y_\bullet \to cone(f)_\bullet of Y Y_\bullet into the mapping cone of ff is given in components

i n:Y ncone(f) n=Y nX n1 i_n : Y_n \to cone(f)_n = Y_n \oplus X_{n-1}

by the canonical inclusion of a summand into a direct sum.


This follows by starting with remark and then following these inclusions through the formation of the two colimits as discussed above.

Using these mapping cones of chain maps, we now explain how the long exact sequences of homology groups, prop. , are a shadow under homology of genuine homotopy cofiber sequences of the chain complexes themselves.

Let f:X Y f : X_\bullet \to Y_\bullet be a chain map and write cone(f)Ch (𝒜)cone(f) \in Ch_\bullet(\mathcal{A}) for its mapping cone as explicitly given in prop. .


Write X[1] Ch (𝒜)X[1]_\bullet \in Ch_\bullet(\mathcal{A}) for the suspension of a chain complex of XX. Write

p:cone(f)X[1] p : cone(f) \to X[1]_\bullet

for the chain map which in components

p n:cone(f) nX[1] n p_n : cone(f)_n \to X[1]_n

is given, via prop. , by the canonical projection out of a direct sum

p n:Y nX n1X n1. p_n : Y_\n \oplus X_{n-1} \to X_{n-1} \,.

This defines the mapping cone construction on chain complex. Its definition as a universal left homotopy should make the following proposition at least plausible, which we cannot prove yet at this point, but which we state nevertheless to highlight the meaning of the mapping cone construction. The tools for the proof of propositions like this are discussed further below in 7) Derived categories and derived functors.


The chain map p:cone(f) X[1] p : cone(f)_\bullet \to X[1]_\bullet represents the homotopy cofiber of the canonical map i:Y cone(f) i : Y_\bullet \to cone(f)_\bullet.


By prop. and def. the sequence

Y icone(f) pX[1] Y_\bullet \stackrel{i}{\to} cone(f)_\bullet \stackrel{p}{\to} X[1]_\bullet

is a short exact sequence of chain complexes (since it is so degreewise, in fact degreewise it is even a split exact sequence, def. ). In particular we have a cofiber pushout diagram

Y i cone(f) 0 X[1] . \array{ Y_\bullet &\stackrel{i}{\hookrightarrow}& cone(f)_\bullet \\ \downarrow && \downarrow \\ 0 &\to& X[1]_\bullet } \,.

Now, in the injective model structure on chain complexes all chain complexes are cofibrant objects and an inclusion such as i:Y cone(f) i : Y_\bullet \hookrightarrow cone(f)_\bullet is a cofibration. By the detailed discussion at homotopy limit this means that the ordinary colimit here is in fact a homotopy colimit, hence exhibits pp as the homotopy cofiber of ii.

Accordingly one says:


For f :X Y f_\bullet : X_\bullet \to Y_\bullet a chain map, there is a homotopy cofiber sequence of the form

X f Y i cone(f) p X[1] f[1] Y i[1] cone(f) p[1] X[2] X_\bullet \stackrel{f_\bullet}{\to} Y_\bullet \stackrel{i_\bullet}{\to} cone(f)_\bullet \stackrel{p_\bullet}{\to} X[1]_\bullet \stackrel{f[1]_\bullet}{\to} Y_\bullet \stackrel{i[1]_\bullet}{\to} cone(f)_\bullet \stackrel{p[1]_\bullet}{\to} X[2]_\bullet \to \cdots

In order to compare this to the discussion of connecting homomorphisms, we now turn attention to the case that f f_\bullet happens to be a monomorphism. Notice that this we can always assume, up to quasi-isomorphism, for instance by prolonging ff by the map into its mapping cylinder

X Y cyl(f). X_\bullet \to Y_\bullet \stackrel{\simeq}{\to} cyl(f) \,.

By the axioms on an abelian category in this case we have a short exact sequence

0X f Y p Z 0 0 \to X_\bullet \stackrel{f_\bullet}{\to} Y_\bullet \stackrel{p_\bullet}{\to} Z_\bullet \to 0

of chain complexes. The following discussion revolves around the fact that now cone(f) cone(f)_\bullet as well as Z Z_\bullet are both models for the homotopy cofiber of ff.



X f Y p Z X_\bullet \stackrel{f_\bullet}{\to} Y_\bullet \stackrel{p_\bullet}{\to} Z_\bullet

be a short exact sequence of chain complexes.

The collection of linear maps

h n:Y nX n1Y nZ n h_n : Y_n \oplus X_{n-1} \to Y_n \stackrel{}{\to} Z_n

constitutes a chain map

h :cone(f) Z . h_\bullet : cone(f)_\bullet \to Z_\bullet \,.

This is a quasi-isomorphism. The inverse of H n(h )H_n(h_\bullet) is given by sending a representing cycle zZ nz \in Z_n to

(z^ n, Yz^ n)Y nX n+1, (\hat z_n, \partial^Y \hat z_n) \in Y_n \oplus X_{n+1} \,,

where z^ n\hat z_n is any choice of lift through p np_n and where Yz^ n\partial^Y \hat z_n is the formula expressing the connecting homomorphism in terms of elements, as discussed at Connecting homomorphism – In terms of elements.

Finally, the morphism i :Y cone(f) i_\bullet : Y_\bullet \to cone(f)_\bullet is eqivalent in the homotopy category (the derived category) to the zigzag

cone(f) h Y Z . \array{ && cone(f)_\bullet \\ && \downarrow^{\mathrlap{h}}_{\mathrlap{\simeq}} \\ Y_\bullet &\to& Z_\bullet } \,.

To see that h h_\bullet defines a chain map recall the differential cone(f)\partial^{cone(f)} from prop. , which acts by

cone(f)(x n1,z^ n)=( Xx n1, Yz^ n+x n1) \partial^{cone(f)} (x_{n-1}, \hat z_n) = ( -\partial^X x_{n-1} , \partial^Y \hat z_n + x_{n-1} )

and use that x n1x_{n-1} is in the kernel of p np_n by exactness, hence

h n1 cone(f)(x n1,z^ n) =h n1( Xx n1, Yz^ n+x n1) =p n1( Yz^ n+x n1) =p n1( Yz^ n) = Zp nz^ n = Zh n(x n1,z^ n). \begin{aligned} h_{n-1}\partial^{cone(f)}(x_{n-1}, \hat z_n) &= h_{n-1}( -\partial^X x_{n-1}, \partial^Y \hat z_n + x_{n-1} ) \\ & = p_{n-1}( \partial^Y \hat z_n + x_{n-1}) \\ & = p_{n-1}( \partial^Y \hat z_n ) \\ & = \partial^Z p_n \hat z_n \\ & = \partial^Z h_n(x_{n-1}, \hat z_n) \end{aligned} \,.

It is immediate to see that we have a commuting diagram of the form

cone(f) i h Y Z \array{ && cone(f)_\bullet \\ & {}^{\mathllap{i_\bullet}}\nearrow& \downarrow^{\mathrlap{h}}_{\mathrlap{\simeq}} \\ Y_\bullet &\to& Z_\bullet }

since the composite morphism is the inclusion of YY followed by the bottom morphism on YY.

Abstractly, this already implies that cone(f) Z cone(f)_\bullet \to Z_\bullet is a quasi-isomorphism, for this diagram gives a morphism of cocones under the diagram defining cone(f)cone(f) in prop. and by the above both of these cocones are homotopy-colimiting.

But in checking the claimed inverse of the induced map on homology groups, we verify this also explicity:

We first determine those cycles (x n1,y n)cone(f) n(x_{n-1}, y_n) \in cone(f)_n which lift a cycle z nz_n. By lemma a lift of chains is any pair of the form (x n1,z^ n)(x_{n-1}, \hat z_n) where z^ n\hat z_n is a lift of z nz_n through Y nX nY_n \to X_n. So x n1x_{n-1} has to be found such that this pair is a cycle. By prop. the differential acts on it by

cone(f)(x n1,z^ n)=( Xx n1, Yz^ n+x n1) \partial^{cone(f)} (x_{n-1}, \hat z_n) = ( -\partial^X x_{n-1} , \partial^Y \hat z_n + x_{n-1} )

and so the condition is that

x n1 Yz^ nx_{n-1} \coloneqq -\partial^Y \hat z_n (which implies Xx n1= X Yz^ n= Y Yz^ n=0\partial^X x_{n-1} = -\partial^X \partial^Y \hat z_n = -\partial^Y \partial^Y \hat z_n = 0 due to the fact that f nf_n is assumed to be an inclusion, hence that X\partial^X is the restriction of Y\partial^Y to elements in X nX_n).

This condition clearly has a unique solution for every lift z^ n\hat z_n and a lift z^ n\hat z_n always exists since p n:Y nZ np_n : Y_n \to Z_n is surjective, by assumption that we have a short exact sequence of chain complexes. This shows that H n(h )H_n(h_\bullet) is surjective.

To see that it is also injective we need to show that if a cycle ( Yz^ n,z^ n)cone(f) n(-\partial^Y \hat z_n, \hat z_n) \in cone(f)_n maps to a cycle z n=p n(z^ n)z_n = p_n(\hat z_n) that is trivial in H n(Z)H_n(Z) in that there is c n+1c_{n+1} with Zc n+1=z n\partial^Z c_{n+1} = z_n, then also the original cycle was trivial in homology, in that there is (x n,y n+1)(x_n, y_{n+1}) with

cone(f)(x n,y n+1)( Xx n, Yy n+1+x n)=( Yz^ n,z^ n). \partial^{cone(f)}(x_n, y_{n+1}) \coloneqq (-\partial^X x_n, \partial^Y y_{n+1} + x_n) = (-\partial^Y \hat z_n, \hat z_n) \,.

For that let c^ n+1Y n+1\hat c_{n+1} \in Y_{n+1} be a lift of c n+1c_{n+1} through p np_n, which exists again by surjectivity of p n+1p_{n+1}. Observe that

p n(z^ n Yc^ n+1)=z n Z(p nc^ n+1)=z n Z(c n+1)=0 p_{n}( \hat z_n - \partial^Y \hat c_{n+1}) = z_n -\partial^Z ( p_n \hat c_{n+1} ) = z_n - \partial^Z ( c_{n+1} ) = 0

by assumption on z nz_n and c n+1c_{n+1}, and hence that z^ n Yc^ n+1\hat z_n - \partial^Y \hat c_{n+1} is in X nX_n by exactness.

Hence (z n Yc^ n+1,c^ n+1)cone(f) n(z_n - \partial^Y \hat c_{n+1}, \hat c_{n+1}) \in cone(f)_n trivializes the given cocycle:

cone(f)(z^ n Yc^ n+1,c^ n+1) =( X(z^ n Yc^ n+1), Yc^ n+1+(z^ n Yc^ n+1)) =( Y(z^ n Yc^ n+1),z^ n) =( Yz^ n,z^ n). \begin{aligned} \partial^{cone(f)}( \hat z_n - \partial^Y \hat c_{n+1} , \hat c_{n+1}) & = (-\partial^X(\hat z_n - \partial^Y \hat c_{n+1} ), \partial^Y \hat c_{n+1} + (\hat z_n - \partial^Y \hat c_{n+1} ) ) \\ & = (-\partial^Y(\hat z_n - \partial^Y \hat c_{n+1}), \hat z_n ) \\ & = ( -\partial^Y \hat z_n, \hat z_n ) \end{aligned} \,.


X f Y Z X_\bullet \stackrel{f_\bullet}{\to} Y_\bullet \to Z_\bullet

be a short exact sequence of chain complexes.

Then the chain homology functor

H n():Ch (𝒜)𝒜 H_n(-) : Ch_\bullet(\mathcal{A}) \to \mathcal{A}

sends the homotopy cofiber sequence of ff, cor. , to the long exact sequence in homology induced by the given short exact sequence, hence to

H n(X )H n(Y )H n(Z )δH n1(X )H n1(Y )H n1(Z )δH n2(X ), H_n(X_\bullet) \to H_n(Y_\bullet) \to H_n(Z_\bullet) \stackrel{\delta}{\to} H_{n-1}(X_\bullet) \to H_{n-1}(Y_\bullet) \to H_{n-1}(Z_\bullet) \stackrel{\delta}{\to} H_{n-2}(X_\bullet) \to \cdots \,,

where δ n\delta_n is the nnth connecting homomorphism.


By lemma the homotopy cofiber sequence is equivalen to the zigzag

cone(f)[1] h[1] cone(f) X[1] f[1] Y[1] Z[1] h X f Y Z . \array{ && && && && && cone(f)[1]_\bullet &\to& \cdots \\ && && && && && \downarrow^{\mathrlap{h[1]_\bullet}}_{\mathrlap{\simeq}} \\ && && cone(f)_\bullet &\to& X[1]_\bullet &\stackrel{f[1]_\bullet}{\to}& Y[1]_\bullet &\to& Z[1]_\bullet \\ && && \downarrow^{\mathrlap{h_\bullet}}_{\mathrlap{\simeq}} \\ X_\bullet &\stackrel{f_\bullet}{\to}& Y_\bullet &\stackrel{}{\to}& Z_\bullet } \,.

Observe that

H n(X[k] )H nk(X ). H_n( X[k]_\bullet) \simeq H_{n-k}(X_\bullet) \,.

It is therefore sufficient to check that

H n(cone(f) X[1] Z ):H n(Z )H n(cone(f) )H n1(X ) H_n \left( \array{ cone(f)_\bullet &\to& X[1]_\bullet \\ \downarrow^{\mathrlap{\simeq}} \\ Z_\bullet } \right) \;\; : \;\; H_n(Z_\bullet) \to H_n(cone(f)_\bullet) \to H_{n-1}(X_\bullet)

equals the connecting homomorphism δ n\delta_n induced by the short exact sequence.

By prop. the inverse of the vertical map is given by choosing lifts and forming the corresponding element given by the connecting homomorphism. By prop. the horizontal map is just the projection, and hence the assignment is of the form

[z n][x n1,y n][x n1]. [z_n] \mapsto [x_{n-1}, y_n] \mapsto [x_{n-1}] \,.

So in total the image of the zig-zag under homology sends

[z n] Z[ Yz^ n] X. [z_n]_Z \mapsto -[\partial^Y \hat z_n]_X \,.

By the discussion there, this is indeed the action of the connecting homomorphism.

In summary, the above says that for every chain map f :X Y f_\bullet : X_\bullet \to Y_\bullet we obtain maps

X fY (0 id Y )cone(f) (id X[1] 0)X[1] X_\bullet \stackrel{f}{\to} Y_\bullet \stackrel{ \left( \array{ 0 \\ id_{Y_\bullet} } \right) }{\to} cone(f)_\bullet \stackrel{ \left( \array{ id_{X[1]_\bullet} & 0 } \right) }{\to} X[1]_\bullet

which form a homotopy fiber sequence and such that this sequence continues by forming suspensions, hence for all nn \in \mathbb{Z} we have

X[n] fY[n] (0 id Y[n] )cone(f)[n] (id X[n+11] 0)X[n+1] X[n]_\bullet \stackrel{f}{\to} Y[n]_\bullet \stackrel{ \left( \array{ 0 \\ id_{Y[n]_\bullet} } \right) }{\to} cone(f)[n]_\bullet \stackrel{ \left( \array{ id_{X[n+11]_\bullet} & 0 } \right) }{\to} X[n+1]_\bullet

To amplify this quasi-cyclic behaviour one sometimes depicts the situation as follows:

X f Y [1] cone(f) \array{ X_\bullet &&\stackrel{f}{\to}&& Y_\bullet \\ & {}_{\mathllap{[1]}}\nwarrow && \swarrow \\ && cone(f)_\bullet }

and hence speaks of a “triangle”, or distinguished triangle or mapping cone triangle of ff.

Due to these “triangles” one calls the homotopy category of chain complexes localized at the quasi-isomorphisms, hence the derived category which we discuss below in 8), a triangulated category.

6) Double complexes and the diagram chasing lemmas

We have seen in the discussion of the connecting homomorphism in the homology long exact sequence in 4) above that given an exact sequence of chain complexes – hence in particular a chain complex of chain complexes – there are interesting ways to relate elements on the far right to elements on the far left in lower degree. In 5) we had given the conceptual explanation of this phenomenon in terms of long homotopy fiber sequences. But often it is just computationally useful to be able to efficiently establish and compute these “long diagram chase”-relations, independently of a homotopy-theoretic interpretation. Such computational tools we discuss here.

A chain complex of chain complex is called a double complex and so we first introduce this elementary notion and the corresponding notion notion of total complex. (Total complexes are similarly elementary to define but will turn out to play a deeper role as models for homotopy colimits, this we indicate further below in chapter V)).

There is a host of classical diagram-chasing lemmas that relate far-away entries in double complexes that enjoy suitable exactness properties. These go by names such as the snake lemma or the 3x3 lemma. The underlying mechanism of all these lemmas is made most transparent in the salamander lemma. This is fairly trivial to establish, and the notions it induces allow quick transparent proofs of all the other diagram-chasing lemmas.

The discussion to go here is kept at salamander lemma. See there.

Abelian homotopy theory

We have seen in section II) that the most interesting properties of the category of chain complexes is all secretly controled by the phenomenon of chain homotopy and quasi-isomorphism. Strictly speaking these two phenomena point beyond plain category theory to the richer context of general abstract homotopy theory. Here we discuss properties of the category of chain complexes from this genuine homotopy-theoretic point of view. The result of passing the category of chain complexes to genuine homotopy theory is called the derived category (of the underlying abelian category 𝒜\mathcal{A}, say of modules) and we start in 7) with a motivation of the phenomenon of this “homotopy derivation” and the discussion of the necessary resolutions of chain complexes. This naturally gives rise to the general notion of derived functors which we discuss in 8). Examples of these are ubiquituous in homological algebra, but as in ordinary enriched category theory two stand out as being of more fundamental importance, the derived functor “Ext” of the hom-functor and the derived functor “Tor” of the tensor product functor. Their properties and uses we discuss in 9).

7) Chain homotopy and resolutions

We now come back to the category 𝒦(𝒜)\mathcal{K}(\mathcal{A}) of def. , the “homotopy category of chain complexes” in which chain-homotopic chain maps are identified. This would seem to be the right context to study the homotopy theory of chain complexes, but one finds that there are still chain maps which ought to be identified in homotopy theory, but which are still not identified in 𝒦(𝒜)\mathcal{K}(\mathcal{A}). This is our motivating example below.

We discuss then how this problem is fixed by allowing to first “resolve” chain complexes quasi-isomorphically by “good representatives” called projective resolutions or injective resolutions. Many of the computations in the following sections – and in homological algebra in general – come down to operating on such resolutions. We end this section by prop. below, which shows that the above problem indeed goes away when allowing chain complexes to be resolved.

In the next section, 8), we discuss how this process of forming resolutions functorially extends to the whole category of modules.

So we start here with this simple example that shows the problem with bare chain homotopies and indicates how these have to be resolved:


In Ch (𝒜)Ch_\bullet(\mathcal{A}) for 𝒜=\mathcal{A} = Ab consider the chain map

0 0 0 2 id 0 2 mod2 2. \array{ \cdots &\to& 0 &\to& 0 &\to& 0 &\to& \mathbb{Z}_2 \\ && \downarrow && \downarrow && \downarrow && \downarrow^{\mathrlap{id}} \\ \cdots &\to& 0 &\to& \mathbb{Z} &\stackrel{\cdot 2}{\to}& \mathbb{Z} &\stackrel{mod\,2}{\to}& \mathbb{Z}_2 } \,.

The codomain of this map is an exact sequence, hence is quasi-isomorphic to the 0-chain complex. Thereofore in homotopy theory it should behave entirely as the 0-complex itself. In particular, every chain map to it should be chain homotopic to the zero morphism (have a null homotopy).

But the above chain map is chain homotopic precisely only to itself. This is because the degree-0 component of any chain homotopy out of this has to be a homomorphism of abelian groups 2\mathbb{Z}_2 \to \mathbb{Z}, and this must be the 0-morphism, because \mathbb{Z} is a free group, but 2\mathbb{Z}_2 is not.

This points to the problem: the components of the domain chain complex are not free enough to admit sufficiently many maps out of it.

Consider therefore a free resolution of the above domain complex by the quasi-isomorphism

0 0 2 mod2 0 0 0 2, \array{ \cdots &\to& 0 &\to& 0 &\to& \mathbb{Z} &\stackrel{\cdot 2}{\to}& \mathbb{Z} \\ && \downarrow && \downarrow && \downarrow && \downarrow^{\mathrlap{mod\,2}} \\ \cdots &\to& 0 &\to& 0 &\to& 0 &\to& \mathbb{Z}_2 } \,,

where now the domain complex consists entirely of free groups. The composite of this with the original chain map is now

0 0 2 0 mod2 0 2 mod2 2. \array{ \cdots &\to& 0 &\to& 0 &\to& \mathbb{Z} &\stackrel{\cdot 2}{\to}& \mathbb{Z} \\ && \downarrow && \downarrow && \downarrow^{0} && \downarrow^{\mathrlap{mod\,2}} \\ \cdots &\to& 0 &\to& \mathbb{Z} &\stackrel{\cdot 2}{\to}& \mathbb{Z} &\stackrel{mod\,2}{\to}& \mathbb{Z}_2 } \,.

This is the corresponding resolution of the original chain map. And this indeed has a null homotopy:

0 0 2 id 0 id mod2 0 2 mod2 2. \array{ \cdots &\to& 0 &\to& 0 &\to& \mathbb{Z} &\stackrel{\cdot 2}{\to}& \mathbb{Z} \\ && \downarrow &\swarrow& \downarrow &\swarrow_{-id}& \downarrow^{0} &\swarrow_{\mathrlap{id}}& \downarrow^{\mathrlap{mod\,2}} \\ \cdots &\to& 0 &\to& \mathbb{Z} &\stackrel{\cdot 2}{\to}& \mathbb{Z} &\stackrel{mod\,2}{\to}& \mathbb{Z}_2 } \,.

So resolving the domain by a sufficiently free complex makes otherwise missing chain homotopies exist. Below in lemma we discuss the general theory behind the kind of situation of this example. But to get there we first need some basic notions and facts.

Notably, in general it is awkward to insist on actual free resolutions. But it is easy to see, and this we discuss now, that essentially just as well is a resolution by modules which are direct summands of free modules.


An object PP of a category CC is a projective object if it has the left lifting property against epimorphisms.

This means that PP is projective if for any morphism f:PBf:P \to B and any epimorphism q:ABq:A \to B, ff factors through qq by some morphism PAP\to A.

A q P f B. \array{ && A \\ &{}^{\mathllap{\exists}}\nearrow& \downarrow^{\mathrlap{q}} \\ P &\stackrel{f}{\to}& B } \,.

An equivalent way to say this is that:


An object PP is projective precisely if the hom-functor Hom(P,)Hom(P,-) preserves epimorphisms.


The point of this lifting property will become clear when we discuss the construction of projective resolutions a bit further below: they are built by applying this property degreewise to obtain suitable chain maps.

We will be interested in projective objects in the category RRMod: projective modules. Before we come to that, notice the following example (which the reader may on first sight feel is pedantic and irrelevant, but for the following it is actually good to make this explicit).


In the category Set of sets the following are equivalent


We will assume here throughout the axiom of choice in Set, as usual. The point of the above example, however, is that one could just as well replace Set by another “base topos” which will behave essentially precisely like Set, but in general will not validate the axiom of choice. Homological algebra in such a more general context is the theory of complexes of abelian sheaves/sheaves of abelian groups and ultimately the theory of abelian sheaf cohomology.

This is a major aspect of homological algebra. While we will not discuss this further here in this introduction, the reader might enjoy keeping in mind that all of the following discussion of resolutions of RR-modules goes through in this wider context of sheaves of modules except for subtleties related to the (partial) failure of example for the category of sheaves.

We now characterize projective modules.


Assuming the axiom of choice, a free module NR (S)N \simeq R^{(S)} is projective.


Explicitly: if SSetS \in Set and F(S)=R (S)F(S) = R^{(S)} is the free module on SS, then a module homomorphism F(S)NF(S) \to N is specified equivalently by a function f:SU(N)f : S \to U(N) from SS to the underlying set of NN, which can be thought of as specifying the images of the unit elements in R (S) sSRR^{(S)} \simeq \oplus_{s \in S} R of the |S|{\vert S\vert} copies of RR.

Accordingly then for N˜N\tilde N \to N an epimorphism, the underlying function U(N˜)U(N)U(\tilde N) \to U(N) is an epimorphism, and the axiom of choice in Set says that we have all lifts f˜\tilde f in

U(N˜) f˜ S f U(N). \array{ && U(\tilde N) \\ & {}^{\tilde f} \nearrow & \downarrow \\ S &\stackrel{f}{\to}& U(N) } \,.

By adjunction these are equivalently lifts of module homomorphisms

N˜ R (S) N. \array{ && \tilde N \\ & \nearrow & \downarrow \\ R^{(S)} &\stackrel{}{\to}& N } \,.

If NRModN \in R Mod is a direct summand of a free module, hence if there is NRModN' \in R Mod and SSetS \in Set such that

R (S)NN, R^{(S)} \simeq N \oplus N' \,,

then NN is a projective module.


Let K˜K\tilde K \to K be a surjective homomorphism of modules and f:NKf : N \to K a homomorphism. We need to show that there is a lift f˜\tilde f in

K˜ f˜ N f K. \array{ && \tilde K \\ & {}^{\mathllap{\tilde f}}\nearrow & \downarrow \\ N &\stackrel{f}{\to}& K } \,.

By definition of direct sum we can factor the identity on NN as

id N:NNNN. id_N : N \to N \oplus N' \to N \,.

Since NNN \oplus N' is free by assumption, and hence projective by lemma , there is a lift f^\hat f in

K˜ f^ N NN K. \array{ && && \tilde K \\ && & {}^{\mathllap{\hat f}}\nearrow & \downarrow \\ N &\to& N \oplus N' &\to& K } \,.

Hence f˜:NNNf^K˜\tilde f : N \to N \oplus N' \stackrel{\hat f}{\to} \tilde K is a lift of ff.


An RR-module NN is projective precisely if it is the direct summand of a free module.


By lemma if NN is a direct summand then it is projective. So we need to show the converse.

Let F(U(N))F(U(N)) be the free module on the set U(N)U(N) underlying NN, hence the direct sum

F(U(n))= nU(n)R. F(U(n)) = \oplus_{n \in U(n)} R \,.

There is a canonical module homomorphism

nU(N)RN \oplus_{n \in U(N)} R \to N

given by sending the unit 1R n1 \in R_n of the copy of RR in the direct sum labeled by nU(n)n \in U(n) to nNn \in N.

(Abstractly this is the counit ϵ:F(U(N))N\epsilon : F(U(N)) \to N of the free/forgetful-adjunction (FU)(F \dashv U).)

This is clearly an epimorphism. Thefore if NN is projective, there is a section ss of ϵ\epsilon. This exhibits NN as a direct summand of F(U(N))F(U(N)).

We discuss next how to build resolutions of chain complexes by projective modules. But before we come to that it is useful to also introduce the dual notion. So far we have concentrated on chain complexes with degrees in the natural numbers: non-negative degrees. For a discussion of resolutions we need a more degree-symmetric perspective, which of course is straightforward to obtain.


A cochain complex C C^\bullet in 𝒜=RMod\mathcal{A} = R Mod is a sequence of morphism

C 0d 0C 1d 1C 2d 2 C^0 \stackrel{d^0}{\to} C^1 \stackrel{d^1}{\to} C^2 \stackrel{d^2}{\to} \cdots

in 𝒜\mathcal{A} such that dd=0d\circ d = 0. A homomorphism of cochain complexes f :C D f^\bullet : C^\bullet \to D^\bullet is a collection of morphisms {f n:C nD n}\{f^n : C^n \to D^n\} such that d D nf n=f nd C nd^n_D \circ f^n = f^n \circ d^n_C for all nn \in \mathbb{N}.

We write Ch (𝒜)Ch^\bullet(\mathcal{A}) for the category of cochain complexes.


Let N𝒜N \in \mathcal{A} be a fixed module and C Ch (𝒜)C_\bullet \in Ch_\bullet(\mathcal{A}) a chain complex. Then applying degreewise the hom-functor out of the components of C C_\bullet into NN yields a cochain complex in Mod\mathbb{Z} Mod \simeq Ab:

Hom 𝒜(C ,N)=[Hom 𝒜(C 0,N)Hom 𝒜( 0,N)Hom 𝒜(C 1,N)Hom 𝒜( 1,N)Hom 𝒜(C 2,N)Hom 𝒜( 2,N)]. Hom_{\mathcal{A}}(C_\bullet, N) = \left[ Hom_{\mathcal{A}}(C_0, N) \stackrel{Hom_{\mathcal{A}}(\partial_0, N)}{\to} Hom_{\mathcal{A}}(C_1, N) \stackrel{Hom_{\mathcal{A}}(\partial_1, N)}{\to} Hom_{\mathcal{A}}(C_2, N) \stackrel{Hom_{\mathcal{A}}(\partial_2, N)}{\to} \cdots \right] \,.

In example let 𝒜=\mathcal{A} = \mathbb{Z}Mod == Ab, let N=N = \mathbb{Z} and let C =[Sing(X)]C_\bullet = \mathbb{Z}[Sing(X)] be the singular simplicial complex of a topological space XX. Write

C (X)Hom [SingX],. C^\bullet(X) \coloneqq Hom_{\mathbb{Z}[Sing X], \mathbb{Z}} \,.

Then H (C(X))H^\bullet(C(X)) is called the singular cohomology of XX.


Example is just a special case of the internal hom of def. : we may regard cochain complexes in non-negative degree equivalently as chain complexes in positive degree.

Accordingly we say for C C^\bullet a cochain complex that

  • an element in C nC^n is an nn-cochain

  • an element in im(d n1)im(d^{n-1}) is an nn-coboundary

  • al element in ker(d n)ker(d^n) is an nn-cocycle.

But equivalently we may regard a cochain in degree nn as a chain in degree (n)(-n) and so forth. And this is the perspective used in all of the following.

The role of projective objects, def. , for chain complexes is played, dually, by injective objects for cochain complexes:


An object II a category is injective if all diagrams of the form

X I Z \array{ X &\to& I \\ {}^{}\downarrow \\ Z }

with XZX \to Z a monomorphism admit an extension

X I Z. \array{ X &\to& I \\ {}^{}\downarrow & \nearrow_{\mathrlap{\exists}} \\ Z } \,.

Since we are interested in refining modules by projective or injective modules, we have the following terminology.


A category

We have essentially already seen the following statement.


Assuming the axiom of choice, the category RRMod has enough projectives.


Let F(U(N))F(U(N)) be the free module on the set U(N)U(N) underlying NN. By lemma this is a projective module.

The canonical morphism

F(U(n))= nU(n)RN F(U(n)) = \oplus_{n \in U(n)} R \to N

is clearly a surjection, hence an epimorphism in RRMod.

We now show that similarly RModR Mod has enough injectives. This is a little bit more work and hence we proceed with a few preparatory statements.

The following basic statement of algebra we cite here without proof (but see at injective object for details).


Assuming the axiom of choice, an abelian group AA is injective as a \mathbb{Z}-module precisely if it is a divisible group, in that for all integers nn \in \mathbb{N} we have nG=Gn G = G.


By prop. the following abelian groups are injective in Ab.

The group of rational numbers \mathbb{Q} is injective in Ab, as is the additive group of real numbers \mathbb{R} and generally that underlying any field. The additive group underlying any vector space is injective. The quotient of any injective group by any other group is injective.


Not injective in Ab are the cyclic groups /n\mathbb{Z}/n\mathbb{Z}.


Assuming the axiom of choice, the category \mathbb{Z}Mod \simeq Ab has enough injectives.


By prop. an abelian group is an injective \mathbb{Z}-module precisely if it is a divisible group. So we need to show that every abelian group is a subgroup of a divisible group.

To start with, notice that the group \mathbb{Q} of rational numbers is divisible and hence the canonical embedding \mathbb{Z} \hookrightarrow \mathbb{Q} shows that the additive group of integers embeds into an injective \mathbb{Z}-module.

Now by the discussion at projective module every abelian group AA receives an epimorphism ( sS)A(\oplus_{s \in S} \mathbb{Z}) \to A from a free abelian group, hence is the quotient group of a direct sum of copies of \mathbb{Z}. Accordingly it embeds into a quotient A˜\tilde A of a direct sum of copies of \mathbb{Q}.

ker = ker ( sS) ( sS) A A˜ \array{ ker &\stackrel{=}{\to}& ker \\ \downarrow && \downarrow \\ (\oplus_{s \in S} \mathbb{Z}) &\hookrightarrow& (\oplus_{s \in S} \mathbb{Q}) \\ \downarrow && \downarrow \\ A &\hookrightarrow& \tilde A }

Here A˜\tilde A is divisible because the direct sum of divisible groups is again divisible, and also the quotient group of a divisible groups is again divisble. So this exhibits an embedding of any AA into a divisible abelian group, hence into an injective \mathbb{Z}-module.


Assuming the axiom of choice, for RR a ring, the category RRMod has enough injectives.

The proof uses the following lemma.

Write U:RModAbU\colon R Mod \to Ab for the forgetful functor that forgets the RR-module structure on a module NN and just remembers the underlying abelian group U(N)U(N).


The functor U:RModAbU\colon R Mod \to Ab has a right adjoint

R *:AbRMod R_* : Ab \to R Mod

given by sending an abelian group AA to the abelian group

U(R *(A))Ab(U(R),A) U(R_*(A)) \coloneqq Ab(U(R),A)

equipped with the RR-module struture by which for rRr \in R an element (U(R)fA)U(R *(A))(U(R) \stackrel{f}{\to} A) \in U(R_*(A)) is sent to the element rfr f given by

rf:rf(rr). r f : r' \mapsto f(r' \cdot r) \,.

This is called the coextension of scalars along the ring homomorphism R\mathbb{Z} \to R.

The unit of the (UR *)(U \dashv R_*) adjunction

ϵ N:NR *(U(N)) \epsilon_N : N \to R_*(U(N))

is the RR-module homomorphism

ϵ N:NHom Ab(U(R),U(N)) \epsilon_N : N \to Hom_{Ab}(U(R), U(N))

given on nNn \in N by

j(n):rrn. j(n) : r \mapsto r n \,.

of prop.

Let NRModN \in R Mod. We need to find a monomorphism NN˜N \to \tilde N such that N˜\tilde N is an injective RR-module.

By prop. there exists a monomorphism

i:U(N)D i \colon U(N) \hookrightarrow D

of the underlying abelian group into an injective abelian group DD.

Now consider the (UR *)(U \dashv R_*)-adjunct

NR *(D) N \to R_*(D)

of ii, hence the composite

Nη NR *(U(N))R *(i)R *(D) N \stackrel{\eta_N}{\to} R_*(U(N)) \stackrel{R_*(i)}{\to} R_*(D)

with R *R_* and η N\eta_N from lemma . On the underlying abelian groups this is

U(N)U(η N)Hom Ab(U(R),U(N))Hom Ab(U(R),i)Hom Ab(U(R),U(D)). U(N) \stackrel{U(\eta_N)}{\to} Hom_{Ab}(U(R), U(N)) \stackrel{Hom_{Ab}(U(R),i)}{\to} Hom_{Ab}(U(R),U(D)) \,.

Hence this is monomorphism. Therefore it is now sufficient to see that Hom Ab(U(R),U(D))Hom_{Ab}(U(R), U(D)) is an injective RR-module.

This follows from the existence of the adjunction isomorphism given by lemma

Hom Ab(U(K),U(D))Hom RMod(K,Hom Ab(U(R),U(D))) Hom_{Ab}(U(K),U(D)) \simeq Hom_{R Mod}(K, Hom_{Ab}(U(R), U(D)))

natural in KRModK \in R Mod and from the injectivity of DAbD \in Ab.

U(K) D U(L)K R *D L. \array{ U(K) &\to& D \\ \downarrow & \nearrow \\ U(L) } \;\;\;\;\; \leftrightarrow \;\;\;\;\; \array{ K &\to& R_*D \\ \downarrow & \nearrow \\ L } \,.

Now we can state the main definition of this section and discuss its central properties.


For X𝒜X \in \mathcal{A} an object, an injective resolution of XX is a cochain complex J Ch (𝒜)J^\bullet \in Ch^\bullet(\mathcal{A}) (in non-negative degree) equipped with a quasi-isomorphism

i:XJ i : X \stackrel{\sim}{\to} J^\bullet

such that J n𝒜J^n \in \mathcal{A} is an injective object for all nn \in \mathbb{N}.


In components the quasi-isomorphism of def. is a chain map of the form

X 0 0 i 0 J 0 d 0 J 1 d 1 J n d n . \array{ X &\to& 0 &\to& \cdots &\to& 0 &\to& \cdots \\ \downarrow^{\mathrlap{i^0}} && \downarrow && && \downarrow \\ J^0 &\stackrel{d^0}{\to}& J^1 &\stackrel{d^1}{\to}& \cdots &\to& J^n &\stackrel{d^n}{\to}&\cdots } \,.

Since the top complex is concentrated in degree 0, this being a quasi-isomorphism happens to be equivalent to the sequence

0Xi 0J 0d 0J 1d 1J 2d 2 0 \to X \stackrel{i^0}{\to} J^0 \stackrel{d^0}{\to} J^1 \stackrel{d^1}{\to} J^2 \stackrel{d^2}{\to} \cdots

being an exact sequence. In this form one often finds the definition of injective resolution in the literature.


For X𝒜X \in \mathcal{A} an object, a projective resolution of XX is a chain complex J Ch (𝒜)J_\bullet \in Ch_\bullet(\mathcal{A}) (in non-negative degree) equipped with a quasi-isomorphism

p:J X p : J_\bullet \stackrel{\sim}{\to} X

such that J n𝒜J_n \in \mathcal{A} is a projective object for all nn \in \mathbb{N}.


In components the quasi-isomorphism of def. is a chain map of the form

n J n n1 J 1 0 J 0 p 0 0 0 X. \array{ \cdots &\stackrel{\partial_n}{\to}& J_n &\stackrel{\partial_{n-1}}{\to}& \cdots &\to& J_1 &\stackrel{\partial_0}{\to}& J_0 \\ && \downarrow && && \downarrow && \downarrow^{\mathrlap{p_0}} \\ \cdots &\to& 0 &\to& \cdots &\to& 0 &\to& X } \,.

Since the bottom complex is concentrated in degree 0, this being a quasi-isomorphism happens to be equivalent to the sequence

J 2 1J 1 0J 0p 0X0 \cdots J_2 \stackrel{\partial_1}{\to} J_1 \stackrel{\partial_0}{\to} J_0 \stackrel{p_0}{\to} X \to 0

being an exact sequence. In this form one often finds the definition of projective resolution in the literature.

We first discuss the existence of injective/projective resolutions, and then the functoriality of their constructions.


Let 𝒜\mathcal{A} be an abelian category with enough injectives, such as our RRMod for some ring RR.

Then every object X𝒜X \in \mathcal{A} has an injective resolution, def. .


Let X𝒜X \in \mathcal{A} be the given object. By remark we need to construct an exact sequence of the form

0XJ 0d 0J 1d 1J 2d 2J n 0 \to X \to J^0 \stackrel{d^0}{\to} J^1 \stackrel{d^1}{\to} J^2 \stackrel{d^2}{\to} \cdots \to J^n \to \cdots

such that all the J J^\cdot are injective objects.

This we now construct by induction on the degree nn \in \mathbb{N}.

In the first step, by the assumption of enough injectives we find an injective object J 0J^0 and a monomorphism

XJ 0 X \hookrightarrow J^0

hence an exact sequence

0XJ 0. 0 \to X \to J^0 \,.

Assume then by induction hypothesis that for nn \in \mathbb{N} an exact sequence

XJ 0d 0J n1d n1J n X \to J^0 \stackrel{d^0}{\to} \cdots \to J^{n-1} \stackrel{d^{n-1}}{\to} J^n

has been constructed, where all the J J^\cdot are injective objects. Forming the cokernel of d n1d^{n-1} yields the short exact sequence

0J n1d n1J npJ n/J n10. 0 \to J^{n-1} \stackrel{d^{n-1}}{\to} J^n \stackrel{p}{\to} J^n/J^{n-1} \to 0 \,.

By the assumption that there are enough injectives in 𝒜\mathcal{A} we may now again find a monomorphism J n/J n1iJ n+1J^n/J^{n-1} \stackrel{i}{\hookrightarrow} J^{n+1} into an injective object J n+1J^{n+1}. This being a monomorphism means that

J n1d n1J nd nipJ n+1 J^{n-1} \stackrel{d^{n-1}}{\to} J^n \stackrel{d^n \coloneqq i \circ p}{\longrightarrow} J^{n+1}

is exact in the middle term. Therefore we now have an exact sequence

0XJ 0J n1d n1J nd nJ n+1 0 \to X \to J^0 \to \cdots \to J^{n-1} \stackrel{d^{n-1}}{\to} J^n \stackrel{d^{n}}{\to} J^{n+1}

which completes the induction step.

The following proposition is formally dual to prop. .


Let 𝒜\mathcal{A} be an abelian category with enough projectives (such as RRMod for some ring RR).

Then every object X𝒜X \in \mathcal{A} has a projective resolution, def. .


Let X𝒜X \in \mathcal{A} be the given object. By remark we need to construct an exact sequence of the form

2J 2 1J 1 0J 0X0 \cdots \stackrel{\partial_2}{\to} J_2 \stackrel{\partial_1}{\to} J_1 \stackrel{\partial_0}{\to} J_0 \to X \to 0

such that all the J J_\cdot are projective objects.

This we we now construct by induction on the degree nn \in \mathbb{N}.

In the first step, by the assumption of enough projectives we find a projective object J 0J_0 and an epimorphism

J 0X J_0 \to X

hence an exact sequence

J 0X0. J_0 \to X \to 0 \,.

Assume then by induction hypothesis that for nn \in \mathbb{N} an exact sequence

J n n1J n1 0J 0X0 J_n \stackrel{\partial_{n-1}}{\to} J_{n-1} \to \cdots \stackrel{\partial_0}{\to} J_0 \to X \to 0

has been constructed, where all the J J_\cdot are projective objects. Forming the kernel of n1\partial_{n-1} yields the short exact sequence

0ker( n1)iJ n n1J n10. 0 \to ker(\partial_{n-1}) \stackrel{i}{\to} J_n \stackrel{\partial_{n-1}}{\to} J_{n-1} \to 0 \,.

By the assumption that there are enough projectives in 𝒜\mathcal{A} we may now again find an epimorphism p:J n+1ker( n1) p : J_{n+1} \to ker(\partial_{n-1}) out of a projective object J n+1J_{n+1}. This being an epimorphism means that

J n+1 nipJ n n1 J_{n+1} \stackrel{\partial_{n} \coloneqq i\circ p}{\to} J_n \stackrel{\partial_{n-1}}{\to}

is exact in the middle term. Therefore we now have an exact sequence

J n+1 nJ n n1 0J 0X0, J_{n+1} \stackrel{\partial_n}{\to} J_n \stackrel{\partial_{n-1}}{\to} \cdots \stackrel{\partial_0}{\to} J_0 \to X \to 0 \,,

which completes the induction step.

To conclude this section we now show that all this work indeed serves to solve the problem indicated above in example .


Let f :X J f^\bullet : X^\bullet \to J^\bullet be a chain map of cochain complexes in non-negative degree, out of an exact complex 0 qiX 0 \simeq_{qi} X^\bullet to a degreewise injective complex J J^\bullet. Then there is a null homotopy

η:0f \eta : 0 \Rightarrow f^\bullet

By definition of chain homotopy we need to construct a sequence of morphisms (η n+1:X n+1J n) n(\eta^{n+1} : X^{n+1} \to J^{n})_{n \in \mathbb{N}} such that

f n=η n+1d X n+d J n1η n. f^n = \eta^{n+1} \circ d^n_X + d^{n-1}_J \circ \eta^n \,.

for all nn. We now construct this by induction over nn.

It is convenient to start at n=1n = -1, take η 00\eta^{\leq 0} \coloneqq 0 and f <00f^{\lt 0} \coloneqq 0. Then the above condition holds for n=1n = -1.

Then in the induction step assume that for given nn \in \mathbb{N} we have constructed η n\eta^{\bullet \leq n} satisfying the above condition for f <nf^{\lt n}

First define now

g nf nd J n1η n g^n \coloneqq f^n - d_J^{n-1} \circ \eta^n

and observe that by induction hypothesis

g nd X n1 =f nd X n1d J n1η nd X n1 =f nd X n1d J n1f n1+d J n1d J n2η n1 =0+0 =0. \begin{aligned} g^n \circ d_X^{n-1} & = f^n \circ d^{n-1}_X - d^{n-1}_J \circ \eta^n \circ d^{n-1}_X \\ & = f^n \circ d^{n-1}_X - d^{n-1}_J \circ f^{n-1} + d^{n-1}_J \circ d^{n-2}_J \circ \eta^{n-1} \\ & = 0 + 0 \\ & = 0 \end{aligned} \,.

This means that g ng^n factors as

X nX n/im(d X n1)g nJ n, X^n \to X^n / im(d^{n-1}_X) \stackrel{g^n}{\to} J^n \,,

where the first map is the projection to the quotient.

Observe then that by exactness of X X^\bullet the morphism X n/im(d X n1)d X nX n+1X^n / im(d^{n-1}_X) \stackrel{d^n_X}{\to} X^{n+1} is a monomorphism. Together this gives us a diagram of the form

X n/im(d X n1) d X n X n+1 g n η n+1 J n, \array{ X^n / im(d^{n-1}_X) &\stackrel{d^n_X}{\to}& X^{n+1} \\ \downarrow^{\mathrlap{g^n}} & \swarrow_{\mathrlap{\eta^{n+1}}} \\ J^n } \,,

where the morphism η n+1\eta^{n+1} may be found due to the defining right lifting property of the injective object J nJ^n against the top monomorphism.

Observing that the commutativity of this diagram is the chain homotopy condition involving η n\eta^n and η n+1\eta^{n+1}, this completes the induction step.

The formally dual statement of prop is the following.


Let f :P Y f_\bullet : P_\bullet \to Y_\bullet be a chain map of chain complexes in non-negative degree, into an exact complex 0 qiY 0 \simeq_{qi} Y_\bullet from a degreewise projective complex X X^\bullet. Then there is a null homotopy

η:0f \eta : 0 \Rightarrow f_\bullet

This is formally dual to the proof of prop .

Hence we have seen now that injective and projective resolutions of chain complexes serve to make chain homotopy interact well with quasi-isomorphism. In the next section we show that this construction lifts from single chain complexes to chain maps between chain complexes and in fact to the whole category of chain complexes. The resulting “resolved” category of chain complexes is the derived category, the true home of the abelian homotopy theory of chain complexes.

8) The derived category

In the previous section we have seen that every object A𝒜A \in \mathcal{A} admits an injective resolution and a projective resolution. Here we lift this construction to morphisms and then to the whole category of chain complexes, up to chain homotopy.

The following proposition says that, when injectively resolving objects, the morphisms between these objects lift to the resolutions, and the following one, prop. , says that this lift is unique up to chain homotopy.


Let f:XYf : X \to Y be a morphism in 𝒜\mathcal{A}. Let

i Y:YY i_Y : Y \stackrel{\sim}{\to} Y^\bullet

be an injective resolution of YY and

i X:XX i_X : X \stackrel{\sim}{\to} X^\bullet

any monomorphism that is a quasi-isomorphism (possibly but not necessarily an injective resolution). Then there is a chain map f :X Y f^\bullet : X^\bullet \to Y^\bullet giving a commuting diagram

X X f f Y Y . \array{ X &\stackrel{\sim}{\to}& X^\bullet \\ \downarrow^{\mathrlap{f}} && \downarrow^{\mathrlap{f^\bullet}} \\ Y &\stackrel{\sim}{\to}& Y^\bullet } \,.

By definition of chain map we need to construct morphisms (f n:X nY n) n(f^n : X^n \to Y^n)_{n \in \mathbb{N}} such that for all nn \in \mathbb{N} the diagrams

X n d X n X n+1 f n f n+1 Y n d Y n Y n+1 \array{ X^{n} &\stackrel{d^n_X}{\to}& X^{n+1} \\ \downarrow^{\mathrlap{f^n}} && \downarrow^{\mathrlap{f^{n+1}}} \\ Y^{n} &\stackrel{d^n_Y}{\to}& Y^{n+1} }

commute (the defining condition on a chain map) and such that the diagram

X i X X 0 f f 0 Y i Y Y 0 \array{ X &\stackrel{i_X}{\to}& X^0 \\ \downarrow^{f} && \downarrow^{\mathrlap{f^0}} \\ Y &\stackrel{i_Y}{\to}& Y^0 }

commutes in 𝒜\mathcal{A} (which makes the full diagram in Ch (𝒜)Ch^\bullet(\mathcal{A}) commute).

We construct these f =(f n) nf^\bullet = (f^n)_{n \in \mathbb{N}} by induction.

To start the induction, the morphism f 0f^0 in the last diagram above can be found by the defining right lifting property of the injective object Y 0Y^0 against the monomorphism i Xi_X.

Assume then that for some nn \in \mathbb{N} component maps f nf^{\bullet \leq n} have been obtained such that d Y kf k=f k+1d X kd^k_Y\circ f^k = f^{k+1}\circ d^k_X for all 0k<n0 \leq k \lt n . In order to construct f n+1f^{n+1} consider the following diagram, which we will describe/construct stepwise from left to right:

X n X n/im(d X n1) d X n X n+1 f n g n h n f n+1 Y n d Y n Y n+1. \array{ X^n &\stackrel{}{\to}& X^n/im(d^{n-1}_X) &\stackrel{d^n_X}{\hookrightarrow}& X^{n+1} \\ {}^{\mathllap{f^n}}\downarrow & \searrow^{\mathrlap{g^n}} & \downarrow^{\mathrlap{h^n}} & \swarrow_{\mathrlap{f^{n+1}}} \\ Y^n &\underset{d^n_Y}{\to}& Y^{n+1} } \,.

Here the morphism f nf^n on the left is given by induction assumption and we define the diagonal morphism to be the composite

g nd Y nf n. g^n \coloneqq d^n_Y \circ f^n \,.

Observe then that by the chain map property of the f nf^{\bullet \leq n} we have

d Y nf nd X n1=d Y nd Y n1f n1=0 d^n_Y \circ f^n \circ d^{n-1}_X = d^n_Y \circ d^{n-1}_Y \circ f^{n-1} = 0

and therefore g ng^n factors through X n/im(d X n1)X^n/im(d^{n-1}_X) via some h nh^n as indicated in the middle of the above diagram. Finally the morphism on the top right is a monomorphism by the fact that X X^{\bullet} is exact in positive degrees (being quasi-isomorphic to a complex concentrated in degree 0) and so a lift f n+1f^{n+1} as shown on the far right of the diagram exists by the defining lifting property of the injective object Y n+1Y^{n+1}.

The total outer diagram now commutes, being built from commuting sub-diagrams, and this is the required chain map property of f n+1f^{\bullet \leq n+1} This completes the induction step.


The morphism f f_\bullet in prop. is the unique one up to chain homotopy making the given diagram commute.


Given two cochain maps g 1 ,g 2 g_1^\bullet, g_2^\bullet making the diagram commute, a chain homotopy g 1 g 2 g_1^\bullet \Rightarrow g_2^\bullet is equivalently a null homotopy 0g 2 g 1 0 \Rightarrow g_2^\bullet - g_1^\bullet of the difference, which sits in a square of the form

X h X 0 f g 2 g 1 Y Y \array{ X &\underoverset{h^\bullet}{\sim}{\to}& X^\bullet \\ \downarrow^{\mathrlap{0}} && \downarrow^{\mathrlap{f^\bullet \coloneqq g_2^\bullet - g_1^\bullet}} \\ Y &\stackrel{\sim}{\to}& Y^\bullet }

with the left vertical morphism being the zero morphism (and the bottom an injective resolution). Hence we have to show that in such a diagram f f^\bullet is null-homotopic.

This we may reduce to the statement of prop. by considering instead of f f^\bullet the induced chain map of augmented complexes

0 X h 0 X 0 d X 0 X 1 f 2=0 f 1=0 f 0 f 1 0 Y Y 0 d J 0 Y 1 , \array{ 0 &\stackrel{}{\to}& X &\stackrel{h^0}{\to}& X^0 &\stackrel{d^0_X}{\to}& X^1 &\to& \cdots \\ \downarrow^{\mathrlap{f^{-2} = 0}} && \downarrow^{\mathrlap{f^{-1} = 0}} && \downarrow^{f^0} && \downarrow^{f^1} \\ 0 &\to& Y &\to& Y^0 &\stackrel{d^0_J}{\to}& Y^1 &\to& \cdots } \,,

where the second square from the left commutes due to the commutativity of the original square of chain complexes in degree 0.

Since h h^\bullet is a quasi-isomorphism, the top chain complex is exact, by remark . Moreover the bottom complex consists of injective objects from the second degree on (the former degree 0). Hence the induction in the proof of prop. implies the existence of a null homotopy

0 X X 0 d X 0 X 1 f 2=0 η 1=0 f 1=0 η 0=0 f 0 η 1 f 1 0 Y Y 0 d Y 0 Y 1 \array{ 0 &\stackrel{}{\to}& X &\stackrel{}{\to}& X^0 &\stackrel{d^0_X}{\to}& X^1 &\to& \cdots \\ \downarrow^{\mathrlap{f^{-2} = 0}} &\swarrow_{\mathrlap{\eta^{-1} = 0}}& \downarrow^{\mathrlap{f^{-1} = 0}} &\swarrow_{\mathrlap{\eta^0 = 0} }& \downarrow^{f^0} &\swarrow_{\mathrlap{\eta^1}}& \downarrow^{f^1} \\ 0 &\to& Y &\to& Y^0 &\stackrel{d^0_Y}{\to}& Y^1 &\to& \cdots }

starting with η 1=0\eta^{-1} = 0 and η 0=0\eta^{0 } = 0 (notice that the proof prop. was formulated exactly this way), which works because f 1=0f^{-1} = 0. The de-augmentation {f 0}\{f^{\bullet \geq 0}\} of this is the desired null homotopy of f f^\bullet.

We now discuss how the injective/projective resolutions constructed above are functorial if regarded in the homotopy category of chain complexes, def. . For definiteness, to be able to distinguish chain complexes from cochain complexes, introduce the following notation.


(the derived category)

Write as before

𝒦 (𝒜)Cat \mathcal{K}_\bullet(\mathcal{A}) \in Cat

for the strong chain homotopy category of chain complexes, from def. .

Write similarly now

𝒦 (𝒜)Cat \mathcal{K}^\bullet(\mathcal{A}) \in Cat

for the strong chain homotopy category of co-chain complexes.

Write furthermore

𝒟 (𝒜)𝒦 (𝒫 𝒜)𝒦 (𝒜) \mathcal{D}_\bullet(\mathcal{A}) \coloneqq \mathcal{K}_\bullet(\mathcal{P}_{\mathcal{A}}) \hookrightarrow \mathcal{K}_\bullet(\mathcal{A})

for the full subcategory on the degreewise projective chain complexes, and

𝒟 (𝒜)𝒦 ( 𝒜)𝒦 (𝒜) \mathcal{D}^\bullet(\mathcal{A}) \coloneqq \mathcal{K}^\bullet(\mathcal{I}_{\mathcal{A}}) \hookrightarrow \mathcal{K}^\bullet(\mathcal{A})

for the full subcategory on the degreewise injective cochain complexes.

These subcategories – or any category equivalent to them – are called the (strictly bounded above/below) derived category of 𝒜\mathcal{A}.


Often one defines the derived category by more general abstract means than we have introduced here, namely as the localization of the category of chain complexes at the quasi-isomorphims. If one does this, then the simple definition def. is instead a theorem. The interested reader can find more details and further pointers here.


If 𝒜\mathcal{A} has enough injectives, def. , then there exists a functor

P:𝒜𝒟 (𝒜)=𝒦 ( 𝒜) P : \mathcal{A} \to \mathcal{D}^\bullet(\mathcal{A}) = \mathcal{K}^\bullet(\mathcal{I}_{\mathcal{A}})

together with natural isomorphisms

H 0()Pid 𝒜 H^0(-) \circ P \simeq id_{\mathcal{A}}


H n1()P0. H^{n \geq 1}(-) \circ P \simeq 0 \,.

By prop. every object X Ch (𝒜)X^\bullet \in Ch^\bullet(\mathcal{A}) has an injective resolution. Proposition says that for XX X \to X^\bullet and XX˜ X \to \tilde X^\bullet two resolutions there is a morphism X X˜ X^\bullet \to \tilde X^\bullet in 𝒦 (𝒜)\mathcal{K}^\bullet(\mathcal{A}) and prop. says that this morphism is unique in 𝒦 (𝒜)\mathcal{K}^\bullet(\mathcal{A}). In particular it is therefore an isomorphism in 𝒦 (𝒜)\mathcal{K}^\bullet(\mathcal{A}) (since the composite with the reverse lifted morphism, also being unique, has to be the identity).

So choose one such injective resolution P(X) P(X)^\bullet for each X X^\bullet.

Then for f:XYf : X \to Y any morphism in 𝒜\mathcal{A}, proposition again says that it can be lifted to a morphism between P(X) P(X)^\bullet and P(Y) P(Y)^\bullet and proposition says that there is an image in 𝒦 (𝒜)\mathcal{K}^\bullet(\mathcal{A}), unique for morphism making the given diagram commute.

This implies that this assignment of morphisms is functorial, since then also the composites are unique.

Dually we have:


If 𝒜\mathcal{A} has enough projectives, def. , then there exists a functor

Q:𝒜𝒟 (𝒜)=𝒦 (𝒫 𝒜) Q : \mathcal{A} \to \mathcal{D}_\bullet(\mathcal{A}) =\mathcal{K}_\bullet(\mathcal{P}_{\mathcal{A}})

together with natural isomorphisms

H 0()Pid 𝒜 H_0(-) \circ P \simeq id_{\mathcal{A}}


H n1()P0. H_{n \geq 1}(-) \circ P \simeq 0 \,.

For actually working with the derived category, the following statement is of central importance, which we record here without proof (which requires a bit of localization theory). It says that for computing hom-sets in the derived category, it is in fact sufficient to just resolve the domain or the codomain.


Let X ,Y Ch (𝒜)X_\bullet, Y_\bullet \in Ch_\bullet(\mathcal{A}). We have natural isomorphisms

𝒟 (Q(X) ,Q(Y) )𝒦 (Q(X) ,Y ). \mathcal{D}_\bullet(Q(X)_\bullet, Q(Y)_\bullet) \simeq \mathcal{K}_\bullet(Q(X)_\bullet, Y_\bullet) \,.

Dually, for X ,Y Ch (𝒜)X^\bullet, Y^\bullet \in Ch^\bullet(\mathcal{A}), we have a natural isomorphism

𝒟 (P(X) ,P(Y) )𝒦 (X ,P(Y) ). \mathcal{D}^\bullet(P(X)^\bullet, P(Y)^\bullet) \simeq \mathcal{K}^\bullet(X^\bullet, P(Y)^\bullet) \,.

In conclusion we have found that there are resolution functors that embed 𝒜\mathcal{A} in the homotopically correct context of resolved chain complexes with chain maps up to chain homotopy between them.

In the next section we discuss the general properties of this “homotopically correct context”: the derived category.

9) Derived functors

In the previous section we have seen how the entire category 𝒜\mathcal{A} (= RRMod) embeds into its derived category, the category of degreewise injective cochain complexes

P:𝒜𝒟 (𝒜)=𝒦 ( 𝒜) P : \mathcal{A} \to \mathcal{D}^\bullet(\mathcal{A}) = \mathcal{K}^\bullet(\mathcal{I}_{\mathcal{A}})

or degreewise projective chain complexes

Q:𝒜𝒟 (𝒜)=𝒦 (𝒫 𝒜) Q : \mathcal{A} \to \mathcal{D}_\bullet(\mathcal{A}) = \mathcal{K}_\bullet(\mathcal{P}_{\mathcal{A}})

modulo chain homotopy. This construction of the derived category naturally gives rise to the following notion of derived functors.


For 𝒜,\mathcal{A}, \mathcal{B} two abelian categories (e.g. RRMod and RR'Mod), a functor

F:𝒜 F \colon \mathcal{A} \to \mathcal{B}

is called an additive functor if

  1. FF maps the zero object to the zero object, F(0)0F(0) \simeq 0 \in \mathcal{B};

  2. given any two objects x,y𝒜x, y \in \mathcal{A}, there is an isomorphism F(xy)F(x)F(y)F(x \oplus y) \cong F(x) \oplus F(y), and this respects the inclusion and projection maps of the direct sum:

x y i X i y xy p x p y x yFF(x) F(y) i F(x) i F(y) F(xy)F(x)F(y) p F(X) p F(y) F(x) F(y) \array { x & & & & y \\ & {}_{\mathllap{i_X}}\searrow & & \swarrow_{\mathrlap{i_y}} \\ & & x \oplus y \\ & {}^{\mathllap{p_x}}\swarrow & & \searrow^{\mathrlap{p_y}} \\ x & & & & y } \quad\quad\stackrel{F}{\mapsto}\quad\quad \array { F(x) & & & & F(y) \\ & {}_{\mathllap{i_{F(x)}}}\searrow & & \swarrow_{\mathrlap{i_{F(y)}}} \\ & & F(x \oplus y) \cong F(x) \oplus F(y) \\ & {}^{\mathllap{p_{F(X)}}}\swarrow & & \searrow^{\mathrlap{p_{F(y)}}} \\ F(x) & & & & F(y) }

Given an additive functor F:𝒜𝒜F : \mathcal{A} \to \mathcal{A}', it canonically induces a functor

Ch (F):Ch (𝒜)Ch (𝒜) Ch_\bullet(F) \colon Ch_\bullet(\mathcal{A}) \to Ch_\bullet(\mathcal{A}')

between categories of chain complexes (its “prolongation”) by applying it to each chain complex and to all the diagrams in the definition of a chain map. Similarly it preserves chain homotopies and hence it passes to the quotient given by the strong homotopy category of chain complexes

𝒦(F):𝒦(𝒜)𝒦(𝒜). \mathcal{K}(F) \colon \mathcal{K}(\mathcal{A}) \to \mathcal{K}(\mathcal{A}') \,.

If 𝒜\mathcal{A} and 𝒜\mathcal{A}' have enough projectives, then their derived categories are

𝒟 (𝒜)𝒦 (𝒫 𝒜) \mathcal{D}_\bullet(\mathcal{A}) \simeq \mathcal{K}_\bullet(\mathcal{P}_{\mathcal{A}})


𝒟 (𝒜)𝒦 ( 𝒜) \mathcal{D}^\bullet(\mathcal{A}) \simeq \mathcal{K}^\bullet(\mathcal{I}_{\mathcal{A}})

etc. One wants to accordingly derive from FF a functor 𝒟 (𝒜)𝒟 (𝒜)\mathcal{D}_\bullet(\mathcal{A}) \to \mathcal{D}_\bullet(\mathcal{A}) between these derived categories. It is immediate to achieve this on the domain category, there we can simply precompose and form

𝒜𝒟 (𝒜)𝒦 (𝒫 𝒜)𝒦 (𝒜)𝒦 (F)𝒦 (𝒜). \mathcal{A} \to \mathcal{D}_\bullet(\mathcal{A}) \simeq \mathcal{K}_\bullet(\mathcal{P}_{\mathcal{A}}) \hookrightarrow \mathcal{K}_\bullet(\mathcal{A}) \stackrel{\mathcal{K}_\bullet(F)}{\to} \mathcal{K}_\bullet(\mathcal{A}') \,.

But the resulting composite lands in 𝒦 (𝒜)\mathcal{K}_\bullet(\mathcal{A}') and in general does not factor through the inclusion 𝒟 (𝒜)=𝒦 (𝒫 𝒜)𝒦 (𝒜)\mathcal{D}_\bullet(\mathcal{A}') = \mathcal{K}_\bullet(\mathcal{P}_{\mathcal{A}'}) \hookrightarrow \mathcal{K}_\bullet(\mathcal{A}').

In a more general abstract discussion than we present here, one finds that by applying a projective resolution functor on chain complexes, one can enforce this factorization. However, by definition of resolution, the resulting chain complex is quasi-isomorphic to the one obtained by the above composite.

This means that if one is only interested in the “weak chain homology type” of the chain complex in the image of a derived functor, then forming chain homology groups of the chain complexes in the images of the above composite gives the desired information. This is what def. and def. below do.


Let 𝒜,𝒜\mathcal{A}, \mathcal{A}' be two abelian categories, for instance 𝒜=R\mathcal{A} = R Mod and 𝒜=R\mathcal{A}' = R'Mod. Then a functor F:𝒜𝒜F \colon \mathcal{A} \to \mathcal{A}' which preserves direct sums (and hence in particular the zero object) is called

Here to “preserve kernels” means that for every morphism XfYX \stackrel{f}{\to} Y in 𝒜\mathcal{A} we have an isomorphism on the left of the following commuting diagram

F(ker(f)) F(X) F(f) F(Y) = = ker(F(f)) F(X) F(f) F(Y), \array{ F(ker(f)) &\to& F(X) & \stackrel{F(f)}{\to} & F(Y) \\ \downarrow^{\mathrlap{\simeq}} && \downarrow^{\mathrlap{=}} && \downarrow^{\mathrlap{=}} \\ ker(F(f)) &\to& F(X) &\stackrel{F(f)}{\to}& F(Y) } \,,

hence that both rows are exact. And dually for right exact functors.

We record the following immediate consequence of this definition (which in the literature is often taken to be the definition).


If FF is a left exact functor, then for every exact sequence of the form

0ABC 0 \to A \to B \to C


0F(A)F(B)F(C) 0 \to F(A) \to F(B) \to F(C)

is an exact sequence. Dually, if FF is a right exact functor, then for every exact sequence of the form

ABC0 A \to B \to C \to 0


F(A)F(B)F(C)0 F(A) \to F(B) \to F(C) \to 0

is an exact sequence.


If 0ABC0 \to A \to B \to C is exact then ABA \hookrightarrow B is a monomorphism by prop. . But then the statement that ABCA \to B \to C is exact at BB says precisely that AA is the kernel of BCB \to C. So if FF is left exact then by definition also F(A)F(B)F(A) \to F(B) is the kernel of F(B)F(C)F(B) \to F(C) and so is in particular also a monomorphism. Dually for right exact functors.


Proposition is clearly the motivation for the terminology in def. : a functor is left exact if it preserves short exact sequences to the left, and right exact if it preserves them to the right.

Now we can state the main two definitions of this section.



F:𝒜𝒜 F : \mathcal{A} \to \mathcal{A}'

be a left exact functor between abelian categories such that 𝒜\mathcal{A} has enough injectives. For nn \in \mathbb{N} the nnth right derived functor of FF is the composite

R nF:𝒜P𝒦 ( 𝒜)𝒦 (F)𝒦 (𝒜)H n()𝒜, R^n F : \mathcal{A} \stackrel{P}{\to} \mathcal{K}^\bullet(\mathcal{I}_{\mathcal{A}}) \stackrel{\mathcal{K}^\bullet(F)}{\to} \mathcal{K}^\bullet(\mathcal{A}') \stackrel{H^n(-)}{\to} \mathcal{A}' \,,


  • PP is the injective resolution functor of theorem ;

  • 𝒦(F)\mathcal{K}(F) is the prolongation of FF according to def. ;

  • H n()H^n(-) is the nn-chain homology functor. Hence

(R nF)(X )H n(F(P(X) )). (R^n F)(X^\bullet) \coloneqq H^n(F(P(X)^\bullet)) \,.




F:𝒜𝒜 F : \mathcal{A} \to \mathcal{A}'

be a right exact functor between abelian categories such that 𝒜\mathcal{A} has enough projectives. For nn \in \mathbb{N} the nnth left derived functor of FF is the composite

L nF:𝒜QK (𝒫 𝒜)𝒦 (F)𝒦 (𝒜)H n()𝒜, L_n F : \mathcal{A} \stackrel{Q}{\to} K_\bullet(\mathcal{P}_{\mathcal{A}}) \stackrel{\mathcal{K}_\bullet(F)}{\to} \mathcal{K}_\bullet(\mathcal{A}') \stackrel{H_n(-)}{\to} \mathcal{A}' \,,


  • QQ is the projective resolution functor of theorem ;

  • 𝒦(F)\mathcal{K}(F) is the prolongation of FF according to def. ;

  • H n()H_n(-) is the nn-chain homology functor. Hence

(L nF)(X )H n(F(Q(X) )). (L_n F)(X_\bullet) \coloneqq H_n(F(Q(X)_\bullet)) \,.

The following proposition says that in degree 0 these derived functors coincide with the original functors.


Let F:𝒜F \colon \mathcal{A} \to \mathcal{B} a left exact functor, def. in the presence of enough injectives. Then for all X𝒜X \in \mathcal{A} there is a natural isomorphism

R 0F(X)F(X). R^0F(X) \simeq F(X) \,.

Dually, if FF is a right exact functor in the presence of enough projectives, then

L 0F(X)F(X). L_0 F(X) \simeq F(X) \,.

We discuss the first statement, the second is formally dual.

By remark an injective resolution X qiX X \stackrel{\simeq_{qi}}{\to} X^\bullet is equivalently an exact sequence of the form

0XX 0X 1. 0 \to X \hookrightarrow X^0 \to X^1 \to \cdots \,.

If FF is left exact then it preserves this excact sequence by definition of left exactness, and hence

0F(X)F(X 0)F(X 1) 0 \to F(X) \hookrightarrow F(X^0) \to F(X^1) \to \cdots

is an exact sequence. But this means that

R 0F(X)ker(F(X 0)F(X 1))F(X). R^0 F(X) \coloneqq ker(F(X^0) \to F(X^1)) \simeq F(X) \,.

The following immediate consequence of the definition is worth recording:


Let FF be an additive functor.

  • If FF is right exact and N𝒜N \in \mathcal{A} is a projective object, then

    L nF(N)=0n1. L_n F(N) = 0 \;\;\;\; \forall n \geq 1 \,.
  • If FF is left exact and N𝒜N \in \mathcal{A} is a injective object, then

    R nF(N)=0n1. R^n F(N) = 0 \;\;\;\; \forall n \geq 1 \,.

If NN is projective then the chain complex [00N][\cdots \to 0 \to 0 \to N] is already a projective resolution and hence by definition L nF(N)H n(0)L_n F(N) \simeq H_n(0) for n1n \geq 1. Dually if NN is an injective object.

For proving the basic property of derived functors below in prop. which continues these basis statements to higher degree, in a certain way, we need the following technical lemma.


For 0AiBpC00 \to A \stackrel{i}{\to} B \stackrel{p}{\to} C \to 0 a short exact sequence in an abelian category with enough projectives, there exists a commuting diagram of chain complexes

0 A B C 0 f g h 0 A i B p C 0 \array{ 0 &\to& A_\bullet &\to& B_\bullet &\to& C_\bullet &\to& 0 \\ && \downarrow^{\mathrlap{f_\bullet}} && \downarrow^{\mathrlap{g_\bullet}} && \downarrow^{\mathrlap{h_\bullet}} \\ 0 &\to& A &\stackrel{i}{\to}& B &\stackrel{p}{\to}& C &\to& 0 }


and in addition


By prop. we can choose f f_\bullet and h h_\bullet. The task is now to construct the third resolution g g_\bullet such as to obtain a short exact sequence of chain complexes, hence degreewise a short exact sequence, in the two row.

To construct this, let for each nn \in \mathbb{N}

B nA nC n B_n \coloneqq A_n \oplus C_n

be the direct sum and let the top horizontal morphisms be the canonical inclusion and projection maps of the direct sum.

Let then furthermore (in matrix calculus notation)

g 0=((j 0) A (j 0) B):A 0C 0B g_0 = \left( \array{ (j_0)_A & (j_0)_B } \right) : A_0 \oplus C_0 \to B

be given in the first component by the given composite

(g 0) A:A 0C 0A 0f 0AiB (g_0)_A : A_0 \oplus C_0 \stackrel{}{\to} A_0 \stackrel{f_0}{\to} A \stackrel{i}{\hookrightarrow} B

and in the second component we take

(j 0) C:A 0C 0C 0ζB (j_0)_C : A_0 \oplus C_0 \to C_0 \stackrel{\zeta}{\to} B

to be given by a lift in

B ζ p C 0 h 0 C, \array{ && B \\ & {}^{\mathllap{\zeta}}\nearrow & \downarrow^{\mathrlap{p}} \\ C_0 &\stackrel{h_0}{\to}& C } \,,

which exists by the left lifting property of the projective object C 0C_0 (since C C_\bullet is a projective resolution) against the epimorphism p:BCp : B \to C of the short exact sequence.

In total this gives in degree 0

A 0 A 0C 0 C 0 f 0 ((g 0) A,(g 0) C) ζ h 0 A i B p C. \array{ A_0 &\hookrightarrow& A_0 \oplus C_0 &\to& C_0 \\ {}^{\mathllap{f_0}}\downarrow && {}^{\mathllap{((g_0)_A, (g_0)_C)}}\downarrow &\swarrow_{\zeta}& \downarrow^{\mathrlap{h_0}} \\ A &\stackrel{i}{\hookrightarrow}& B &\stackrel{p}{\to}& C } \,.

Let then the differentials of B B_\bullet be given by

d k B =(d k A (1) ke k 0 d k C ):A k+1C k+1A kC k, d_k^{B_\bullet} = \left( \array{ d_k^{A_\bullet} & (-1)^k e_k \\ 0 & d_k^{C_\bullet} } \right) : A_{k+1} \oplus C_{k+1} \to A_k \oplus C_k \,,

where the {e k}\{e_k\} are constructed by induction as follows. Let e 0e_0 be a lift in

A 0 e 0 f 0 ζd 0 C : C 1 A B \array{ & && A_0 \\ & & {}^{\mathllap{e_0}}\nearrow & \downarrow^{\mathrlap{f_0}} \\ \zeta \circ d^{C_\bullet}_0 \colon & C_1 &\stackrel{}{\to}& A &\hookrightarrow B& }

which exists since C 1C_1 is a projective object and A 0AA_0 \to A is an epimorphism by A A_\bullet being a projective resolution. Here we are using that by exactness the bottom morphism indeed factors through AA as indicated, because the definition of ζ\zeta and the chain complex property of C C_\bullet gives

pζd 0 C =h 0d 0 C =0h 1 =0. \begin{aligned} p \circ \zeta \circ d^{C_\bullet}_0 &= h_0 \circ d^{C_\bullet}_0 \\ & = 0 \circ h_1 \\ & = 0 \end{aligned} \,.

Now in the induction step, assuming that e n1e_{n-1} has been been found satisfying the chain complex property, let e ne_n be a lift in

A n e n d n1 A e n1d n C : C n+1 ker(d n1 A )=im(d n1 A )) A n1, \array{ & && A_n \\ & & {}^{\mathllap{e_{n}}}\nearrow & \downarrow^{\mathrlap{d^{A_\bullet}_{n-1}}} \\ e_{n-1}\circ d_n^{C_\bullet} \colon & C_{n+1} &\stackrel{}{\hookrightarrow}& ker(d^{A_\bullet}_{n-1}) = im(d^{A_\bullet}_{n-1})) &\to& A_{n-1} } \,,

which again exists since C n+1C_{n+1} is projective. That the bottom morphism factors as indicated is the chain complex property of e n1e_{n-1} inside d n1 B d^{B_\bullet}_{n-1}.

To see that the d B d^{B_\bullet} defines this way indeed squares to 0 notice that

d n B d n+1 B =(0 (1) n(e nd n+1 C d n A e n+1) 0 0). d^{B_\bullet}_{n} \circ d^{B_\bullet}_{n+1} = \left( \array{ 0 & (-1)^{n}\left(e_{n} \circ d^{C_\bullet}_{n+1} - d^{A_\bullet}_n \circ e_{n+1} \right) \\ 0 & 0 } \right) \,.

This vanishes by the very commutativity of the above diagram.

This establishes g g_\bullet such that the above diagram commutes and the bottom row is degreewise a short exact sequence, in fact a split exact sequence, by construction.

To see that g g_\bullet is indeed a quasi-isomorphism, consider the homology long exact sequence associated to the short exact sequence of cochain complexes 0A B C 00 \to A_\bullet \to B_\bullet \to C_\bullet \to 0. In positive degrees it implies that the chain homology of B B_\bullet indeed vanishes. In degree 0 it gives the short sequence 0AH 0(B )B00 \to A \to H_0(B_\bullet) \to B\to 0 sitting in a commuting diagram

0 A H 0(B ) C 0 = = 0 A B C 0, \array{ 0 &\to& A &\hookrightarrow& H_0(B_\bullet) &\to& C &\to& 0 \\ \downarrow && \downarrow^{\mathrlap{=}} && \downarrow && \downarrow^{\mathrlap{=}} && \downarrow \\ 0 &\to& A &\hookrightarrow& B &\to& C &\to& 0 \,, }

where both rows are exact. That the middle vertical morphism is an isomorphism then follows by the five lemma.

The formally dual statement to lemma is the following.


For 0ABC00 \to A \to B \to C \to 0 a short exact sequence in an abelian category with enough injectives, there exists a commuting diagram of cochain complexes

0 A B C 0 0 A B C 0 \array{ 0 &\to& A &\to& B &\to& C &\to& 0 \\ && \downarrow^{\mathrlap{}} && \downarrow^{\mathrlap{}} && \downarrow^{\mathrlap{}} \\ 0 &\to& A^\bullet &\to& B^\bullet &\to& C^\bullet &\to& 0 }


and in addition

The central general fact about derived functors to be discussed here is now the following.


Let 𝒜,\mathcal{A}, \mathcal{B} be abelian categories and assume that 𝒜\mathcal{A} has enough injectives.

Let F:𝒜F : \mathcal{A} \to \mathcal{B} be a left exact functor and let

0ABC0 0 \to A \to B \to C \to 0

be a short exact sequence in 𝒜\mathcal{A}.

Then there is a long exact sequence of images of these objects under the right derived functors R F()R^\bullet F(-) of def.

0 R 0F(A) R 0F(B) R 0F(C) δ 0 R 1F(A) R 1F(B) R 1F(C) δ 1 R 2F(A) 0 F(A) F(B) F(C) \array{ 0 &\to& R^0F (A) &\to& R^0 F(B) &\to& R^0 F(C) &\stackrel{\delta_0}{\to}& R^1 F(A) &\to& R^1 F(B) &\to& R^1F(C) &\stackrel{\delta_1}{\to}& R^2 F(A) &\to& \cdots \\ && \downarrow^{\mathrlap{\simeq}} && \downarrow^{\mathrlap{\simeq}} && \downarrow^{\mathrlap{\simeq}} \\ 0 &\to& F(A) &\to& F(B) &\to& F(C) }

in \mathcal{B}.


By lemma we can find an injective resolution

0A B C 0 0 \to A^\bullet \to B^\bullet \to C^\bullet \to 0

of the given exact sequence which is itself again an exact sequence of cochain complexes.

Since A nA^n is an injective object for all nn, its component sequences 0A nB nC n00 \to A^n \to B^n \to C^n \to 0 are indeed split exact sequences (see the discussion there). Splitness is preserved by any functor FF (and also since FF is additive it even preserves the direct sum structure that is chosen in the proof of lemma ) and so it follows that

0F(A˜ )F(B˜ )F(C˜ )0 0 \to F(\tilde A^\bullet) \to F(\tilde B^\bullet) \to F(\tilde C^\bullet) \to 0

is a again short exact sequence of cochain complexes, now in \mathcal{B}. Hence we have the corresponding homology long exact sequence from prop. :

H n1(F(A ))H n1(F(B ))H n1(F(C ))δH n(F(A ))H n(F(B ))H n(F(C ))δH n+1(F(A ))H n+1(F(B ))H n+1(F(C )). \cdots \to H^{n-1}(F(A^\bullet)) \to H^{n-1}(F(B^\bullet)) \to H^{n-1}(F(C^\bullet)) \stackrel{\delta}{\to} H^n(F(A^\bullet)) \to H^n(F(B^\bullet)) \to H^n(F(C^\bullet)) \stackrel{\delta}{\to} H^{n+1}(F(A^\bullet)) \to H^{n+1}(F(B^\bullet)) \to H^{n+1}(F(C^\bullet)) \to \cdots \,.

By construction of the resolutions and by def. , this is equal to

R n1F(A)R n1F(B)R n1F(C)δR nF(A)R nF(B)R nF(C)δR n+1F(A)R n+1F(B)R n+1F(C). \cdots \to R^{n-1}F(A) \to R^{n-1}F(B) \to R^{n-1}F(C) \stackrel{\delta}{\to} R^{n}F(A) \to R^{n}F(B) \to R^{n}F(C) \stackrel{\delta}{\to} R^{n+1}F(A) \to R^{n+1}F(B) \to R^{n+1}F(C) \to \cdots \,.

Finally the equivalence of the first three terms with F(A)F(B)F(C)F(A) \to F(B) \to F(C) is given by prop. .


Prop. implies that one way to interpret R 1F(A)R^1 F(A) is as a “measure for how a left exact functor FF fails to be an exact functor”. For, with ABCA \to B \to C any short exact sequence, this proposition gives the exact sequence

0F(A)F(B)F(C)R 1F(A) 0 \to F(A) \to F(B) \to F(C) \to R^1 F(A)

and hence 0F(A)F(B)F(C)00 \to F(A) \to F(B) \to F(C) \to 0 is a short exact sequence itself precisely if R 1F(A)0R^1 F(A) \simeq 0.

Dually, if FF is right exact functor, then L 1F(C)L_1 F (C) “measures how FF fails to be exact” for then

L 1F(C)F(A)F(B)F(C)0 L_1F (C) \to F(A) \to F(B) \to F(C) \to 0

is an exact sequence and hence is a short exact sequence precisely if L 1F(C)0L_1F(C) \simeq 0.

Notice that in fact we even have the following statement (following directly from the definition).


Let FF be an additive functor which is an exact functor. Then

R 1F=0 R^{\geq 1} F = 0


L 1F=0. L_{\geq 1} F = 0 \,.

Because an exact functor preserves all exact sequences. If Y AY_\bullet \to A is a projective resolution then also F(Y) F(Y)_\bullet is exact in all positive degrees, and hence L n1F(A))H n(F(Y))=0L_{n\geq 1} F(A) ) H_{n \geq}(F(Y)) = 0. Dually for R nFR^n F.



Let F:𝒜F \colon \mathcal{A} \to \mathcal{B} be a left or right exact additive functor. An object A𝒜A \in \mathcal{A} is called an FF-acyclic object if all positive-degree right/left derived functors of FF are zero on AA.

Acyclic objects are useful for computing derived functors on non-acyclic objects. More generally, we now discuss how the derived functor of an additive functor FF may also be computed not necessarily with genuine injective/projective resolutions, but with (just) “FF-injective”/“FF-projective resolutions”.

While projective resolutions in 𝒜\mathcal{A} are sufficient for computing every left derived functor on Ch (𝒜)Ch_\bullet(\mathcal{A}) and injective resolutions are sufficient for computing every right derived functor on Ch (𝒜)Ch^\bullet(\mathcal{A}), if one is interested just in a single functor FF then such resolutions may be more than necessary. A weaker kind of resolution which is still sufficient is then often more convenient for applications. These FF-projective resolutions and FF-injective resolutions, respectively, we discuss now. A special case of both are FF-acyclic resolutions.

Let 𝒜,\mathcal{A}, \mathcal{B} be abelian categories and let F:𝒜F \colon \mathcal{A} \to \mathcal{B} be an additive functor.


Assume that FF is left exact. An additive full subcategory 𝒜\mathcal{I} \subset \mathcal{A} is called FF-injective (or: consisting of FF-injective objects) if

  1. for every object A𝒜A \in \mathcal{A} there is a monomorphism AA˜A \to \tilde A into an object A˜𝒜\tilde A \in \mathcal{I} \subset \mathcal{A};

  2. for every short exact sequence 0ABC00 \to A \to B \to C \to 0 in 𝒜\mathcal{A} with A,B𝒜A, B \in \mathcal{I} \subset \mathcal{A} also C𝒜C \in \mathcal{I} \subset \mathcal{A};

  3. for every short exact sequence 0ABC00 \to A \to B \to C \to 0 in 𝒜\mathcal{A} with A𝒜A\in \mathcal{I} \subset \mathcal{A} also 0F(A)F(B)F(C)00 \to F(A) \to F(B) \to F(C) \to 0 is a short exact sequence in \mathcal{B}.

And dually:


Assume that FF is right exact. An additive full subcategory 𝒫𝒜\mathcal{P} \subset \mathcal{A} is called FF-projective (or: consisting of FF-projective objects) if

  1. for every object A𝒜A \in \mathcal{A} there is an epimorphism A˜A\tilde A \to A from an object A˜𝒫𝒜\tilde A \in \mathcal{P} \subset \mathcal{A};

  2. for every short exact sequence 0ABC00 \to A \to B \to C \to 0 in 𝒜\mathcal{A} with B,C𝒫𝒜B, C \in \mathcal{P} \subset \mathcal{A} also A𝒫𝒜A \in \mathcal{P} \subset \mathcal{A};

  3. for every short exact sequence 0ABC00 \to A \to B \to C \to 0 in 𝒜\mathcal{A} with C𝒜C\in \mathcal{I} \subset \mathcal{A} also 0F(A)F(B)F(C)00 \to F(A) \to F(B) \to F(C) \to 0 is a short exact sequence in \mathcal{B}.

With the ,𝒫𝒜\mathcal{I},\mathcal{P}\subset \mathcal{A} as above, we say:


For A𝒜A \in \mathcal{A},

  • an FF-injective resolution of AA is a cochain complex I Ch ()Ch (𝒜)I^\bullet \in Ch^\bullet(\mathcal{I}) \subset Ch^\bullet(\mathcal{A}) and a quasi-isomorphism

    A qiI A \stackrel{\simeq_{qi}}{\to} I^\bullet
  • an FF-projective resolution of AA is a chain complex Q Ch (𝒫)Ch (𝒜)Q_\bullet \in Ch_\bullet(\mathcal{P}) \subset Ch^\bullet(\mathcal{A}) and a quasi-isomorphism

    Q qiA. Q_\bullet \stackrel{\simeq_{qi}}{\to} A \,.

Let now 𝒜\mathcal{A} have enough projectives / enough injectives, respectively, def. .


For F:𝒜F \colon \mathcal{A} \to \mathcal{B} an additive functor, let Ac𝒜Ac \subset \mathcal{A} be the full subcategory on the FF-acyclic objects, def. . Then

  • if FF is left exact, then Ac\mathcal{I} \coloneqq Ac is a subcategory of FF-injective objects;

  • if FF is right exact, then 𝒫Ac\mathcal{P} \coloneqq Ac is a subcategory of FF-projective objects.


Consider the case that FF is right exact. The other case works dually. Then the first condition of def. is satisfied because every injective object is an FF-acyclic object and by assumption there are enough of these.

For the second and third condition of def. use that there is the long exact sequence of derived functors prop.

0ABCR 1F(A)R 1F(B)R 1F(C)R 2F(A)R 2F(B)R 2F(C). 0 \to A \to B \to C \to R^1 F(A) \to R^1 F(B) \to R^1 F(C) \to R^2 F(A) \to R^2 F(B) \to R^2 F(C) \to \cdot \,.

For the second condition, by assumption on AA and BB and definition of FF-acyclic object we have R nF(A)0R^n F(A) \simeq 0 and R nF(B)0R^n F(B) \simeq 0 for n1n \geq 1 and hence short exact sequences

00R nF(C)0 0 \to 0 \to R^n F(C) \to 0

which imply that R nF(C)0R^n F(C)\simeq 0 for all n1n \geq 1, hence that CC is acyclic.

Similarly, the third condition is equivalent to R 1F(A)0R^1 F(A) \simeq 0.


The FF-projective/injective resolutions by acyclic objects as in example are called FF-acyclic resolutions.

Let 𝒜\mathcal{A} be an abelian category with enough injectives. Let F:𝒜F \colon \mathcal{A} \to \mathcal{B} be an additive left exact functor with right derived functor R FR_\bullet F, def. . Finally let 𝒜\mathcal{I} \subset \mathcal{A} be a subcategory of FF-injective objects, def. .


If a cochain complex A Ch ()Ch (𝒜)A^\bullet \in Ch^\bullet(\mathcal{I}) \subset Ch^\bullet(\mathcal{A}) is quasi-isomorphic to 0,

X qi0 X^\bullet \stackrel{\simeq_{qi}}{\to} 0

then also F(X )Ch ()F(X^\bullet) \in Ch^\bullet(\mathcal{B}) is quasi-isomorphic to 0

F(X ) qi0. F(X^\bullet) \stackrel{\simeq_{qi}}{\to} 0 \,.

Consider the following collection of short exact sequences obtained from the long exact sequence X X^\bullet:

0X 0d 0X 1d 1im(d 1)0 0 \to X^0 \stackrel{d^0}{\to} X^1 \stackrel{d^1}{\to} im(d^1) \to 0
0im(d 1)X 2d 2im(d 2)0 0 \to im(d^1) \to X^2 \stackrel{d^2}{\to} im(d^2) \to 0
0im(d 2)X 3d 3im(d 3)0 0 \to im(d^2) \to X^3 \stackrel{d^3}{\to} im(d^3) \to 0

and so on. Going by induction through this list and using the second condition in def. we have that all the im(d n)im(d^n) are in \mathcal{I}. Then the third condition in def. says that all the sequences

0F(im(d n))F(X n+1)F(im(d n+1))0 0 \to F(im(d^n)) \to F(X^{n+1}) \to F(im(d^{n+1})) \to 0

are exact. But this means that

0F(X 0)F(X 1)F(X 2) 0 \to F(X^0)\to F(X^1) \to F(X^2) \to \cdots

is exact, hence that F(X )F(X^\bullet) is quasi-isomorphic to 0.


For A𝒜A \in \mathcal{A} an object with FF-injective resolution A qiI F A \stackrel{\simeq_{qi}}{\to} I_F^\bullet, def. , we have for each nn \in \mathbb{N} an isomorphism

R nF(A)H n(F(I F )) R^n F(A) \simeq H^n(F(I_F^\bullet))

between the nnth right derived functor, def. of FF evaluated on AA and the cochain cohomology of FF applied to the FF-injective resolution I F I_F^\bullet.


By prop. we can also find an injective resolution A qiI A \stackrel{\simeq_{qi}}{\to} I^\bullet. By prop. there is a lift of the identity on AA to a chain map I F I I^\bullet_F \to I^\bullet such that the diagram

A qi I F id f A qi I \array{ A &\stackrel{\simeq_{qi}}{\to}& I_F^\bullet \\ \downarrow^{\mathrlap{id}} && \downarrow^{\mathrlap{f}} \\ A &\stackrel{\simeq_{qi}}{\to}& I^\bullet }

commutes in Ch (𝒜)Ch^\bullet(\mathcal{A}). Therefore by the 2-out-of-3 property of quasi-isomorphisms it follows that ff is a quasi-isomorphism

Let Cone(f)Ch (𝒜)Cone(f) \in Ch^\bullet(\mathcal{A}) be the mapping cone of ff and let I Cone(f)I^\bullet \to Cone(f) be the canonical chain map into it. By the explicit formulas for mapping cones, we have that

  1. there is an isomorphism F(Cone(f))Cone(F(f))F(Cone(f)) \simeq Cone(F(f));

  2. Cone(f)Ch ()Ch (𝒜)Cone(f) \in Ch^\bullet(\mathcal{I})\subset Ch^\bullet(\mathcal{A}) (because FF-injective objects are closed under direct sum). %I is injective but not F-injective, so this does not seem to follow%

The first implies that we have a homology exact sequence

H n(I )H n(I F )H n(Cone(f) )H n+1(I )H n+1(I F )H n+1(Cone(f) ). \cdots \to H^n(I^\bullet) \to H^n(I_F^\bullet) \to H^n(Cone(f)^\bullet) \to H^{n+1}(I^\bullet) \to H^{n+1}(I_F^\bullet) \to H^{n+1}(Cone(f)^\bullet) \to \cdots \,.

Observe that with f f^\bullet a quasi-isomorphism Cone(f )Cone(f^\bullet) is quasi-isomorphic to 0. Therefore the second item above implies with lemma that also F(Cone(f))F(Cone(f)) is quasi-isomorphic to 0. This finally means that the above homology exact sequences consists of exact pieces of the form

0(R nF(A))H n(I )H n(I F )0. 0 \to (R^n F(A)\coloneqq) H^n(I^\bullet) \stackrel{\simeq}{\to} H^n(I_F^\bullet) \to 0 \,.

This concludes the discussion of the general definition and the general properties of derived functors that we will consider here. In the next section we discuss the two archetypical examples.

10) Fundamental examples of derived functors

We introduce here the two archetypical examples of derived functors and discuss their basic properties. In the next chapter IV) The fundamental theorems we discuss how to use these derived functors for obtaining deeper statements.

Above we have seen the definition and basic general properties of derived functors obtained from left/right exact functors between abelian categories.

Of all functors, a most fundamental one is the hom-functor of a given category. For categories such as RRMod considered here, it comes with its left adjoint, the tensor product functor, which is hence equally fundamentally important. Here we discuss the derived functors of these two basic functors in detail.

For simplicity – this here being an introduction – we will discuss various statements only over R=R = \mathbb{Z}, hence for abelian groups. The main simplification that this leads to is the following.


Every subgroup of a free abelian group is itself a free group.

This is a classical fact going back to Dedekind, now known (in its generalization to not-necessarily abelian groups) as the Nielsen-Schreier theorem. For us it is interesting due to the following consequence


Assuming the axiom of choice, every abelian group AA admits a projective resolution, def. , concentrated in degree 0 and degree 1, hence a resolution which under remark corresponds to a short exact sequence

0F 1F 0A0 0 \to F_1 \to F_0 \to A \to 0

where F 0F_0 and F 1F_1 are projective, indeed free.


By the proof of prop. there is an epimorphism F 0AF_0 \to A out of a free abelian group (take for instance F 0=F(U(A))F_0 = F(U(A)), the free abelian group in the underlying set of AA). By prop. the kernel of this epimorphism is itself a free group, and hence by prop. is itself projective. Take this kernel to be F 1F 0F_1 \hookrightarrow F_0.

This fact drastically constrains the complexity of right derived functors on abelian groups:


Let F:AbAbF \colon Ab \to Ab be an additive functor which is left exact functor. Then its right derived functors R nFR^n F vanish for all n2n \geq 2.


By prop. there is a projective resolution of any AAbA \in Ab of the form F =[00F 1F 0]F_\bullet = [\cdots \to 0 \to 0 \to F_1 \to F_0]. This implies the claim by def. .


The conclusion of prop. holds more generally over every ring which is a principal ideal domain. This includes in particular R=kR = k a field, in which case RModkR Mod \simeq kVect. On the other hand, every kk-vector space is already projective itself, so that in this case the whole theory of right derived functors trivializes.

a) The derived Hom functor and group extensions

For 𝒜\mathcal{A} an abelian category, such as RRMod, the hom-sets naturally have the structure of an abelian group themselves. This means that the hom-functor of 𝒜\mathcal{A} is

Hom 𝒜(,):𝒜 op×𝒜Ab, Hom_{\mathcal{A}}(-,-) \colon \mathcal{A}^{op}\times \mathcal{A} \to Ab \,,

where 𝒜 op\mathcal{A}^{op} is the opposite category of 𝒜\mathcal{A}. This functor sends a morphism

(X 1,A 1) (,) (X 2,A 2)𝒜 op×𝒜 \array{ (X_1 , A_1) \\ (\uparrow , \downarrow) \\ (X_2, A_2) } \;\;\; \in \mathcal{A}^{op} \times \mathcal{A}

to the linear map which sends a homomorphism (X 1fA 1)Hom(X 1,A 1)(X_1 \stackrel{f}{\to} A_1) \in Hom(X_1,A_1) to the composite homomorphism

X 1 f A 2 X 2 A 2Hom(X 2,A 2). \array{ X_1 &\stackrel{f}{\to}& A_2 \\ \uparrow^{\mathrlap{}} && \downarrow \\ X_2 && A_2 } \;\;\;\; \in Hom(X_2, A_2) \,.

In particular if we hold the first argument fixed on an object X𝒜X \in \mathcal{A}, then this yields a functor

Hom(X,):𝒜Ab Hom(X,-) \colon \mathcal{A} \to Ab

and if we keep the second argument fixed on an object A𝒜A \in \mathcal{A}, then this yields a functor

Hom(,A):𝒜 opAb. Hom(-,A) \colon \mathcal{A}^{op} \to Ab \,.

This functor we have already seen above in example .

A very basic fact is the following.


The functor Hom(,):𝒜 op×𝒜AbHom(-,-)\colon \mathcal{A}^{op} \times \mathcal{A} \to Ab is a left exact functor, def. . In particular for every X𝒜X \in \mathcal{A} the functor Hom(X,):𝒜AbHom(X,-)\colon \mathcal{A} \to Ab is left exact, and for every A𝒜A \in \mathcal{A} the functor Hom(,A):𝒜 opAbHom(-,A) \colon \mathcal{A}^{op} \to Ab is left exact.


A kernel in the opposite category 𝒜 op\mathcal{A}^{op} is equivalently a cokernel in 𝒜\mathcal{A}. Hence if we regard Hom(,A)Hom(-,A) instead as a contravariant functor from 𝒜\mathcal{A} to Ab, then the statement that it is left exact means that (on top of preserving direct sums) it sends cokernels in 𝒜\mathcal{A} to kernels in Ab.

We therefore have the corresponding right derived functor:


For given A𝒜A \in \mathcal{A}, write

Ext (,A)R Hom(,A):𝒜Ab Ext^\bullet(-,A) \coloneqq R^\bullet Hom(-,A) \colon \mathcal{A} \to Ab

for the right derived functor, def. , of the hom-functor in the first argument, according to prop. .

This is called the Ext-functor.

The basic property of the derived Hom-functor/Ext-functor is that it classifies group extensions by (suspensions of) AA. This we now discuss in detail, starting from a basic discussion of group extensions themselves.

The following definition essentially just repeats that of a short exact sequence above in def. , but now we consider it for GG a possibly nonabelian group and think of it slightly differently regarding these sequences up to homomorphisms as in def. below. Equivalently we may think of the following as a discussion of the classification of short exact sequences when the leftmost and rightmost component are held fixed.


Two consecutive homomorphisms of groups

(2)AiG^pG A \overset{i}\hookrightarrow \hat G\overset{p}\to G

are a short exact sequence if

  1. ii is monomorphism,

  2. pp an epimorphism

  3. the image of ii is all of the kernel of pp: ker(p)im(i)ker(p)\simeq im(i).

We say that such a short exact sequence exhibits G^\hat G as a group extension of GG by AA.

If AG^A \hookrightarrow \hat G factors through the center of G^\hat G we say that this is a central extension.


Sometimes in the literature one sees G^\hat G called an extension “of AA by GG”. This is however in conflict with terms such as central extension, extension of principal bundles, etc, where the extension is always regarded of the base, by the fiber.


A homomorphism of extensions f:G^ 1G^ 2f : \hat G_1 \to \hat G_2 of a given GG by a given AA is a group homomorphism of this form which fits into a commuting diagram

G^ 1 A f G G^ 2. \array{ && \hat G_1 \\ & \nearrow && \searrow \\ A &&\downarrow^{\mathrlap{f}}&& G \\ & \searrow && \nearrow \\ && \hat G_2 } \,.

A morphism of extensions as in def. is necessarily an isomorphism.

(3)1 A i G^ 1 p G 1 = ϵ = 1 A i G^ 2 p G 1. \array{ 1\to &A&\stackrel{i}\to &\hat G_1&\stackrel{p}\to &G&\to 1 \\ &\downarrow\mathrlap{=}&&\downarrow\mathrlap\epsilon&&\downarrow\mathrlap=& \\ 1\to &A&\stackrel{i'}\to &\hat G_2&\stackrel{p'}\to& G&\to 1 } \,.

By the short five lemma.


For GG and AA groups, write Ext(G,A)Ext(G,A) for the set of equivalence classes of extensions of GG by AA, as above and CentrExt(G,A)Ext(G,A)CentrExt(G,A) \hookrightarrow Ext(G,A) for for the central extensions. If GG and AA are both abelian, write

AbExt(G,A)CentrExt(G,A) AbExt(G,A) \hookrightarrow CentrExt(G,A)

for the subset of abelian groups G^\hat G that are (necessarily central) extensions of GG by AA.

We discuss now the following two ways that the Ext 1Ext^1 knows about such group extensions.

  1. Central extensions of a possibly non-abelian group GG are classified by the degree-2 group cohomology H Grp 2(G,A)H^2_{Grp}(G,A) of GG with coefficients in AA, and this in turn is equivalently computed by Ext [G]Mod 1(,A)Ext^1_{\mathbb{Z}[G] Mod}(\mathbb{Z}, A), where [G]\mathbb{Z}[G] is the group ring of GG.

    This is theorem below.

  2. Abelian extensions of an abelian group GG are classified by Ext Ab 1(G,A)Ext^1_{Ab}(G,A). In fact, generally, in an abelian category 𝒜\mathcal{A} extensions of G𝒜G \in \mathcal{A} by A𝒜A \in \mathcal{A} (in the sense of short exact sequences AG^GA \to \hat G \to G) are classified by Ext 𝒜 1(G,A)Ext^1_{\mathcal{A}}(G,A).

This is prop below.

We first discuss now group cohomology:


Let GG be group and AA an abelian group (regarded as being equipped with the trivial GG-action).

Then a group 2-cocycle on GG with coefficients in AA is a function

c:G×GA c \colon G \times G \to A

such that for all (g 1,g 2)G×G(g_1, g_2) \in G \times G it satisfies the equation

(4)c(g 1,g 2)c(g 1,g 2g 3)+c(g 1g 2,g 3)c(g 2,g 3)=0A c(g_1, g_2) - c(g_1, g_2 \cdot g_3) + c(g_1 \cdot g_2, g_3) - c(g_2, g_3) = 0 \;\;\;\; \in A

(called the 2-cocycle condition).

For c,c˜c, \tilde c two such cocycles, a coboundary h:cc˜h \colon c \to \tilde c between them is a function

h:GA h \colon G \to A

such that for all (g 1,g 2)G×G(g_1,g_2) \in G \times G the equation

(5)c˜(g 1,g 2)=(c+dh)(g 1,g 2), \tilde c(g_1, g_2) = (c + d h)(g_1, g_2) \,,

holds in AA, where

(dh)(g 1,g 2)h(g 1g 2)h(g 1)h(g 2) (d h)(g_1, g_2) \coloneqq h(g_1 g_2) - h(g_1) - h(g_2)

is a 2-coboundary.

The degree-2 group cohomology is the set

H Grp 2(G,A)=2Cocycles(G,A)/Coboundaries(G,A) H^2_{Grp}(G,A) = 2Cocycles(G,A) / Coboundaries(G,A)

of equivalence classes of group 2-cocycles modulo group coboundaries. This is itself naturally an abelian group under pointwise addition of cocycles in AA

[c 1]+[c 2]=[c 1+c 2] [c_1] + [c_2] = [c_1 + c_2]


c 1+c 2:(g 1,g 2)c 1(g 1,g 2)+c 2(g 1,g 2). c_1 + c_2 \colon (g_1, g_2) \mapsto c_1(g_1,g_2) + c_2(g_1, g_2) \,.

The following says that in the computation of H Grp 2(G,A)H^2_{Grp}(G,A) one may concentrate on nice representatives that are called normalized cocycles:


A group 2-cocycle c:G×GAc \colon G \times G \to A, def. is called normalized if

g 0,g 1G(g 0=eorg 1=e)(c(g 0,g 1)=0). \forall_{g_0,g_1 \in G} \;\; \left(g_0 = e \;or\; g_1 = e \right) \Rightarrow \left( c(g_0,g_1) = 0 \right) \,.

For c:G×GAc \colon G \times G \to A a group 2-cocycle, we have for all gGg \in G that

c(e,g)=c(e,e)=c(g,e). c(e,g) = c(e,e) = c(g,e) \,.

The cocycle condition (4) evaluated on

(g 1,g,e)G 3 (g^{-1}, g, e) \in G^3

says that

c(g 1,g)+c(e,e)=c(g,e)+c(g 1,g) c(g^{-1}, g) + c(e, e) = c(g, e) + c(g^{-1}, g )

hence that

c(e,e)=c(g,e). c(e,e) = c(g, e) \,.

Similarly the 2-cocycle c