R I R 0 R
R I R 0 R
(1) TorR ∼
0 (A, B) = A ⊗R B as functors of two variables.
(2) Tori (A, B) = 0 is i < 0.
(3) If A is projective (or flat), Tori (A, B) = 0 if i > 0. In particular, this holds when A
is free.
For the purpose of stating the next fact it is convenient to discuss sequences of modules
and maps indexed by Z. Such a sequence has the form
di+1 i d
→ Mi+1 −−−→ Mi −→
... − Mi−1 −
→ ...
or
di−1 i d
→ Mi−1 −−−→ Mi −→
... − Mi+1 −
→ ... ,,
that is, the maps may lower degrees by one or increase degrees by one. Such a sequence is
called a complex if the composition of any two consecutive maps is 0 and is called exact if
the image of each map is the same as the kernel of the next. By a morphism of sequences
from · · · → Mi → · · · to · · · Ni → · · · we mean a collection of maps φi : Mi → Ni such
that the diagrams
Mi −−−−→ Mi±1
φi y
φi±1 y
Ni −−−−→ Ni±1
all commute. Thus, sequences form a category, and complexes form a full subcategory,
Likewise, exact sequences form a subcategory. A short exact sequence is one where all but
three consecutive terms are 0, and we may assume that the possibly nonzero terms occur
at the spots indexed 0, 1, 2 for the purpose of defining morphisms, so that we have a notion
of morphisms of short exact sequences.
(4) If 0 → A → B → C → 0 is an exact sequence of R-modules and M is an R-module
there is a (typically infinite) long exact sequence
1
2
Construction of Tor
In order to develop the theory of Tor, for which we need to talk about projective
resolutions. Let R be any ring, and M be any R-module. Then it is possible to map a
projective R-module P onto M . In fact oneL can choose a set of generators {uλ }λ∈Λ for
M , and then map the free module P = λ∈Λ Rbλ on a correspondingly indexed set of
generators {bλ }λ∈Λ onto M : there is a unique R-linear map P M that sends bλ → uλ
for all λ ∈ Λ. Whenever we have such a surjection, the kernel M 0 of P M is referred
to as a first module of syzygies of M . We define k th modules of syzygies by recursion: a
k th module of syzygies of a first module of syzygies is referred to as a k + 1 st module of
syzygies.
There is even a completely canonical way to map a free module onto M . Given M let
F(M ) denote the module of all functions from M to R that vanish on all but finitely many
elements of M . This module is R-free on a basis {bm }m∈M where
P bm is the function that
is 1 on m and 0 elsewhere. The map that sends f ∈ F(M ) to m∈M f (m)m is a canonical
3
surjection: note that it maps bm to m. The sum makes sense because all but finitely many
terms are 0.
By a projective resolution of M we mean an infinite sequence of projective modules
· · · → P n → · · · → P1 → P0 → 0
· · · → Pn → · · · → P1 → P0 M → 0
which is exact everywhere. A projective resolution is called finite if Pn = 0 for all suffi-
ciently large n.
We can always construct a projective resolution of M as follows: map a projective
module P0 onto M . Let Z1 be the kernel, a first module of syzygies of M . Map a
projective module P1 onto Z1 . It follows that P1 → P0 → M → 0 is exact, and Z2 ,
the kernel of P1 → P0 , is a second module of syzygies of M . Proceed recursively. If
Pn → · · · → P1 → P0 → M → 0 has been constructed so that it is exact (except at Pn ),
let Zn be the kernel of Pn → Pn−1 ), which will be an n th module of syzygies of M . Simply
map a projective Pn+1 onto Zn , and use the composite map
Pn+1 Zn ⊆ Pn
· · · → M −(n+1) → M −n → M −(n−1) → · · · → M −1 → M 0 → M 1 →
· · · → M n−1 → M n → M n+1 → · · ·
for which we write M • . With these conventions, H i (M • ) = H−i (M• ). Thus, there really
isn’t any distinction between cohomology (H i (M • )) and homology. A complex that is
exact at every spot is called an exact sequence.
By a morphism of sequences M• → M•0 we mean a family of R-linear maps φn : Mn →
Mn0 such that for every n ∈ Z the diagram
d
Mn −−−n−→ Mn−1
φn y
φ
y n−1
Mn0 −−−−→ Mn−1
0
d0n
is a full subcategory of sets and functions, abelian groups and group homomorphisms is
a full subcategory of groups and group homomorphisms, and Hausdorff topological spaces
and continuous maps is a full subcategory of topological spaces and maps.
The category of complexes of R-modules is defined as the full subcategory of the category
of sequences of R-modules whose objects are the complexes of R-modules. We define a
left complex M• as a complex such that Mn = 0 for all n < 0, and a right complex as a
complex such that Mn = 0 for all n > 0. Thus, a left complex has the form
· · · → Mn → Mn−1 → · · · → M1 → M0 → 0 → 0 → · · ·
· · · → 0 → 0 → M 0 → M 1 → · · · → M n−1 → M n → · · ·
Left complexes and right complexes are also full subcategories of sequences (and of com-
plexes).
A complex is called projective (respectively, free) if all of the modules occurring are
projective (respectively, free).
By a short exact sequence we mean an exact sequence of modules M• such that Mn = 0
except possibly when n ∈ {0, 1, 2}:
0 → M2 → M1 → M0 → 0.
These also form a full subcategory of complexes. The numbering is not very important
here. We shall also refer to M2 as the leftmost module, M1 as the middle module, and M0
as the rightmost module in such a sequence.
The homology modules of a complex may be regarded as a complex by taking all the
maps to be 0. The homology operator is then in fact a covariant functor from complexes
to complexes: given a map {φn }n of complexes M• → M•0 , with maps {dn }n and {d0n }n
respectively, note that if dn (u) = 0, then
so that φ maps Ker (dn ) into Ker (d0n ). If u = dn+1 (v), then
which shows that φn maps Im (dn+1 ) into Im (d0n+1 ). This implies that φn induces a map
of homology
Hn (M• ) = Ker (dn )/Im (dn+1 ) → Ker (d0n )/Im (d0n+1 ) = Hn (M•0 ).
(∗) · · · → P n → · · · → P1 → P0 M → 0
that is exact, and such that Pn is projective for n ≥ 0. In this context it will be convenient
to write P−1 = M , but it must be remembered that P−1 need not be projective. The
complex (∗) will be referred to as an augmented projective resolution of M .
We recall that an R-module P is projective if and if, equivalently
(1) When M N is onto, HomR (P, M ) → HomR (P, N ) is onto.
(2) HomR (P, ) is an exact functor.
(3) P is a direct summand of a free module.
A direct sum of modules (finite or infinite) is projective if and only if all of the summands
are. It is easy to verify (1) for free modules: if P is free on the free basis {bλ }λ∈Λ and
M N is onto, given a map f : P → N , we lift to a map g : P → M as follows: for each
free basis element bλ of P , choose uλ ∈ M that maps to f (bλ ), and let g(bλ ) = uλ .
We next want to define what it means for two maps of complexes of R-modules to be
homotopic. Let P• and N• be two complexes. First note that the set of maps of complexes
Mor (P• , N• ) is an R-module: we let
and
r{φn }n = {rφn }n .
We define {φn }n to be null homotopic or homotopic to 0 if there exist maps hn : Pn → Nn+1
(these are not assumed to commute with the complex maps) such that for all n,
φn = d0n+1 hn + hn−1 dn .
The set of null homotopic maps is an R-submodule of the R-module of maps of complexes.
Note that the homology functor H• is R-linear on maps of complexes.
Two maps of complexes are called homotopic if their difference is null homotopic.
7
Lemma. If two maps of complexes are homotopic, they induce the same map of homology.
Proof. We have
φn − φ0n = d0n+1 hn + hn−1 dn
for all n. Let z ∈ Ker (dn ). Then
The second term is 0, since dn (z) = 0, and the first term is in Im (d0n+1 ). This shows that
as required.
The following Theorem is critical in developing the theory of derived functors such as
Tor and Ext. In the applications a will typically be 0, but the starting point really does
not matter.
Theorem. Let P• and N• be complexes such that Pn = 0 for n < a − 1 and Nn = 0 for
n < a − 1. Suppose that N• is exact, and that Pn is projective for n ≥ a. Let M = Pa−1
(which need not be projective) and N = Na−1 . Let φ be a given R-linear map from M to
N . Then we can choose φn : Pn → Nn for all n ≥ a such that, with φa−1 = φ, {φn }n is
a map of complexes (of course, φn = 0 is forced for n < a − 1). Briefly, φ lifts to a map
{φn }n of complexes. Moreover, any two different choices {φn }n and {φ0n }n for the lifting
(but with φa−1 = φ0a−1 = φ) are homotopic.
Proof of existence. We have a composite map Pa → M → N and a surjection Na N .
Therefore, by the universal mapping property of projective modules, we can choose an
R-linear map φa : Pa → Na such that φ ◦ da = d0a ◦ φa . We now shorten both complexes:
we replace the right end
Na+1 → Na N → 0
of N• by
Na+1 → N 0 → 0,
where N 0 is the image of Na+1 in Na , which is also Ker (Na → N ). We shorten the complex
P• by replacing the right end
Pa+1 → Pa → M → 0
by
Pa+1 → M 0 → 0,
where M 0 is the kernel of Pa → M . The restriction of φa to M 0 gives a map φ0 of M 0 to
N 0 . We are now in precisely the same situation that we started with, and we construct
φa+1 in the same manner that we constructed φa . The existence of all the φn follows by
a straightforward induction.
8
Proof of uniqueness up to homotopy. We work with the difference of the two liftings. It
therefore suffices to show that a lifting of the 0 map M → N is null homotopic. Of course,
we must define hn = 0 if n < a − 1, and we define ha−1 = 0 as well: the property we
need holds because φ = 0 . We construct the maps hn recursively. Suppose that we have
constructed hn for n < b where b ≥ a such that
φn = d0n+1 hn + hn−1 dn
φb = d0b+1 hb + hb−1 db .
We claim that the image of φb −hb−1 db is contained in the image of Nb+1 . By the exactness
of N• , it suffices to show that the image of φb − hb−1 db is contained in the kernel of d0b , i.e.,
But since
φb−1 = d0b hb−1 + +hb−2 db−1 ,
we may substitute
d0b hb−1 = φb−1 − hb−2 db−1
to get
d0b φb − (φb−1 − hb−2 db−1 )db .
since db−1 db = 0, this is just
d0b φb − φb−1 db = 0
since {φn }n is a map of complexes. Since
α = φb − hb−1 db
has image in Im (Nb+1 ), we may let β be α with its target restricted to Im (Nb+1 ). Since Pb
is projective and d0b+1 maps onto the target of β, we may lift β to a map hb : Pb → Nb+1 ,
so that d0b+1 hb = β, which implies that
d0b+1 hb = φb − hb−1 db ,
as required.
Remark. Consider the case where a = 0. We also have maps of complexes once the
augmentations P−1 = M and N−1 = N are dropped, and because h−1 = 0, we still have
homotopic maps of complexes.
The significance of the result just proved is that we can use any projective resolution of
M to calculate Tor — up to canonical isomorphism.
9
· · · → P1 → P0 M → 0
∼ P0 ⊗ R N ∼ P0
TorR
0 (M, N ) = H0 (· · · → P1 ⊗R N → P0 ⊗R N → 0) = = ⊗N
Im (P1 ⊗R N ) Im (P1 )
using the right exactness of tensor. Since
P0 ∼
= M,
Im (P1 )
we have that
TorR ∼
0 (M, N ) = M ⊗ N.
We now give an alternative point of view about complexes. Let R[d] = R[∆]/∆2 , and
give ∆ degree −1. The category of sequences is the same as the category of Z-graded
R[∆]-modules and degree preserving maps. The category of complexes is the same as the
full subcategory of Z-graded R[d]-modules and degree-preserving maps. It is very easy to
see that given M• → M•0 , one has induced maps AnnM• d → AnnM•0 d and dM• → dM•0 .
Homology is recovered as AnnM• d/dM• , This is an R[d]-module on which d acts trivially,
and it is now quite obvious that there are induced maps H• (M• ) → H• (M•0 ) of homology.
From this point of view, the map h that gives a null homotopy is a degree 1 map of
graded R-modules, that is, it increases degrees of homogeneous elements by 1: it need not
commute with d. Then hd + dh preserves degree, and does commute with d:
hd+dh gives the zero map on homology because if dz = 0, (hd+dh)(z) = d(h(z)) ∈ Im (d).
We next want to show that Tor is a covariant functor of two variables. Given an R-
module map M → M 0 it lifts to a map of projective resolutions P• for M and P•0 for M 0 .
This gives induced maps of homology when we apply ⊗ N . If we choose a different
lifting we get homotopic maps of complexes and the homotopy is preserved when we apply
⊗R N . The check of functoriality in M is straightforward.
Given a map N → N 0 , we get obvious induced maps P• ⊗ N → P• ⊗ N 0 that yield the
maps of Tor. Once again, the proof of functoriality is straightforward.
In order to develop the theory of Tor further, we want to consider double complexes.
One point of view is that a double complex consists of a family of R-modules {Mij }i,j∈Z
together with “horizontal” R-module maps dij : Mij → Mi,j−1 and “vertical” R-module
maps d0ij : Mij → Mi−1,j for all i, j ∈ Z, such that every dij di,j+1 = 0 (the rows are
complexes), every d0i,j d0i+1,j = 0 (the columns are complexes) and such that all of the
squares
di,j
Mij −−−−→ Mi,j−1
d0ij y
d0
y i,j−1
Mi−1,j −−−−→ Mi−1,j−1
di−1,j
commute: omitting subscripts, this means that d0 d = dd0 . An alternative convention that is
sometimes made instead is that in a double complex, the vertical and horizontal differentials
anticommute: i.e., d0 d = −dd0 . Both conventions have advantages and disadvantages: we
shall call the latter type of double complex a signed double complex, but this terminology
is not standard.
Given a double complex in our sense, one can alway create a signed double complex
by altering the signs on some of the maps. To have a standard way of doing this, our
convention will be that the associated signed double complex is obtained by replacing d0ij
by (−1)i d0ij , while not changing any of the dij . There are many ways to alter signs to
get the squares to anticommute. It does not matter which one is used in the sense that
the homology of the total complex (we shall define the total complex momentarily) is
unaffected.
L
An alternative point of view is obtained by working with ij Mij , a (Z × Z)-graded
2
R-module. Let ∆ and ∆ be indeterminates over R, and let R[d, d0 ] = R[∆, ∆0 ]/(∆2 , ∆0 ),
0
0 0
where ∆ has degree (0, −1),L ∆ has degree (−1, 0), and d, d are their images. The dij
define an action of d on ij Mij that lowers the second index by 1, and the d0ij define an
action of d0 on ij Mij that lowers the first index by 1. Thus, a double complex is simply
L
2
(−1, 0), respectively, satisfying d2 = d0 = 0 and dd0 = −d0 d. Λ may be identified with the
exterior algebra over R of the free R-module Rd ⊕ Rd0 .
A morphism of double complexes is a bidegree-preserving Z × Z-graded R[d, d0 ]-module
homomorphism, so that the maps commute with the actions of d and of d0 . We indicate a
double complex, whether signed or not, with the notation M•• : the subscript is a reminder
that the bidegree has two integer components. The total complex of La signed double
complex M•• , denoted T• (M•• ), is obtained by letting Tn (M•• ) = i+j=n Mij , with
2
differential d+d . This is indeed a complex because (d+d )(d+d ) = d +d d+dd0 +d0 = 0.
0 0 0 2 0
The total complex of a double complex M•• is simply the total complex of the associated
signed double complex. This means that the differential, restricted to Mij , is dij +(−1)i d0ij .
Example. If M• and N• are complexes with differentials d• and d0• , respectively, we get a
double complex M• ⊗ N• whose i, j term is Mj ⊗ Ni . Thus, the i th row is
· · · → Mj+1 ⊗R Ni → Mj ⊗R Ni ⊗R Mj−1 ⊗R Ni → · · ·
For the moment, we want to prove two lemmas about double complexes that are of
immense importance. They are both special cases of the theory of spectral sequences, but
we ignore this for the moment.
The first is the snake or serpent lemma. One starts with a short exact sequence of
complexes
α β
0 → A• −→ B• −
→ C• → 0,
which simply means that for all n, the sequence 0 → An → Bn → Cn → 0 is exact.
We may form from these a double complex in which A• , B• and C• are the columns. A
typical row is then 0 → An → Bn → Cn → 0, and so is exact. A key point is that in this
situation there is a well-defined map γ• from H• (C• ) → H•−1 (A• ) called the connecting
homomorphism, where the subscript •−1 indicates that degrees have been shifted by −1,
so that the γn : Hn (A• ) → Hn−1 (C• ). We could also have used our graded module
conventions and written H• (C• )(−1), but we shall use the other convention for shifting
the numbering of complexes.
The definition of γ is quite simple: since every map Bn → An is onto, given a cycle
z ∈ An we maychoose b ∈ Bn such that β(b) = z. Since z maps to 0 in An−1 , we have that
β(db) = d β(b) = dz = 0 maps to 0 in Bn−1 , and so db is the image of a unique element
a ∈ An−1 . Moreover da = 0, since d α(a) = d(db) = 0. Our map will send [z] ∈ Hn (C• )
to [a] ∈ Hn−1 (A• ). Note that if had made another choice of b mapping to z, it would
have the form b + α(a1 ) for some a1 ∈ An . Then d(b + α(a1 )) = db + α(da1 ), and a would
change to a + d(a1 ), which does not change its homology class. If we change the choice of
representative z to z + dc0 for some c0 ∈ Cn+1 , we can choose b0 ∈ Bn+1 that maps to c0 ,
and then a new choice for b is b + db0 . But d(b + db0 ) = db. This shows that we have a
well-defined map Hn (C) → Hn−1 (A). R-linearity follows from the fact that if b1 and b2
map to z1 and z2 , then rb1 + b2 maps to rz1 + z2 for r ∈ R. Very briefly, the connecting
homomorphism is characterized by the formula γ([β(b)] = [α−1 (db)], which makes sense
since α is injective and db is in its image when β(b) is a cycle.
Note the following picture:
b 7→ z
↓
a 7→ db
↓
0
Proposition (snake or serpent lemma). If 0 → A• → B• → C• → 0 is a short exact
sequence of complexes, then there is a long exact sequence of homology:
γn+1 α βn∗ γn
· · · → Hn+1 (C• ) −−−→ Hn (A• ) −−n∗
→ Hn (B• ) −−→ Hn (C• ) −→ Hn−1 (A• ) → · · ·
13
where αn∗ and βn∗ are the maps of homology induced by αn and βn , respectively.
Moreover, given a morphism of short exact sequences of complexes (this makes sense,
thinking of them as double complexes), we get an induced morphism of long exact sequences,
and the construction is functorial.
Proof. It suffices to check exactness at Hn (C• ), Hn (B• ), and Hn (A• ).
A cycle z in Cn is killed by γ iff for b mapping to c, db is the image of a ∈ An−1 that
is a boundary, i.e., that has the form da0 for some a0 ∈ An−1 . But then b − a0 is a cycle in
Bn that maps to z, which shows that [b − a0 ] maps to [z], as required. Conversely, if b is a
cycle that maps to z, db = 0 and it is immediate that [z] is in the kernel of γn .
For a cycle in z ∈ Bn , [z] is killed by βn∗ iff β(z) is a boundary in Cn , i.e., β(z) = dc0 ,
where c0 ∈ Cn+1 . Choose b0 ∈ Bn+1 that maps onto c0 . Then z − db0 maps to 0 in Cn ,
and so is the image of an element a ∈ An : moreover, da maps to dz − d2 b0 = 0 − 0,
and An−1 ,→ Bn−1 , so that a is cycle and [a] maps to [z]. Conversely, the fact that the
composite Hn (A• ) → Hn (B• ) → Hn (C• ) is 0 is immediate from the fact that βα = 0.
Finally, let z ∈ An be a cycle such that [z] is zero in Hn (B• ). Then α(z) is a boundary,
i.e., α(z) = db for b ∈ Bn+1 . By the definition of γn+1 we have that γn+1 ([β(b)]) = [a].
Conversely, if γn+1 ([β(b)]) = [a] we have that [a] maps to [db] = 0, so that αn∗ γn+1 = 0.
Suppose that one has a morphism of short exact sequences from
0 → A• → B• → C• → 0
to
0 → A0• → B•0 → C•0 → 0.
The functoriality of the long exact sequence is immediate from the functoriality of taking
homology, except for the commutativity of the squares:
This follows from the fact that if α(a) = db and β(b) = z, these relations continue to
hold when we map a ∈ An−1 , b ∈ Bn and z ∈ Cn to their counterparts in A0n−1 , Bn0 , and
Cn0 .
Corollary. If 0 → N2 → N1 → N0 → 0 is a short exact sequence of R-modules and M is
any R-module, then there is a long exact sequence
· · · → TorR R R R
n (M, N2 ) → Torn (M, N1 ) → Torn (M, N0 ) → Torn−1 (M, N2 ) → · · · →
14
TorR R R
1 (M, N2 ) → Tor1 (M, N1 ) → Tor1 (M, N0 ) → M ⊗R N2 → M ⊗R N1 → M ⊗R N0 → 0,
Moreover, the long exact sequence is functorial in the the short exact sequence
0 → N2 → N1 → N0 → 0.
Proof. Let P• be a projective resolution of M (so that H0 (P• ) = M ), and let N• be the
short exact sequence formed by the Ni . Then N• ⊗R P• is a double complex that may be
thought of as the short exact sequence of complexes
0 → N2 ⊗R P• → N1 ⊗R P• → N0 ⊗R P• → 0.
is exact because Pn is projective and, therefore, R-flat. The result is now immediate from
the definition of Tor and the snake lemma.
is a projective resolution of P , and may be used to compute Tor. We shall shortly see that
this property, the functorial long exact sequence, and the fact that TorR ∼
0 (M, N ) = M ⊗R N
canonically as functors of two variables completely characterizes the functor TorR•( , ),
up to isomorphism of functors of two variables.
One may ask if there is a comparable long exact sequence for Tor if one starts with a
sequence of modules 0 → M2 → M1 → M0 → 0. There is such a sequence, and there are
several ways to see this. One of them is to prove that there is a canonical isomorphism of
functors of two variables TorR ∼ R
n (M, N ) = Torn (N, M ) for all n, induced by the canonical
identification M ⊗R N ∼ = N ⊗R M that lets u⊗v correspond to v⊗u. But the commutativity
of tensor products is not the whole story. The symmetry of Tor is asserting that one can
compute TorR n (M, N ) by taking a projective resolution of N , tensoring with M , and then
taking homology. It is not obvious how to compare the two. What we shall do is take
projective resolutions P• of M and Q• of N , and compare the two ways of computing Tor
with the homology of T• (P• ⊗R Q• ). The following fact about double complexes is the key
— before stating it, we recall that a left complex is acyclic if its homology vanishes in all
degrees except degree 0. (The same term is applied to right complexes whose homology
vanishes except in degree 0.)
15
Theorem. Let M•• be a double complex whose terms all vanish if either component of
the bidegree is < 0. Suppose that every row and every column is acyclic, i.e., that the
homology of every row is 0 except in degree 0, and the same holds for columns. Let Ai be the
augmentation module of the i th row (its 0 th homology module) and Bj be the augmentation
module of the j th column (its 0 th homology module). Note that vertical differentials give
a map from the i th row to the i − 1 st row and hence induce maps Ai → Ai−1 for all i
which makes A• a complex. Similar, B• is a complex. Then there are isomorphisms
H• (A• ) ∼
= H• T• (M•• ) ∼
= H• (B• ).
(1) We have that d0∗ [dun0 ] = [dd0 un,0 ] ∈ An−1 , and d0 un,0 = −dun−1,1 , and therefore
d0∗ [dun0 ] = [−d2 un−1,1 ] = [0] = 0.
(2) If we change z by adding a boundary in the total complex, un,0 changes by adding a
term of the form dun,1 + d0 un+1,0 , where un,1 ∈ Mn,1 and un+1,1 ∈ Mn+1,1 . But dun,1
maps to 0 in An because d2 = 0, and d0 un+1,0 maps to dd0 un+1,0 = d0∗ dun+1,0 , the image
of dun+1,0 ∈ An+1 in An , so that [dun,0 ] does not change.
(3) Suppose that ζ ∈ An is a cycle. We can write ζ in the form dun,0 for some un,0 ∈ Mn,0 .
We want to show that we can construct elements un−j,j , 1 ≤ j ≤ n, such that
so that it suffices to see that −d0 un−j,j is in the image of d, and, therefore, it suffices to
see that it is in the kernel of d. but
as required, since (d0 )2 = 0. This shows that one can construct a cycle that maps to ζ. If
we let wn−j−1,j = d0 un−j,j , we have this picture:
17
un,0 7→ z
↓
un−1,1 7→ ±wn−1,0
↓
±wn−2,1
. .. . .. . ..
un−j,j 7→ ±wn−j,j−1
↓
un−j−1,j+1 7→ ±wn−j−1,j
↓
±wn−j−2,j+1
that maps to 0 in Hn (A• ), which means that dun,0 ∈ An is the image of some an+1 =
dun+1,0 ∈ An+1 under the map induced by d0 . This implies that d(un,0 − d0 un+1,0 ) =
dun,0 − d0∗ dun+1,0 = 0 in An , and therefore has the form dun,1 for some un,1 ∈ Mn,1 . We
now use recursion on j to construct
as required. We have already done the case where j = 0. Suppose for a fixed j with
1 ≤ j ≤ n we have constructed these elements un+1−h, h , 0 ≤ h ≤ j, such that (∗h ) holds
for 0 ≤ h ≤ j − 1. In particular, for h = j − 1, we have
We want to construct un−j,j+1 such that (∗j ) holds, i.e., such that
To show that the element on the right is in the image of d, it suffices to prove that it is in
the kernel of d, i.e., that
dun−j,j = dd0 un+1−j,j .
But dun−j,j = −d0 un−j+1,j−1 because z is a cycle and by (∗∗),
as required.
(5) R-linearity is immediate from the definitions of the maps,
once we know that they are
well-defined, since, at the cycle level, the map Hn T• (M•• ) → Hn (A• ) is induced by re-
Mij ∼
Y M Y
stricting the product projection Mij → Mn0 (identifying = Mij ).
i+j=n i+j=n i+j=n
The first and last isomorphisms follow from the definition of Tor, coupled with the fact that
any projective resolution may be used to compute it, the second and third isomorphisms
follow from the Theorem just proved, and the next to last isomorphism is a consequence
of the commutativity of tensor product.
a b
This means that given a short exact sequence of modules 0 → M2 − → M1 − → M0 → 0
there is also a long exact sequence for Tor:
· · · → TorR R R R
n (M2 , N ) → Torn (M1 , N ) → Torn (M0 , N ) → Torn−1 (M2 , N ) → · · · .
This sequence can be derived directly without proving the commutativity of Tor, by con-
structing an exact sequence of projective resolutions of the modules Mj instead. The idea
is to fix resolutions of M2 and M0 , and use them to build a resolution of M1 . Suppose that
(j)
we are given projective resolutions P• of Mj , for j = 2, 0, and call the differentials d(j) ,
(1)
j = 0, 2. From these we can construct a projective resolution P• of M1 such that for all
(1) (2) (0) (0)
n, Pn = Pn ⊕ Pn . To begin, the map d(0) : P0 → M0 lifts to a map f0 : P (0) → M1
by the universal mapping property of projective modules, because b : M1 M0 is onto.
19
One gets a surjection d(1) : P (2) ⊕ P (0) M1 using d(1) = a ◦ d(2) ⊕ f0 . If one lets Z2 , Z1 ,
and Z0 be the kernels of the d(j ) one has a commutative diagram:
(2) (0)
P1 P1
y y
0 −−−−→ Z2 −−−−→ Z1 −−−−→ Z0 −−−−→ 0
y y y
(2) (2) (0) (0)
0 −−−−→ P0 −−−−→ P0 ⊕ P0 −−−−→ P0 −−−−→ 0
(2)
(0)
d y y yd
0 −−−−→ M2 −−−−→ M1 −−−−→ M0 −−−−→ 0
a b
y y y
0 0 0 .
where the sequence of kernels 0 → Z2 → Z1 → Z0 → 0 is easily checked to be exact, and
the problem of constructing the degree 1 part of the resolution of M1 is now precisely the
same problem that we had in constructing the degree 0 part.
(1) (2) (0)
Once one has the map P1 = P1 ⊕ P1 Z1 , the map
(1) (2) (0) (2) (0) (1)
P1 = P1 ⊕ P1 → P0 ⊕ P0 = P0
(2) (0)
is constructed as the composition of the map P1 ⊕ P1 Z1 with the inclusion of Z1
(2) (0)
in P0 ⊕ P0 . By a straightforward induction, one can continue in this way to build an
(1)
entire projective resolution P• of M1 , and a short exact sequence of complexes
(2) (1) (0)
0 → P• → P• → P• →0
TorR R
n (M, N ) → Torn (M, N )
r r
N− → N , we get the map of complexes P• ⊗R N − → P• ⊗R N induced by multiplication by
r
r, and this induces the map of homology. The same fact holds when we use M − → M to
induce a map
TorR R
n (M, N ) → Torn (M, N ),
r
by the symmetry of Tor. (Alternatively, use multiplication by r on every Pn to left M −
→M
r
to a map P• −
→ P• of the projective resolution of M to itself. Then apply ⊗R N and
take homology.)
r
If r ∈ AnnR N , then multiplication N −
→ N , is the zero map, and hence induces the 0
map
TorR R
n (M, N ) → Torn (M, N ),
which is also the map given by multiplication by r. In consequence, we have that AnnR N
kills every TorR
n (M, N ). The same holds for AnnR M , and so AnnR M + AnnR N kills every
R
Torn (M, N ).
The following fact, while very simple, is of great utility:
Proposition. If x ∈ R is not a zerodivisor and M is any R-module, then TorR
n (M, R/xR)
R
(which is also Torn (R/xR, M ) ) is M/xM if n = 0, is AnnM x if n = 1, and is 0 if
n 6= 0, 1.
x
Proof. We may use the projective resolution 0 → R −→ R → 0, whose augmentation is
R/xR, to compute Tor. Here, the left hand copy of R is in degree 1 and the right hand
copy in degree 0. When we apply M ⊗R , we find that the values of Tor are given by
x
the homology of the complex 0 → M − → M → 0.