NOTES ON TOR AND EXT

Contents

1. Basic homological algebra 1 1.1. Chain complexes 2 1.2. Maps and homotopies of maps of chain complexes 2 1.3. Tensor products of chain complexes 3 1.4. Short and long exact sequences 3 1.5. Dual cochain complexes and Hom complexes 4 1.6. Relations between ⊗ and Hom 4 2. The universal coefficient and Künneth theorems 5 2.1. Universal coefficients in homology 5 2.2. The Künneth theorem 6 2.3. Universal coefficients in cohomology 7 2.4. Proof of the universal coefficient theorem 8 2.5. Künneth relations for cochain complexes 9 3. Torsion products 10 3.1. Projective resolutions 10 3.2. The definition and properties of Tor 11 3.3. Change of rings 13 3.4. Pairings and products 14 3.5. A sample computation 15 4. Ext groups 16 4.1. Two identities between Hom functors 16 4.2. Injective resolutions 17 4.3. The definition and properties of Ext 18 4.4. Change of rings 19 4.5. Extensions 20 4.6. Long extensions and the Yoneda product 20 4.7. Equivalences of long extensions 21 4.8. Pairings of Ext groups 23

To make life perhaps a little easier for you, I thought I would bang out some notes. Be warned, these may be full of misprints. To ease texing, the first two sections are adapted from my book “A Concise Course in Algebraic Topology”.

1. Basic homological algebra

Let R be a commutative ring. The main example will be R = ℤ. We develop some rudimentary homological algebra in the category of R-modules.

1.1. Chain complexes. A chain complex over R is a sequence of maps of Rmodules

⋯ ⟶ X_{i+1} ⟶^{d_{i+1}} X_{i} ⟶^{d_{i}} X_{i−1} ⟶ ⋯

such that d_{i} ∘d_{i+1} = 0 for all i. We generally abbreviate d = d_{i}. A cochain complex over R is an analogous sequence

⋯ ⟶ Y^{i−1} ⟶^{d^{i−1}} Y^{i} ⟶^{d^{i}} Y^{i+1} ⟶ ⋯

with d^{i} ∘ d^{i−1} = 0. In practice, we usually require chain complexes to satisfy X_{i} = 0 for i < 0 and cochain complexes to satisfy Y^{i} = 0 for i < 0. Without these restrictions, the notions are equivalent since a chain complex {X_{i}, d_{i}} can be rewritten as a cochain complex {X^{−i}, d^{−i}}, and vice versa.

An element of the kernel of d_{i} is called a cycle and an element of the image of d_{i+1} is called a boundary. We say that two cycles are “homologous” if their difference is a boundary. We write B_{i}(X) ⊂ Z_{i}(X) ⊂ X_{i} for the submodules of boundaries and cycles, respectively, and we define the ith homology group H_{i}(X) to be the quotient module Z_{i}(X)/B_{i}(X). We write H_{∗}(X) for the sequence of R-modules H_{i}(X). We understand “graded R-modules” to be sequences of R-modules such as this (and we never take the sum of elements in different gradings).

1.2. Maps and homotopies of maps of chain complexes. A map f : X ⟶ X′ of chain complexes is a sequence of maps of R-modules f_{i} : X_{i} ⟶ X′_{i} such that d′_{i} ∘ f_{i} = f_{i−1} ∘ d_{i} for all i. That is, the following diagram commutes for each i:

\xymatrix{X_{i} \ar[r]^{f_{i}} \ar[d]_{d_{i}} & X′_{i} \ar[d]^{d′_{i}} \\ X_{i−1} \ar[r]_{f_{i−1}} & X′_{i−1}.}

It follows that f_{i}(B_{i}(X)) ⊂ B_{i}(X′) and f_{i}(Z_{i}(X)) ⊂ Z_{i}(X′). Therefore f induces a map of R-modules f_{∗} = H_{i}(f) : H_{i}(X) ⟶ H_{i}(X′).

A chain homotopy s : f ≃ g between chain maps f, g : X ⟶ X′ is a sequence of homomorphisms s_{i} : X_{i} ⟶ X′_{i+1} such that

d′_{i+1} ∘ s_{i} + s_{i−1} ∘ d_{i} = f_{i} − g_{i}

for all i. Chain homotopy is an equivalence relation since if t : g ≃ h, then s + t = {s_{i} + t_{i}} is a chain homotopy f ≃ h.

Lemma 1.1. Chain homotopic maps induce the same homomorphism of homology groups.

Proof. Let s : f ≃ g, f, g : X ⟶ X′. If x ∈ Z_{i}(X), then

f_{i}(x) − g_{i}(x) = d′_{i+1}s_{i}(x),

so that f_{i}(x) and g_{i}(x) are homologous. □

1.3. Tensor products of chain complexes. The tensor product (over R) of chain complexes X and Y is specified by letting

(X ⊗ Y)_{n} = ∑_{i+j=n} X_{i} ⊗ Y_{j}.

When X_{i} and Y_{i} are zero for i < 0, the sum is finite, but we don’t need to assume this. The differential is specified by

d(x ⊗ y) = d(x) ⊗ y + (−1)^{i}x ⊗ d(y)

for x ∈ X_{i} and y ∈ Y_{j}. The sign ensures that d ∘ d = 0. We may write this as

d = d ⊗ id + id ⊗ d.

The sign is dictated by the general rule that whenever two entities to which degrees m and n can be assigned are permuted, the sign (−1)^{mn} should be inserted. In the present instance, when calculating (id ⊗ d)(x ⊗ y), we must permute the map d of degree −1 with the element x of degree i.

We regard R-modules M as chain complexes concentrated in degree zero, and thus with zero differential. For a chain complex X, there results a chain complex X ⊗ M; H_{∗}(X ⊗ M) is called the homology of X with coefficients in M.

Define a chain complex ℐ by letting ℐ_{0} be the free Abelian group with two generators [0] and [1], letting ℐ_{1} be the free Abelian group with one generator [I] such that d([I]) = [0] − [1], and letting ℐ_{i} = 0 for all other i. We could just as well use free R-modules, but it is nice to have just the single complex ℐ. Observe that the tensor product M ⊗ A over ℤ of an R-module M and an Abelian group A is an R-module via r(m ⊗ a) = (ra) ⊗ a. Similarly, the tensor product over ℤ of an R-chain complex X and a ℤ-chain complex Y is an R-chain complex.

Lemma 1.2. A chain homotopy s : f ≃ g between chain maps f, g : X ⟶ X′ determines and is determined by a chain map h : X⊗ℐ ⟶ X′ such that h(x, [0]) = f(x) and h(x, [1]) = g(x).

Proof. Let s correspond to h via (−1)^{i}s(x) = h(x ⊗ [I]) for x ∈ X_{i}. The relation

d′_{i+1}(s_{i}(x)) = f_{i}(x) − g_{i}(x) − s_{i−1}(d_{i}(x))

corresponds to the relation d′h = hd by the definition of our differential on ℐ. The sign in the correspondence would disappear if we replaced by X ⊗ℐ by ℐ ⊗X. □

1.4. Short and long exact sequences. A sequence M′ ⟶^{f} M ⟶^{g} M′′ of modules is exact if im f = ker g. If M′ = 0, this means that g is a monomorphism; if M′′ = 0, it means that f is an epimorphism. A longer sequence is exact if it is exact at each position. A short exact sequence of chain complexes is a sequence

0 ⟶ X′ ⟶^{f} X ⟶^{g} X′′ ⟶ 0

that is exact in each degree. Here 0 denotes the chain complex that is the zero module in each degree.

Proposition 1.3. A short exact sequence of chain complexes naturally gives rise to a long exact sequence of R-modules

⋯ ⟶ H_{q}(X′) ⟶^{f_{∗}} H_{q}(X) ⟶^{g_{∗}} H_{q}(X′′) ⟶^{∂} H_{q−1}(X′) ⟶ · · · .

Proof. Write [x] for the homology class of a cycle x. We define the “connecting homomorphism” ∂ : H_{q}(X′′) ⟶ H_{q−1}(X′) by ∂[x′′] = [x′], where f(x′) = d(x) for some x such that g(x) = x′′. There is such an x since g is an epimorphism, and there is such an x′ since gd(x) = dg(x) = 0. It is a standard exercise in “diagram chasing” to verify that ∂ is well defined and the sequence is exact. Naturality means that a commutative diagram of short exact sequences of chain complexes gives rise to a commutative diagram of long exact sequences of R-modules. The essential point is the naturality of the connecting homomorphism, which is easily checked. □

1.5. Dual cochain complexes and Hom complexes. For a chain complex X = X_{∗}, we define the dual cochain complex X^{∗} by setting

X^{n} = Hom(X_{n}, R) and d^{n} = (−1)^{n} Hom(d_{n+1}, id).

As with tensor products, we understand Hom to mean Hom_{R} when R is clear from the context. On elements, for an R-map f : X_{n} ⟶ R and an element x ∈ X_{n+1},

(d^{n}f)(x) = (−1)^{n}f(d_{n}(x)).

More generally, for an R-module M, we define a cochain complex Hom(X, M) in the same way. The sign is conventional. In analogy with the notation H_{∗}(X; M) = H_{∗}(X ⊗ M), we write

H^{∗}(X; M) = H^{∗}(Hom(X, M)).

More generally, for a cochain complex Y, define

Hom(X, Y)^{n} = ×_{q} Hom(X_{q}, Y^{n−q})

with differential δ specified by

(δf)(x) = d(f(x)) − (−1)^{n}f(d(x))

More explicitly, writing f = (f_{q}), f_{q}: X_{q} ⟶ Y^{n−q}, this means that δ(f) = (g_{q}), where g_{q}: X_{q} ⟶ Y^{n+1−q} is given on x ∈ X_{q} as the difference of d^{n−q}(f_{q}(x)) and (−1)^{n}f_{q−1}d_{q}(x). When Y = M is concentrated in degree 0, this agrees with the previous definition.

Note that if we take X to be just a chain complex of ℤ-modules and take Hom’s over ℤ, then the definition still makes sense and gives a complex of R-modules. We have defined Hom’s between chain and cochain complexes in the way that they are most frequently used, but, when thinking categorically it makes more sense to regrade all cochain complexes as chain complexes and redefine

Hom(X, Y)_{n} = ×_{q} Hom(X_{q}, Y_{q+n}).

1.6. Relations between ⊗ and Hom. We record a few observations relating ⊗ and Hom of complexes, starting with relations between ⊗ and Hom on the category of R-modules. For R-modules L, M, and N, we have an adjunction

Hom(L ⊗ M, N) ≅ Hom(L, Hom(M, N)).

We also have a natural homomorphism

Hom(L, M) ⊗ N ⟶ Hom(L, M ⊗ N),

and this is an isomorphism if either L or N is a finitely generated projective Rmodule. Again, we have a natural map

Hom(L, M) ⊗ Hom(L′, M′) ⟶ Hom(L ⊗ L′, M ⊗ M′),

which is an isomorphism if L and L′ are finitely generated and projective or if L is finitely generated and projective and M = R.

We can replace L and L′ by chain complexes and obtain similar maps, inserting signs where needed. For example, a chain homotopy X ⊗ ℐ ⟶ X′ between chain maps f, g : X ⟶ X′ induces a chain map

Hom(X′, M) ⟶ Hom(X ⊗ ℐ , M) ≅ Hom(ℐ , Hom(X, M)) ≅ Hom(X, M) ⊗ ℐ^{∗},

where ℐ^{∗} = Hom(ℐ , R). It should be clear that this implies that our original chain homotopy induces a homotopy of cochain maps

f^{∗} ≃ g^{∗} : Hom(X′, M) ⟶ Hom(X, M).

2. The universal coefficient and Künneth theorems

We describe some classical results in homological algebra that explain how to calculate H_{∗}(X; M) from H_{∗}(X) ≡ H_{∗}(X; R) and how to calculate H_{∗}(X ⊗ Y) from H_{∗}(X) ⊗ H_{∗}(Y). We then describe how to calculate H^{∗}(X; M) from H_{∗}(X). We again work over a general commutative ring R, and ⊗ and Hom are implicitly understood to be taken over R.

2.1. Universal coefficients in homology. Let X and Y be chain complexes over R. We think of H_{∗}(X) ⊗ H_{∗}(Y) as a graded R-module which, in degree n, is ∑_{p+q=n} H_{p}(X) ⊗ H_{q}(Y). We define

α : H_{∗}(X) ⊗ H_{∗}(Y) ⟶ H_{∗}(X ⊗ Y)

by α([x] ⊗ [y]) = [x ⊗ y] for cycles x and y that represent homology classes [x] and [y]. As a special case, for an R-module M we have

α : H_{∗}(X) ⊗ M ⟶ H_{∗}(X ⊗ M).

We omit the proof of the following standard result, but we shall shortly give the quite similar proof of a cohomological analogue. Recall that an R-module M is said to be flat if the functor M ⊗ N is exact (that is, preserves exact sequences in the variable N). We say that a graded R-module is flat if each of its terms is flat.

We shall treat torsion products, which measure the failure of tensor products to be exact functors, shortly. For a principal ideal domain (PID) R, the only torsion product is the first one, denoted Tor_{1}^{R}(M, N). It can be computed by constructing a short exact sequence

0 ⟶ F_{1} ⟶ F_{0} ⟶ M ⟶ 0

and tensoring with N to obtain an exact seqence

0 ⟶ Tor_{1}^{R}(M, N) ⟶ F_{1} ⊗ N ⟶ F_{0} ⊗ N ⟶ M ⊗ N ⟶ 0,

where F_{1} and F_{0} are free R-modules. That is, we choose an epimorphism F_{0} ⟶ M and note that, since R is a PID, its kernel F_{1} is also free.

Theorem 2.1 (Universal coefficient). Let R be a P ID and let X be a flat chain complex over R. Then, for each n, there is a natural short exact sequence

0 ⟶ H_{n}(X) ⊗ M ⟶^{α} H_{n}(X ⊗ M) ⟶^{β} Tor_{1}^{R}(H_{n−1}(X), M) ⟶ 0.

The sequence splits, so that

H_{n}(X ⊗ M) ≅ (H_{n}(X) ⊗ M) ⊕ Tor_{1}^{R}(H_{n−1}(X), M),

but the splitting is not natural.

Remark 2.2. The result holds more generally when R is any ring and the chains and cycles of X are also flat R-modules.

Corollary 2.3. If R is a field, then

α : H_{∗}(X) ⊗ M ⟶ H_{∗}(X; M)

is a natural isomorphism.

2.2. The Künneth theorem. The universal coefficient theorem in homology is a special case of the Künneth theorem.

Theorem 2.4 (Künneth). Let R be a P ID and let X be a flat chain complex and Y be any chain complex. Then, for each n, there is a natural short exact sequence

0 ⟶ ∑_{p+q=n} H_{p}(X)⊗H_{q}(Y) ⟶^{α} H_{n}(X⊗Y) ⟶^{β} ∑_{p+q=n−1} Tor_{1}^{R}(H_{p}(X), H_{q}(Y)) ⟶ 0.

The sequence splits, so that

H_{n}(X ⊗ Y) ≅ ( ∑_{p+q=n} H_{p}(X) ⊗ H_{q}(Y)) ⊕ ( ∑_{p+q=n−1} Tor_{1}^{R}(H_{p}(X), H_{q}(Y))),

but the splitting is not natural.

This applies directly to the computation of the homology of the Cartesian product of CW complexes X and Y in view of the isomorphism

C_{∗}(X × Y) ≅ C_{∗}(X) ⊗ C_{∗}(Y).

Corollary 2.5. If R is a field, then

α : H_{∗}(X) ⊗ H_{∗}(Y) ⟶ H_{∗}(X ⊗ Y)

is a natural isomorphism.

We prove the corollary to give the idea. The general case is proved by an elaboration of the argument. There is a simple but important technical point to make here. Let us for the moment remember to indicate the ring over which we are taking tensor products. For chain complexes X and Y over ℤ, we have

(X ⊗_{ℤ} R) ⊗_{R} (Y ⊗_{ℤ} R) ≅ (X ⊗_{ℤ} Y) ⊗_{ℤ} R.

We can therefore use the corollary to compute H_{∗}(X ⊗_{ℤ} Y; R) from H_{∗}(X; R) and H_{∗}(Y; R).

Proof of the corollary. Assume first that X_{i} = 0 for i ≠ p, so that X = X_{p} is just an R-module with no differential. The square commutes and the row and column are exact in the diagram

\xymatrix{ &  & 0 \ar[d] \\ 0 \ar[r] & B_{q}(Y) \ar[r] & Z_{q}(Y) \ar[d] \ar[r] & H_{q}(Y) \ar[r] & 0. \\  & Y_{q+1} \ar[r]_{d_{q+1}} \ar[u]^{d_{q+1}} & Y_{q} \ar[d]^{d_{q}} \\  &  & Y_{q−1}}

Since all modules over a field are free and thus flat, this remains true when we tensor the diagram with X_{p}. This proves that if n = p + q, then

Z_{n}(X_{p} ⊗ Y) = X_{p} ⊗ Z_{q}(Y), B_{n}(X_{p} ⊗ Y) = X_{p} ⊗ B_{q}(Y),

and therefore

H_{n}(X ⊗ Y) = X_{p} ⊗ H_{q}(Y).

In the general case, regard the graded modules Z(X) and B(X) as chain complexes with zero differential. The exact sequences

0 ⟶ Z_{p}(X) ⟶ X_{p} ⟶^{d_{p}} B_{p−1}(X) ⟶ 0

of R-modules define a short exact seqence of chain complexes since d_{p−1} ∘ d_{p} = 0. Define the suspension of a graded R-module N by (ΣN)_{n+1} = N_{n}. Tensoring with Y, we obtain a short exact sequence of chain complexes

0 ⟶ Z(X) ⊗ Y ⟶ X ⊗ Y ⟶ ΣB(X) ⊗ Y ⟶ 0.

It follows from the first part and additivity that

H_{∗}(Z(X) ⊗ Y) = Z(X) ⊗ H_{∗}(Y) and H_{∗}(ΣB(X) ⊗ Y) = ΣB(X) ⊗ H_{∗}(Y).

Moreover, by inspection of definitions, the connecting homomorphism of the long exact sequence of homology modules associated to our short exact sequence of chain complexes is just the inclusion B ⊗ H_{∗}(Y) ⟶ Z ⊗ H_{∗}(Y). In particular, the long exact sequence breaks up into short exact sequences

0 ⟶ B(X) ⊗ H_{∗}(Y) ⟶ Z(X) ⊗ H_{∗}(Y) ⟶ H_{∗}(X ⊗ Y) ⟶ 0.

However, since tensoring with H_{∗}(Y) is an exact functor, the cokernel of the inclusion B ⊗ H_{∗}(Y) ⟶ Z ⊗ H_{∗}(Y) is H_{∗}(X) ⊗ H_{∗}(Y). The conclusion follows. □

2.3. Universal coefficients in cohomology. We have a cohomological version of the universal coefficient theorem. We shall treat Ext modules, which measure the failure of Hom to be an exact functor, shortly. For a PID R, the only Ext module is the first one, denoted Ext_{R}^{1}(M, N). It can be computed by constructing a short exact sequence

0 ⟶ F_{1} ⟶ F_{0} ⟶ M ⟶ 0

and applying Hom to obtain an exact seqence

0 ⟶ Hom(M, N) ⟶ Hom(F_{0}, N) ⟶ Hom(F_{1}, N) ⟶ Ext_{R}^{1}(M, N) ⟶ 0,

where F_{1} and F_{0} are free R-modules.

For each n, define

α : H^{n}(Hom(X, M)) ⟶ Hom(H_{n}(X), M)

by letting α[f]([x]) = f(x) for a cohomology class [f] represented by a “cocycle” f : X_{n} ⟶ M and a homology class [x] represented by a cycle x. It is easy to check that f(x) is independent of the choices of f and x since x is a cycle and f is a cocycle.

Theorem 2.6 (Universal coefficient). Let R be a P ID and let X be a free chain complex over R. Then, for each n, there is a natural short exact sequence

0 ⟶ Ext_{R}^{1}(H_{n−1}(X), M) ⟶^{β} H^{n}(X; M) ⟶^{α} Hom(H_{n}(X), M) ⟶ 0.

The sequence splits, so that

H^{n}(X; M) ≅ Hom(H_{n}(X), M) ⊕ Ext_{R}^{1}(H_{n−1}(X), M),

but the splitting is not natural.

Corollary 2.7. If R is a field, then

α : H^{∗}(X; M) ⟶ Hom(H_{∗}(X), M)

is a natural isomorphism.

Again, there is a technical point to be made here. If X is a complex of free Abelian groups and M is an R-module, such as R itself, then

Hom_{ℤ}(X, M) ≅ Hom_{R}(X ⊗_{ℤ} R, M).

One way to see this is to observe that, if B is a basis for a free Abelian group F, then Hom_{ℤ}(F, M) and Hom_{R}(F ⊗_{ℤ} R, M) are both in canonical bijective correspondence with maps of sets B ⟶ M. More algebraically, a homomorphism f : F ⟶ M of Abelian groups determines the corresponding map of R-modules as the composite of f ⊗ id and the action of R on M:

F ⊗_{ℤ} R ⟶ M ⊗_{ℤ} R ⟶ M.

2.4. Proof of the universal coefficient theorem. We need two properties of Ext in the proof. First, Ext_{R}^{1}(F, M) = 0 for a free R-module F. Second, when R is a PID, a short exact sequence

0 ⟶ L′ ⟶ L ⟶ L′′ ⟶ 0

of R-modules gives rise to a six-term exact sequence

0 ⟶ Hom(L′′, M) ⟶ Hom(L, M) ⟶ Hom(L′, M)

⟶^{δ} Ext_{R}^{1}(L′′, M) ⟶ Ext_{R}^{1}(L, M) ⟶ Ext_{R}^{1}(L′, M) ⟶ 0.

Proof of the universal coefficient theorem. We write B_{n} = B_{n}(X), Z_{n} = Z_{n}(X), and H_{n} = H_{n}(X) to abbreviate notation. Since each X_{n} is a free R-module and R is a PID, each B_{n} and Z_{n} is also free. We have short exact sequences

\xymatrix{0 \ar[r] & B_{n} \ar[r]^{i_{n}} & Z_{n} \ar[r]^{π_{n}} & H_{n} \ar[r] & 0}

and

\xymatrix{0 \ar[r] & Z_{n} \ar[r]^{j_{n}} & X_{n} \ar[r]^{d_{n}} & B_{n−1} \ar@{-->}[l]^{σ_{n}} \ar[r] & 0;}

we choose a splitting σ_{n} of the second. Writing f^{∗} = Hom(f, M) consistently, we obtain a commutative diagram with exact rows and columns

\xymatrix{ &  & 0 & 0 \ar[d] \\ 0 \ar[r] & Hom(H_{n}, M) \ar[r]^{π_{n}^{∗}} & Hom(Z_{n}, M) \ar[r]^{i_{n}^{∗}} \ar[u] & Hom(B_{n}, M) \ar[d]^{d_{n+1}^{∗}} \\ ⋯ \ar[r] & Hom(X_{n−1}, M) \ar[r]^{d_{n}^{∗}} \ar[d]_{j_{n−1}^{∗}} & Hom(X_{n}, M) \ar[u]_{j_{n}^{∗}} \ar[r]^{d_{n+1}^{∗}} \ar@{-->}[d]_{σ_{n}^{∗}} & Hom(X_{n+1}, M) \ar[r] & ⋯ \\  & Hom(Z_{n−1}, M) \ar[r]_{i_{n−1}^{∗}} \ar[d] & Hom(B_{n−1}, M) \ar[r]_{δ} \ar[u]_{d_{n}^{∗}} \ar@{-->}[ur]_{0} & Ext_{R}^{1}(H_{n−1}, M) \ar[r] & 0 \\  & 0 & 0 \ar[u]}

By inspection of the diagram, we see that the canonical map α coincides with the composite

H^{n}(X; M) = ker d_{n+1}^{∗}/ im d_{n}^{∗} = ker i_{n}^{∗}j_{n}^{∗}/ im d_{n}^{∗}i_{n−1}^{∗} ⟶^{j_{n}^{∗}} im π_{n}^{∗} ⟶^{(π_{n}^{∗})^{−1}} Hom(H_{n}, M).

Since j_{n}^{∗} is an epimorphism, so is α. The kernel of α is im d_{n}^{∗}/ im d_{n}^{∗}i_{n−1}^{∗}, and δ(d_{n}^{∗})^{−1} maps this group isomorphically onto Ext_{R}^{1}(H_{n−1}, M). The composite δσ_{n}^{∗} induces the required splitting. □

2.5. Künneth relations for cochain complexes. If Y and Y′ are cochain complexes, then we have the natural homomorphism

α : H^{∗}(Y) ⊗ H^{∗}(Y′) ⟶ H^{∗}(Y ⊗ Y′)

given by α([y]⊗[y′]) = [y⊗y′], exactly as for chain complexes. In fact, by regrading, we may view this as a special case of the map for chain complexes. The Künneth theorem applies to this map. For its flatness hypothesis, it is useful to remember that, for any Noetherian ring R, the dual Hom(F, R) of a free R-module is a flat R-module.

As indicated in §1.6, if Y = Hom(X, M) and Y′ = Hom(X′, M′) for chain complexes X and X′ and R-modules M and M′, then we also have the map of cochain complexes

ω : Hom(X, M) ⊗ Hom(X′, M′) ⟶ Hom(X ⊗ X′, M ⊗ M′)

specified by the formula

ω(f ⊗ f′)(x ⊗ x′) = (−1)^{(deg f′)(deg x)}f(x) ⊗ f′(x′).

Also writing ω for the map it induces on cohomology, we then have the composite

ω ∘ α : H^{∗}(X; M) ⊗ H^{∗}(X′; M′) ⟶ H^{∗}(X ⊗ X′; M ⊗ M′).

When M = M′ = A is a commutative R-algebra, we may compose with the map

H^{∗}(X ⊗ X′; A ⊗ A) ⟶ H^{∗}(X ⊗ X′; A)

induced by the multiplication of A to obtain a map

H^{∗}(X; A) ⊗ H^{∗}(X′; A) ⟶ H^{∗}(X ⊗ X′; A).

The cases most commonly used are when R = ℤ and A is either ℤ or a field. For example, this is a starting point for the definition of the cup product in topology.

3. Torsion products

We give a quick development of the basic theory of torsion products. Here we change our point of view and work more generally with non-commutative rings R and their right and left modules. Thus, in general, M ⊗_{R} N is only an Abelian group. When R is commutative, all of our functors take values in the category of R-modules rather than just Abelian groups.

3.1. Projective resolutions. We work with right R-modules here, but we could equally well work with left R-modules. Recall that an R-module P is said to be projective if for each epimorphism g: M ⟶ N and each map f: P ⟶ N, there exists a map f̃: P ⟶ M such that g ∘ f̃ = f. This means that

Hom(id, g): Hom_{R}(P, M) ⟶ Hom(P, N)

is an epimorphism. There is a standard characterization.

Lemma 3.1. A module P is projective if and only if it is a direct summand of a free module. Any projective module is flat.

Proof. It is clear that R itself is projective and any direct sum of projective modules is projective. Therefore every free module is projective. If there is a module Q such that P ⊕ Q = F is free, then, using the inclusion P ⟶ F and projection F ⟶ P, we see that P is projective. If P is projective and g: F ⟶ P is an epimorphism with F free, as can always be chosen, then application of projectivity to the identity map P ⟶ P shows that P is a direct summand of F. Since direct sums and direct summands of flat modules are flat, the second statement follows. □

Let M be an R-module. A complex of R-modules over M is a complex of the form

⋯ ⟶ X_{i+1} ⟶^{d_{i+1}} X_{i} ⟶^{d_{i}} X_{i−1} ⟶ ⋯ ⟶ X_{0} ⟶^{ε} M ⟶ 0.

It is a projective (or free or flat) complex over M if each X_{i} is projective (or free or flat). It is a resolution of M if the displayed sequence is exact. It is appropriate to think of M itself as a complex concentrated in degree 0 and ε: X ⟶ M as a morphism of complexes. If X is a resolution of M, then ε induces an isomorphism on homology since Coker d_{1} = M.

Lemma 3.2. Every R-module M has a projective resolution.

Proof. Every module is a quotient of a free module. Start with an epimorphism ε: X_{0} ⟶ M with X_{0} free. Then choose an epimorphism X_{1} ⟶ Ker ε, with X_{1} free and let d_{1} be its composite with the inclusion Ker ε ⊂ X_{0}. Continue inductively to construct epimorphisms X_{i+1} ⟶ Ker d_{i}. □

Projective resolutions are unique up to chain homotopy equivalence, as we see by taking f = id in the following result.

Lemma 3.3. Let f: M ⟶ N be a map of R-modules. Let ε: X ⟶ M be a projective complex over M and let ζ: Y ⟶ N be a resolution of N. Then there is a map f̃: X ⟶ Y of chain complexes such that ζ ∘ f̃ = f ∘ ε, and f̃ is unique up to chain homotopy.

Proof. Consider the following diagram.

\xymatrix{⋯ \ar[r] & X_{i+1} \ar[r]^{d_{i+1}} \ar[d]_{f̃_{i+1}} & X_{i} \ar[r]^{d_{i}} \ar[d]_{f̃_{i}} & X_{i−1} \ar[r] \ar[d]^{f̃_{i−1}} & ⋯ \ar[r] & X_{0} \ar[d]^{f̃_{0}} \ar[r]^{ε} & M \ar[r] \ar[d]^{f} & 0 \\ ⋯ \ar[r] & Y_{i+1} \ar[r]_{d_{i+1}} & Y_{i} \ar[r]_{d_{i}} & Y_{i−1} \ar[r] & ⋯ \ar[r] & Y_{0} \ar[r]_{ζ} & N \ar[r] & 0}

Since X_{0} is projective and ζ is an epimorphism, there exists a map f̃_{0} such that ζf̃_{0} = fε. Inductively (thinking of f as f_{−1} and d_{−1} as ε or ζ), suppose given a map f̃_{i−1}, i ≥ 1, such that d_{i−1}f̃_{i−1} = f̃_{i−2}d_{i−1}. Then d_{i−1}f̃_{i−1}d_{i} = 0, so that f̃_{i−1}d_{i} maps X_{i} to Ker d_{i−1} = Im d_{i}. We obtain f̃_{i} such that d_{i}f̃_{i} = f̃_{i−1}d_{i} by the projectivity of X_{i}.

Now assume given another such map f̃′. Then ζ(f̃_{0} − f̃′_{0}) = 0, so by the projectivity of X_{0} and surjectivity of ζ, we obtain s_{0} : X_{0} ⟶ Y_{1} such that d_{1}s_{0} = f̃_{0} − f̃′_{0}. Inductively (thinking of s_{−1} as zero), suppose given s_{i−1}, i ≥ 1, such that d_{i}s_{i−1} + s_{i−2}d_{i−1} = f̃_{i−1} − f̃′_{i−1}. Then d_{i}(f̃_{i} − f̃′_{i} − s_{i−1}d_{i}) = 0, so there exists s_{i}: X_{i} ⟶ Y_{i+1} such that d_{i+1}s_{i} = f̃_{i} − f̃′_{i} − s_{i−1}d_{i} by the projectivity of X_{i}. □

We need another such lemma to deal with long exact sequences of Tor groups.

Lemma 3.4. Let 0 ⟶ M′ ⟶^{f} M ⟶^{g} M′′ ⟶ 0 be an exact sequence of Rmodules. Let X′ and X′′ be projective resolutions of M′ and M′′. Then there is a projective resolution X of M and an exact sequence of resolutions over the given exact sequence:

\xymatrix{0 \ar[r] & X′ \ar[r]^{f̃} \ar[d]_{ε′} & X \ar[r]^{g̃} \ar[d]^{ε} & X′′ \ar[r] \ar[d]^{ε′′} & 0 \\ 0 \ar[r] & M′ \ar[r]_{f} & M \ar[r]_{g} & M′′ \ar[r] & 0.}

Proof. Define X_{i} = X′_{i} ⊕ X′′_{i} and let f̃ and g̃ be the canonical inclusion and projection. We must construct an epimorphism ε: X_{0} ⟶ M and maps d_{i}: X_{i} ⟶ X_{i−1} that give a complex over M such that the diagram commutes. By the long exact sequence associated to the resulting short exact sequence of chain complexes, it will follow that X is a projective resolution of M. The restriction of ε to X′_{0} must be ε′, and the restriction of d_{i} to X′_{i} must be d′_{i}. Choose the restriction of ε to X′′_{0} to be any map ζ: X′′_{0} ⟶ M such that gζ = ε′′. There is such a map since X′′_{0} is projective, and a diagram chase shows that ε is then an epimorphism. For the diagram to commute, the restriction of d_{i}, i ≥ 1, to X′′_{0} must be of the form (e_{i}, d′′_{i}), e_{i}: X′′_{i} ⟶ X′_{i−1}. For X to be a complex over M, we must have ε′e_{1} = −ζd′′_{1} and, for i ≥ 2, d′_{i−1}e_{i} = −e_{i−1}d′′_{i}. These will ensure that εd_{1} = 0 and d_{i−1}d_{i} = 0. Since ε′′d′′_{1} = 0, ζd′′_{1} can be viewed as a map X′′_{1} ⟶ M′, and we can choose such an e_{1}. Given e_{i−1}, e_{i−1}d′′_{i}: X′′_{i} ⟶ X′_{i−2} takes values in Ker d′_{i−2} = Imd′_{i−1}, and we can choose such an e_{i}. □

3.2. The definition and properties of Tor. For a short exact sequence of right R-modules 0 ⟶ M′ ⟶ M ⟶ M′′ ⟶ 0 and a left R-module N, the sequence of Abelian groups

M′ ⊗_{R} N ⟶ M ⊗_{R} N ⟶ M′′ ⊗_{R} N ⟶ 0

is exact, but the left-most arrow need not be a monomorphism. We say that ⊗_{R} is right exact. Torsion products measure the deviation from exactness. Here is an omnibus theorem that states the basic properties of torsion products.

Theorem 3.5. There are Abelian group–valued functors Tor_{n}^{R}(M, N) of right Rmodules M and left R-modules N, together with natural connecting homomorphisms

∂: Tor_{n}^{R}(M′′, N) ⟶ Tor_{n−1}^{R}(M′, N) and ∂: Tor_{n}^{R}(M, N′′) ⟶ Tor_{n−1}^{R}(M, N′)

for short exact sequences

0 ⟶ M′ ⟶ M ⟶ M′′ ⟶ 0 and 0 ⟶ N′ ⟶ N ⟶ N′′ ⟶ 0.

These satisfy the following properties.

(i) Tor_{n}^{R}(M, N) = 0 for n < 0. (ii) T or_{0}^{R}(M, N) is naturally isomorphic to M ⊗_{R} N. (iii) Tor_{n}^{R}(M, N) = 0 for n > 0 if either M or N is projective. (iv) The following sequences are exact.

⋯ ⟶ Tor_{n}^{R}(M′, N) ⟶ Tor_{n}^{R}(M, N) ⟶ Tor_{n}^{R}(M′′, N) ⟶ Tor_{n−1}^{R}(M′, N) ⟶ ⋯

⋯ ⟶ Tor_{n}^{R}(M, N′) ⟶ Tor_{n}^{R}(M, N) ⟶ Tor_{n}^{R}(M, N′′) ⟶ Tor_{n−1}^{R}(M, N′) ⟶ ⋯

For each fixed N, the functors Tor_{n}^{R}(M, N) of M together with the natural connecting homomorphisms ∂: Tor_{n}^{R}(M′′, N) ⟶ Tor_{n−1}^{R}(M′, N) on exact sequences

0 ⟶ M′ ⟶^{f} M ⟶^{g} M′′ ⟶ 0 are uniquely determined up to isomorphism by (i)—(iv), and similarly for each fixed M.

Proof. The naturality statements imply that the long exact sequences of (iv) are functorial on short exact sequences. For the existence statement, let us fix N. Choose a projective resolution X of M. Define

Tor_{∗}^{R}(M, N) = H_{∗}(X ⊗_{R} N)

Since chain homotopic maps of complexes induce the same map on homology, Lemma 3.3 shows that this is well-defined up to natural isomorphism and gives a functor of M. Manifestly, it also gives a functor of N. Since ⊗_{R} is right exact, (ii) is clear. Since the identity map X_{0} = M ⟶ M is a projective resolution of a projective module M and since projective modules are flat, both parts of (iii) are also clear. We define the first map ∂ and derive the first long exact sequence of (iv) by use of Lemma 3.4. We define the second map ∂ and derive the second long exact sequence by use of the short exact sequence of chain complexes

0 ⟶ X ⊗ N′ ⟶ X ⊗ N ⟶ X ⊗ N′′ ⟶ 0.

Here exactness holds by the projectivity and thus flatness of the X_{i}.

For the axiomatization, we proceed by induction on n, starting from (i) and (ii). If we have two systems of functors and natural connecting homomorphisms and we have proven they are isomorphic through stage (n − 1), then a diagram chase starting from short exact sequences 0 ⟶ M′ ⟶ M ⟶ M′′ ⟶ 0 where M is free shows that they are isomorphic at the stage n.

We can reverse the roles of M and N in our original construction, starting from a projective resolution of N. We again have all of the properties (i) – (iv), so by the uniqueness we obtain the same sequence of functors and natural connecting homomorphisms. Moreover, we can also check that H_{∗}(X ⊗_{R} Y) gives functors and natural connecting homomorphisms that satisfy the axioms. Altenatively, we can observe that the morphisms of complexes X ⟶ M and Y ⟶ N induce morphisms of complexes

\xymatrix{X ⊗_{R} M & X ⊗_{R} Y \ar[r] \ar[l] & Y ⊗_{R} N.}

Either by a direct, hands on, Künneth type argument, or more elegantly by an application of the theory of spectral sequences if one knows about that, one can check directly that these give isomorphisms. □

3.3. Change of rings. In applications, it is very often the case that we use further structure on torsion products. We describe some of this here and in the next section. We take the opportunity to introduce and use some standard and important adjoint functors on the way.

In this section, we fix a homomorphism of rings f: R ⟶ S. Let M and P be a right R module and a right S-module, and let g: M ⟶ P be an f-equivariant map, meaning that g(mr) = g(m)f(r). Similarly, let N and Q be a left R-module and a left S-module and let h: N ⟶ Q be f-equivariant, h(rn) = f(r)h(n). We shall obtain a map

(3.6)  Tor_{∗}^{f}(g, h): Tor_{∗}^{R}(M, N) ⟶ Tor_{∗}^{S}(P, Q).

This allows us to view Tor as a functor of all three variables.

Let us write f^{∗} for the pullback of action functor ℳ_{S} ⟶ ℳ_{R}, where ℳ_{R} denotes the category of right R-modules. Thus f^{∗}P is P with the right R-action pr = pf(r). Clearly g is just a map of right R-modules M ⟶ f^{∗}P. The functor f^{∗} has left and right adjoints, often denoted f_{!} and f_{∗}, that are given by extension and coextension of scalars. Explicitly,

f_{!}M = M ⊗_{R} S and f_{∗}M = Hom_{R}(S, M).

We are using that S is both a left and a right S-module and therefore a left and right R-module via f. In defining M ⊗_{R} S, we use the left action of R to define the tensor product and use the right action of S to give M ⊗_{R} S an S-action, whereas Hom_{R}(S, M) is the Abelian group of maps of right R-modules k: S ⟶ M, with right S-action given by (ks)(s′) = k(ss′). That is, it is induced by the left action of S on itself. The adjunctions read

Hom_{S}(f_{!}M, P) ≅ Hom_{R}(M, f^{∗}P) and Hom_{R}(f^{∗}P, M) ≅ Hom_{S}(P, f_{∗}M).

The easy verifications are left to the reader.

The functor f_{!} takes R to S and preserves direct sums, hence it takes R-projective modules to S-projective modules. If f^{∗}S is flat as an R-module, in which case we say that f is a “flat extension” of R, then f_{!} takes exact sequences of R-modules to exact sequences of S-modules. Now Lemma 3.3 gives the following result.

Lemma 3.7. Let X be a projective R-resolution of M and Y be a projective Sresolution of P. Then there is a map g̃: f_{!}X ⟶ Y of S-projective complexes over the adjoint ĝ: f_{!}M ⟶ P of the map g: M ⟶ f^{∗}P. It is a map of projective resolutions if S is a flat extension of R.

We agree to write f_{!} for both of the functors M ⊗_{R} S and S ⊗_{R} N. We have the natural homomorphism of Abelian groups

ζ: M ⊗_{R} N ⟶ f_{!}M ⊗_{S} f_{!}N ≅ M ⊗_{R} S ⊗_{R} N

specified by ζ(m ⊗ n) = m ⊗ 1 ⊗ n. With the notations of the previous lemma, and using the adjoint ĥ: f_{!}N ⟶ Q of h: N ⟶ f^{∗}Q, this gives a natural composite

X ⊗_{R} N ⟶ f_{!}X ⊗_{S} f_{!}N ⟶ Y ⊗_{S} Q.

Passing to homology, we obtain the promised map (3.6). A moment’s reflection shows that it factors naturally as the composite

\xymatrix{Tor_{∗}^{R}(M, N) \ar[r]^{Tor_{∗}^{id}(η,η)} & Tor_{∗}^{R}(f^{∗}f_{!}M, f^{∗}f_{!}N) \ar[r]^{Tor_{∗}^{f}(id,id)} & Tor_{∗}^{S}(f_{!}M, f_{!}N) \ar[r]^{Tor_{∗}^{f}(ĝ,ĥ)} & Tor_{∗}^{S}(P, Q)}

where η: M ⟶ f^{∗}f_{!}M is the unit of the adjunction, η(m) = m ⊗ 1 ∈ M ⊗_{R} S.

Remember that when R is commutative, Tor_{∗}^{R}(M, N) is a graded R-module. The following result could be obtained a little more directly but it illustrates ideas to derive it from what we have done.

Proposition 3.8. Let T be a multiplicative subset of a commutative ring R and let S = R_{T} = R[T^{−1}] be the localization of R at T. For all R-modules M and N, the canonical map

Tor_{∗}^{R}(M, N) ⟶ Tor_{∗}^{S}(M ⊗_{R} S, N ⊗_{R} S)

is localization at T.

Proof. The localization functor sends M to f_{!}M = M ⊗_{R} S, where f: R ⟶ S is the localization map. Of course, f is a flat extension. The target of our map is an S-module and is therefore T -local. After tensoring with S, our map becomes the isomorphism on homology induced by the canonical isomorphism of chain complexes

(X ⊗_{R} N) ⊗_{R} S ≅ (X ⊗_{R} S) ⊗_{S} (N ⊗_{R} S)

where X is an R-projective resolution of M. □

3.4. Pairings and products. Again let R and S be rings. In applications, it is often the case that our rings are algebras over a commutative ring k. Taking tensor products over k rather than ℤ and writing ⊗ = ⊗_{k}, the constructions of this section generalize directly. Let M and N be right and left R-modules, and let P and Q be right and left S-modules. Letting γ be the symmetry isomorphism, R ⊗ S is a ring with product

\xymatrix{R ⊗ S ⊗ R ⊗ S \ar[r]^{id ⊗γ⊗id} & R ⊗ R ⊗ S ⊗ S \ar[r] & R ⊗ S}

induced by the products of R and S. Similarly, M ⊗ P is a right (R ⊗ S)-module with action

\xymatrix{M ⊗ P ⊗ R ⊗ S \ar[r]^{id ×γ×id} & M ⊗ R ⊗ P ⊗ S \ar[r] & M ⊗ P}

induced by the actions of R on M and S on P, and N ⊗ Q is a left R ⊗ S-module.

Let X be an R-projective resolution of M and Y be a S-projective resolution of P. Then X ⊗ Y is an R ⊗ S-projective complex over M ⊗ P. Rather than use a Künneth argument to check that it is a resolution, we can map it to a projective R ⊗ S-projective resolution of M ⊗ P by use of Lemma 3.3. Using the natural map α from the tensor product of homologies to the homology of a tensor product, the map

(X ⊗_{R} N) ⊗ (Y ⊗_{S} Q) ⟶ (X ⊗ Y) ⊗_{R⊗S} (N ⊗ Q)

induced by id ⊗γ ⊗ id gives rise to a natural pairing

(3.9)  Tor_{∗}^{R}(M, N) ⊗ Tor^{S}(P, Q) ⟶ Tor_{∗}^{R⊗S}(M ⊗ P, N ⊗ Q).

Now recall that a ring R is commutative if and only if its product is a map of rings. In formulas, this means that rr′ss′ = ss′rr′ for all r, r′, s, s′ if and only if rs = sr for all r and s. Taking r′ = 1 = s′ gives one implication, and the other is obvious. When we deal with graded rings with products R_{m} ⊗ R_{n} ⟶ R_{m+n}, we understand commutativity to mean graded commutativity, rs = (−1)^{mn}sr. Formally, that means that we are defining the graded symmetry isomorphism γ with our usual sign convention on interchange.

We say that a ring R is augmented over a ring k if there is an epimorphism of rings ε: R ⟶ k. It is especially interesting to consider the quotient homomorphism ε: R ⟶ R/m = k of a local ring R with maximal ideal m.

Theorem 3.10. If R is a commutative ring with augmentation ε: R ⟶ k, then Tor_{∗}^{R}(k, k) is a graded commutative k-algebra.

Proof. We are regarding k as the R-module ε^{∗}k. Writing ϕ for the products on R and on k, the required product on Tor_{∗}^{R}(k, k) is the composite

Tor_{∗}^{R}(k, k) ⊗_{k} Tor_{∗}^{R}(k, k) ⟶ Tor_{∗}^{R⊗R}(k ⊗ k, k ⊗ k) ⟶ Tor_{∗}^{R}(k, k).

While R is not a k-algebra, the construction just given works with M = N = P = Q to give the first map, and the second map is Tor^{ϕ}(ϕ, ϕ) of (3.6). Note that ϕ induces an isomorphism k ⊗_{R} k ⟶ k, so that Tor_{0}^{R}(k, k) ≅ k. It is a straightforward exercise, left to the reader, that the product on Tor_{∗}^{R}(k, k) is associative, unital, and graded commutative. □

3.5. A sample computation. It is all very well to define a product, but how do we compute it? A DGA (differential graded k-algebra) is a k-chain complex A with an associative and unital product A ⊗_{k} A ⟶ A which is a map of chain complexes, meaning d(ab) = d(a)b + (−1)^{dega}ad(b). It is (graded) commutative if ab = (−1)^{degadegb}ba for all a and b. We can also define the weaker notion of a DGA up to chain homotopy. This is defined in the same way, except that we only require associativity and unitality up to chain homotopy. The homotopies ensure that H_{∗}(A) is a graded algebra. For example, the (normalized) singular cochains of a space with coefficients in k form a cohomologically graded DGA, but it is only commutative up to chain homotopy, and that is enough to ensure that the cohomology of a space is a commutative k-algebra.

Now return to a commutative ring R with augmentation ε : R ⟶ k, for example an augmented k-algebra. Let X be an R-projective resolution of k. Then Lemma 3.3 gives that there is a map of (R ⊗ R)-chain complexes ϕ̃: X ⊗ X ⟶ X over the product ϕ: k ⊗ k ⟶ k, where X is regarded as an (R ⊗ R)-chain complex via the product R ⊗ R ⟶ R. Since the product on k is associative, unital, and commutative, the same result applies to show that the product ϕ̃ is associative, unital, and (graded) commutative up to chain homotopy. Then X ⊗_{R} k is a DG k-algebra, and its homology is Tor_{∗}^{R}(k, k) as a k-algebra. This is all that one can expect in general, but for especially nice rings R, one can find an X which is actually a DGA, with no need for chain homotopies.

To illustrate, let R be the polynomial algebra k[x] with augmentation determined by ε(x) = 0. Let X be the graded k-algebra and free right R-module E[y] ⊗_{k} R, where E[y] is the exterior algebra on one generator y of degree 1. Thus y^{2} = 0, and E[y] is the free k-module with one basis element 1 of degree 0 and one basis element y of degree 1. Define ε: X ⟶ k by letting ε(1⊗1) = 1 and ε(y ⊗1) = 0 = ε(1⊗x).

Define a differential on X by letting d(y ⊗1) = 1⊗x and requiring d to be a map of R-modules. Then d(y ⊗x^{n}) = 1⊗x^{n+1}. Since X has the k-basis {1×x^{n}}∪{y ⊗x^{n}} we see that X is an R-free resolution of k. Moreover, it is a differential graded Ralgebra, and X ⊗_{R} k is the k-algebra E[y] with zero differential. This proves the case n = 1 of the following result.

Theorem 3.11. Let R be the polynomial algebra k[x_{1}, ⋯, x_{n}]. Then T or_{∗}^{R}(k, k) is the exterior algebra E[y_{1}, ⋯, y_{n}], where deg(y_{i}) = 1.

Proof. X = E[y_{1}, ⋯, y_{n}] ⊗ R is a DG R-algebra with differential determined by d(y_{i}) = x_{i} on generators over R, and it is isomorphic to the tensor product of DG k-algebras

(E[y_{1}] ⊗ k[y_{1}]) ⊗_{k} ⋯ ⊗_{k} (E[y_{n}] ⊗ k[y_{n}]).

With the evident map to k, it follows that the DGA X is an R-free resolution of k. The differential on X ⊗_{R} k = E[y_{1}, ⋯, y_{n}] is zero, and the conclusion follows. □

Since the associated graded k-algebra of a regular local ring R with respect to the filtration given by the powers of its maximal ideal is a polynomial algebra on n generators, where n is the Krull dimension of R is n, this suggests that the conclusion applies equally well to Tor_{∗}^{R}(k, k). In particular, this suggests that Tor_{q}^{R}(k, k) = 0 for q > n. In fact, we shall see later that much more is true. We state the result now and prove it later.

Theorem 3.12 (Serre). Let R be a (Noetherian) local ring of Krull dimension n. If Tor_{q}^{R}(k, k) is zero for any q > n, then R is regular. If R is regular, then Tor_{q}^{R}(M, N) = 0 for all R-modules M and N and all q > n and, as a k-algebra,

T or_{∗}^{R}(k, k) ≅ E[y_{1}, ⋯, y_{n}].

4. Ext groups

We give a quick parallel development of the basic theory of ext groups. We again work with non-commutative rings R and their right and left modules. By default, modules mean left modules, and then Hom_{R}(M, N) is the Abelian group of maps of left R-modules M ⟶ N. Again, when R is commutative, everything we do works just as well in the category of R-modules.

4.1. Two identities between Hom functors. For rings R and S, an (R, S)- bimodule M is a left R-module and right S-module with commuting actions, meaning that (rm)s = r(ms). When R is commutative, any R-module may be considered as an (R, R)-bimodule with rm = mr. We record two standard identities. Their proofs are elementary, but it is fun to use the Yoneda lemma and analogous identities between tensor products to derive them.

Lemma 4.1. Let M be a left R-module, N be a right S-module, and P be an (R, S)-bimodule. Then there is a natural isomorphism of Abelian groups

Hom_{R}(M, Hom_{S}(N, P)) ≅ Hom_{S}(N, Hom_{R}(M, P)).

Here the R and S actions on P induce the R and S actions on Hom_{S}(N, P) and Hom_{R}(M, P).

Lemma 4.2. Let M be a right R-module, N be an (R, S)-bimodule, and P be a left S-module. Then there is a natural isomorphism of Abelian groups

Hom_{S}(M ⊗_{R} N, P) ≅ Hom_{R}(M, Hom_{S}(N, P)).

Here the S and R actions on N induce the S and R actions on M ⊗_{R} N and Hom_{S}(N, P). The analogous result with left and right reversed also holds.

We shall have immediate use of the following special case of the reversed version. Here we specialize S to ℤ. We take N = R, regarded as a right R-module, noting that any right R-module can be viewed as a (ℤ, R)-bimodule.

Lemma 4.3. Let M be a left R-module and P be an Abelian group. Then there is a natural isomorphism of Abelian groups

Hom_{ℤ}(M, P) ≅ Hom_{R}(M, Hom_{ℤ}(R, P)).

4.2. Injective resolutions. Recall that modules mean left modules. A module I is said to be injective if for each monomorphism e: L ⟶ M and each map f: L ⟶ I, there exists a map f̃: M ⟶ I such that f̃∘ e = f. This means that

Hom(e, id): Hom_{R}(M, I) ⟶ Hom(L, I)

is an epimorphism. There is no analogue of Lemma 3.1, but there is the following analogue of its key consequence.

Lemma 4.4. Every R-module N embeds as a submodule of an injective R-module.

Proof. By an exercise, an Abelian group is divisible if and only if it is an injective ℤ-module. Clearly a direct sum of divisible Abelian groups is divisible, and so is a quotient of a divisible Abelian group. Since ℤ embeds in the divisible group ℚ and any Abelian group is a quotient of a free Abelian group, the result holds for modules over the ring ℤ. Define j: N ⟶ Hom_{ℤ}(R, N) by j(n)(r) = rn. On the right, N is regarded just as an Abelian group. Clearly j is a homomorphism of Abelian groups, but in fact it is a map of R-modules. Indeed, for s ∈ R,

j(sn)(r) = r(sn) = (rs)n = j(n)(rs) = (sj(n))(r)

where the last equality holds by the definition of the left action of R on Hom_{ℤ}(R, N). Moreover, j is a monomorphism since j(n)(1) = n. Now, ignoring the R-action on N, choose a monomorphism i: N ⟶ D, where D is a divisible Abelian group, and let i_{∗} = Hom(id, i): Hom_{ℤ}(R, N) ⟶ Hom_{ℤ}(R, D). Then i_{∗} and therefore the composite i_{∗} ∘ j is a monomorphism of R-modules. Using the natural isomorphism

Hom_{ℤ}(M, D) ≅ Hom_{R}(M, Hom_{ℤ}(R, D))

of Lemma 4.3, we see that Hom_{ℤ}(R, D) is injective as an R-module since D is injective as a ℤ-module. □

Let N be an R-module. A (cochain) complex of R-modules under N is a complex of the form

0 ⟶ N ⟶^{η} Y^{0} ⟶ ⋯ ⟶ Y^{i} ⟶ Y^{i+1} ⟶ ⋯

It is an injective complex under N if each Y^{i} is injective. It is a resolution of N if the displayed sequence is exact. We think of N itself as a complex concentrated in degree 0 and η: N ⟶ Y as a morphism of complexes. If Y is a resolution of N, then η induces an isomorphism on (co)homology since Ker d^{0} = N. Now the following three results are proven in exactly the same way as Lemmas 3.2, 3.3, and 3.4, except that we reverse all of the arrows and replace projectivity by injectivity.

Lemma 4.5. Every R-module N has an injective resolution.

Lemma 4.6. Let f: M ⟶ N be a map of R-modules. Let ζ: M ⟶ X be a resolution of M and let η: N ⟶ Y be an injective complex under N. Then there is a map f̃: X ⟶ Y of complexes such that f̃∘ ζ = η ∘ f, and f̃ is unique up to chain homotopy.

Lemma 4.7. Let 0 ⟶ N′ ⟶^{f} N ⟶^{g} N′′ ⟶ 0 be an exact sequence of R-modules. Let Y′ and Y′′ be injective resolutions of N′ and N′′. Then there is an injective resolution Y of N and an exact sequence of resolutions under the given exact sequence:

\xymatrix{0 \ar[r] & N′ \ar[r]^{f} \ar[d]_{η′} & N \ar[r]^{g} \ar[d]^{η} & N′′ \ar[r] \ar[d]^{η′′} & 0 \\ 0 \ar[r] & Y′ \ar[r]_{f̃} & Y \ar[r]_{g̃} & Y′′ \ar[r] & 0.}

4.3. The definition and properties of Ext. For a short exact sequence of Rmodules 0 ⟶ M′ ⟶ M ⟶ M′′ ⟶ 0 and an R-module N, the sequence of Abelian groups

0 ⟶ Hom_{R}(M′′, N) ⟶ Hom_{R}(M, N) ⟶ Hom_{R}(M′, N)

is exact, but the right-most arrow need not be a epimorphism. Similarly, for a short exact sequence of R-modules 0 ⟶ N′ ⟶ N ⟶ N′′ ⟶ 0 and an R-module M, the sequence of Abelian groups

0 ⟶ Hom_{R}(M, N′) ⟶ Hom_{R}(M, N) ⟶ Hom_{R}(M, N′′)

is exact, but the right-most arrow need not be a epimorphism. We say that the functor Hom_{R} is left exact. Ext groups measure the deviation from exactness. Here is an omnibus theorem that states their basic properties.

Theorem 4.8. There are Abelian group valued functors Ext_{R}^{n}(M, N) of (left) Rmodules M and N, together with natural connecting homomorphisms

δ: Ext_{R}^{n}(M′, N) ⟶ Ext_{R}^{n+1}(M′′, N) and δ: Ext_{R}^{n}(M, N′′) ⟶ Ext_{R}^{n+1}(M, N′)

for short exact sequences

0 ⟶ M′ ⟶ M ⟶ M′′ ⟶ 0 and 0 ⟶ N′ ⟶ N ⟶ N′′ ⟶ 0.

These satisfy the following properties.

(i) Ext_{R}^{n}(M, N) = 0 for n < 0. (ii) Ext_{R}^{0}(M, N) is naturally isomorphic to Hom_{R}(M, N). (iii) Ext_{R}^{n}(M, N) = 0 for n > 0 if either M is projective or N is injective. (iv) The following sequences are exact.

⋯ ⟶ Ext_{R}^{n}(M′′, N) ⟶ Ext_{R}^{n}(M, N) ⟶ Ext_{R}^{n}(M′, N) ⟶ Ext_{R}^{n+1}(M′′, N) ⟶ ⋯

⋯ ⟶ Ext_{R}^{n}(M, N′) ⟶ Ext_{R}^{n}(M, N) ⟶ Ext_{R}^{n}(M, N′′) ⟶ Ext_{R}^{n+1}(M, N′) ⟶ ⋯ For each fixed N, the functors Ext_{R}^{n}(M, N) of M together with the natural connecting homomorphisms δ: Ext_{R}^{n}(M′, N) ⟶ Ext_{R}^{n+1}(M′′, N) on exact sequences

0 ⟶ M′ ⟶^{f} M ⟶^{g} M′′ ⟶ 0 are uniquely determined up to isomorphism by (i)—(iv), and similarly for each fixed M.

Proof. The naturality statements imply that the long exact sequences of (iv) are functorial on short exact sequences. For the existence statement, let us fix N. Choose a projective resolution X of M. Define

Ext_{R}^{∗}(M, N) = H^{∗}(Hom_{R}(X, N))

Since chain homotopic maps of complexes induce the same map on homology, Lemma 4.6 shows that this is well-defined up to natural isomorphism and gives a functor of M. Manifestly, it also gives a functor of N. Since Hom_{R} is left exact, (ii) is clear, and (iii) is also clear. We define the first map δ and derive the first long exact sequence of (iv) by use of Lemma 4.7. We define the second map δ and derive the second long exact sequence by use of the short exact sequence of chain complexes

0 ⟶ Hom_{R}(X, N′) ⟶ Hom_{R}(X, N) ⟶ Hom_{R}(X, N′′) ⟶ 0.

Here exactness holds by the projectivity of the X_{i}.

For the axiomatization, we proceed by induction on n, starting from (i) and (ii). If we have two systems of functors and natural connecting homomorphisms and we have proven they are isomorphic through stage (n − 1), then a diagram chase starting from short exact sequences 0 ⟶ M′ ⟶ M ⟶ M′′ ⟶ 0 where M is free shows that they are isomorphic at the stage n.

We can reverse the roles of M and N in our original construction, starting from an injective resolution Y of N and redefining

Ext_{R}^{∗}(M, N) = H^{∗}(Hom_{R}(M, Y)).

We again have all of the properties (i) – (iv), so by the uniqueness we obtain the same sequence of functors and natural connecting homomorphisms. Moreover, we can also check that H_{∗}(Hom_{R}(X, Y)) gives functors and natural connecting homomorphisms that satisfy the axioms. Alternatively, we can observe that the morphisms of complexes X ⟶ M and N ⟶ Y induce morphisms of complexes

\xymatrix{Hom_{R}(X, N) \ar[r] & Hom_{R}(X, Y) & Hom_{R}(M, Y) \ar[l]}

and can check directly that these give isomorphisms. □

4.4. Change of rings. Just as for Tor, we can make Ext into a functor of three variables, allowing for change of rings. As in §3.3, let f: R ⟶ S be a map of rings, let M and N be R-modules, and let P and Q be S-modules. Let g: f^{∗}P ⟶ M and h: f_{∗}N ⟶ Q be maps of R-modules. We assume that S is projective as an R-module, and under that hypothesis we shall obtain a map

(4.9)  Ext_{f}^{∗}(g, h): Ext_{R}^{∗}(M, N) ⟶ Ext_{S}^{∗}(P, Q).

This allows us to view Ext as a functor of three variables.

Since S is R-projective, any projective S-module is projective as an R-module. Let Y be a projective resolution of the S-module P. Then f^{∗}Y is a projective resolution of the R-module f^{∗}P. If X is a projective resolution of M, there is a map g̃: f^{∗}Y ⟶ X over g. Using g̃ and h, there results a map

Hom_{R}(X, N) ⟶ Hom_{R}(f^{∗}Y, N) ≅ Hom_{S}(Y, f_{∗}N) ⟶ Hom_{S}(Y, Q)

of chain complexes. Passage to homology gives the promised map (4.9).

4.5. Extensions. Expanding on an exercise, we explain the classical interpretation of Ext_{R}^{1}(M, N) in terms of extensions of modules. We omit details. An extension of N by M is a short exact sequence

(4.10)  0 ⟶ N ⟶ E ⟶ M ⟶ 0.

A map of extensions is a commutative diagram

(4.11)  \xymatrix{0 \ar[r] & N \ar[d]_{f} \ar[r] & E \ar[d]^{g} \ar[r] & M \ar[d]^{h} \ar[r] & 0 \\ 0 \ar[r] & N′ \ar[r] & E′ \ar[r] & M′ \ar[r] & 0.}

It is an equivalence of extensions if f and h are identity maps, in which case g must be an isomorphism. Define Ext(M, N) to be the set of equivalence classes of extensions of N by M.

For a map f: N ⟶ N′ and an extension E of N by M, as in (4.10), we obtain an extension E′ of N′ by M by taking E′ to be the pushout of f and the inclusion N ⟶ E. By the universal property of pushouts applied to the quotient map E ⟶ M and 0: N′ ⟶ M, we obtain a map (4.11) in which h is the identity map of M. Dually for a map h: M ⟶ M′ and an extension E′ of N by M′, we obtain an extension E of N by M by taking E to be the pullback of h and the quotient map E′ ⟶ M′. With these constructions, Ext(M, N) is a contravariant functor of N and a covariant functor of M.

Given two extensions E and E′ of N by M, we can take direct sums to obtain

0 ⟶ N ⊕ N ⟶ E ⊕ E′ ⟶ M ⊕ M ⟶ 0

Using functoriality with respect to the diagonal N ⟶ N ⊕ N and the codiagonal (or sum) ∇: M ⊕M ⟶ M, we construct an extension of N by M, denoted E +E′ and called the Baer sum of E and E′. This gives Ext(M, N) a natural structure of Abelian group.

Theorem 4.12. Ext(M, N) is naturally isomorphic to Ext_{R}^{1}(M, N).

Proof. If X_{2} ⟶ X_{1} ⟶ X_{0} ⟶ M ⟶ 0 is the start of a projective resolution of M and E is an extension of N by M, Lemma 3.3 gives a commutative diagram

[figure: X_{2}; X_{1}; X_{0}; M; 0; 0; N; E; M; 0.]

The map X_{1} ⟶ N is a cocycle of Hom_{R}(X, N). Its cohomology class is independent of choices, and the resulting map Ext_{R}^{1}(M, N) ⟶ Ext(M, N) is an isomorphism. □

4.6. Long extensions and the Yoneda product. The description of Ext_{R}^{1} generalizes to Ext_{R}^{n}, starting from extensions of length n, namely long exact sequences

(4.13)  0 ⟶ N ⟶ E_{n−1} ⟶ ⋯ ⟶ E_{0} ⟶ M ⟶ 0.

Maps of extensions of length n are commutative diagrams

(4.14)  \xymatrix{0 \ar[r] & N \ar[r] \ar[d]_{f} & E_{n−1} \ar[d] \ar[r] & ⋯ \ar[r] & E_{0} \ar[d] \ar[r] & M \ar[d]^{h} \ar[r] & 0 \\ 0 \ar[r] & N′ \ar[r] & E′_{n−1} \ar[r] & ⋯ \ar[r] & E′_{0} \ar[r] & M′ \ar[r] & 0}

Taking f and h to be identity maps and requiring the other vertical arrows to be isomorphisms, we obtain the notion of an elementary equivalence of extensions of N by M. Elaborating from the previous section, but using a more complicated equivalence relation that we make precise in the next section, the resulting sets of equivalence classes of extensions of length n give well-defined Abelian group valued functors of M and N. One can elaborate the proof of Theorem 4.12 to obtain the following generalization.

Theorem 4.15. For n ≥ 1, Ext^{n}(M, N) is naturally isomorphic to the Abelian group of equivalence classes of extensions of N by M of length n.

This result leads to a beautiful construction of a pairing between Ext groups, called the Yoneda product.

Definition 4.16. Define the Yoneda product

Ext_{R}^{n}(N, P) ⊗ Ext_{R}^{m}(M, N) ⟶ Ext_{R}^{m+n}(M, P)

as follows. Suppose given extensions

0 ⟶ N ⟶ E_{m−1} ⟶ ⋯ ⟶ E_{0} ⟶ M ⟶ 0

and

0 ⟶ P ⟶ F_{n−1} ⟶ ⋯ ⟶ F_{0} ⟶ N ⟶ 0.

Rename F_{i} as E_{m+i} and splice the sequences using the evident composite map F_{0} ⟶ N ⟶ E_{m−1}. This gives an extension

0 ⟶ P ⟶ E_{m+n−1} ⟶ ⋯ ⟶ E_{0} ⟶ M ⟶ 0,

which is the Yoneda product of the given extensions. We can extend the definition to allow m = 0 or n = 0 by using functoriality on maps. Then identity maps of modules act as identities for the pairing.

Theorem 4.17. The Yoneda product passes to equivalence classes to give an associative and unital system of pairings of Ext groups.

Categorically, we can say that the Ext groups specify a category enriched in graded Abelian groups whose objects are the R-modules M and whose graded Abelian group of morphisms M ⟶ N is Ext_{R}^{∗}(M, N). In particular, we see that each Ext_{R}^{∗}(M, M) is a graded ring. Categories like this are often called “rings with many objects”. This extra structure is central to many applications.

4.7. Equivalences of long extensions. We first need notations for pushout and pullback constructions on extensions. Consider an extension

0 ⟶ N ⟶ E ⟶ M ⟶ 0

and a map β: N ⟶ N′. Let β_{∗}E be the extension displayed in the diagram

\xymatrix{0 \ar[r] & N \ar[d]_{β} \ar[r] & E \ar[r] \ar[d] & M \ar[r] \ar[d]^{=} & 0 \\ 0 \ar[r] & N′ \ar[r] & β_{∗}E \ar[r] & M \ar[r] & 0,}

where the left square is a pushout. Similarly for a map α: M′ ⟶ M, let α^{∗}E be the extension displayed in the diagram

\xymatrix{0 \ar[r] & N \ar[d]_{=} \ar[r] & α^{∗}E \ar[r] \ar[d] & M′ \ar[r] \ar[d]^{α} & 0 \\ 0 \ar[r] & N \ar[r] & E \ar[r] & M \ar[r] & 0,}

where the right square is a pullback. For extensions

0 ⟶ N ⟶ E ⟶ B ⟶ 0,

a map β: B ⟶ B′ and an extension

0 ⟶ B′ ⟶ E′ ⟶ M ⟶ 0

we have two generally different Yoneda composites β^{∗}E ∘ E′ and β_{∗}E′ ∘ E.

\xymatrix{0 \ar[r] & N \ar[d]_{=} \ar[r] & β^{∗}E \ar[r] \ar[d] & B′ \ar[d]^{β} \ar[r] & E′ \ar[d] \ar[r] & M \ar[d]^{=} \ar[r] & 0 \\ 0 \ar[r] & N \ar[r] & E \ar[r] & B \ar[r] & β_{∗}E′ \ar[r] & M \ar[r] & 0}

We agree to say that these two length two extensions are equivalent. This is an equivalence of length two. We also have the elementary equivalences given by isomorphisms

\xymatrix{0 \ar[r] & N \ar[d]_{=} \ar[r] & E \ar[r] \ar[d]^{≅} & M \ar[d]^{=} \ar[r] & 0 \\ 0 \ar[r] & N \ar[r] & E′ \ar[r] & M \ar[r] & 0}

This is an equivalence of length one.

Consider long exact sequences

\xymatrix{S: 0 \ar[r] & N \ar[r]^{f_{n}} & E_{n−1} \ar[r]^{f_{n−1}} & E_{n−2} \ar[r] & ⋯ \ar[r] & E_{1} \ar[r]^{f_{1}} & E_{0} \ar[r]^{f_{0}} & M \ar[r] & 0.}

Let B_{i} be the image of f_{i}; in particular, by abuse, let B_{n} = N and B_{0} = M. We have extensions

0 ⟶ B_{i+1} ⟶ E_{i} ⟶ B_{i} ⟶ 0

for 0 ≤ i ≤ n − 1, and S is their Yoneda composite E_{n−1} ∘ ⋯ ∘ E_{0}. Say that two such sequences S and S′ are equivalent if there is a chain of equivalences of length one or of length two connecting them. That is, we form the smallest equivalence relation that identifies equivalent subsequences of length one or length two. The set of equivalence classes admits an addition under which it gives an abelian group isomorphic to Ext^{n}(M, N).

4.8. Pairings of Ext groups. The Yoneda pairing also admits a direct construction in terms of our original definition of Ext groups. Let M, N, and P be Rmodules and let X be a projective resolution of M and Y be an injective resolution of P. The composition pairing

Hom_{R}(N, P) ⊗ Hom_{R}(M, N) ⟶ Hom_{R}(M, P)

gives a map of chain complexes

Hom_{R}(N, Y) ⊗ Hom_{R}(X, N) ⟶ Hom_{R}(X, Y).

Passing to homology and using the pairing α of §2.1, we obtain a pairing

Ext_{R}^{n}(N, P) ⊗ Ext_{R}^{m}(M, N) ⟶ Ext_{R}^{m+n}(M, P).

This coincides with the Yoneda product of the previous section.

There is also an external pairing related to change of rings. Let R and S be rings, let M and N be R-modules, and let N and Q be S-modules. Then there is a pairing

(4.18)  Ext_{R}^{m}(M, N) ⊗ Ext_{S}^{n}(P, Q) ⟶ Ext_{R⊗S}^{m+n}(M ⊗ P, N ⊗ Q)

If X is a projective resolution of M and Y is a projective resolution of N, we can apply the tensor pairing

ω: Hom_{R}(M, N) ⊗ Hom_{S}(P, Q) ⟶ Hom_{R⊗S}(M ⊗ P, N ⊗ Q)

specified by ω(f ⊗ g)(m ⊗ p) = f(m) ⊗ g(n) to obtain a map of chain complexes

ω: Hom_{R}(X, N) ⊗ Hom_{S}(Y, Q) ⟶ Hom_{R⊗S}(X ⊗ Y, N ⊗ Q).

Here, as usual, we must insert the sign (−1)^{deg(g) deg(m)} when interpreting the tensor pairing in order to obtain a map of chain complexes. Again using α from §2.1 and passing to homology, we obtain the pairing (4.18).

Remember that when R is commutative the Ext groups and all maps in sight between them take values in the category of R-modules. More generally, if R is an algebra over a commutative ring k, then the Ext groups and all maps in sight between them take values in the category of k-modules. When R is commutative and augmented over k, we have seen that Tor_{∗}^{R}(k, k) is a graded k-algebra. We now see that Ext_{R}^{∗}(k, k) is also a graded k-algebra, via the Yoneda product. If k is a field and X is an R-free resolution of k, then we have

Hom_{R}(X, k) ≅ Hom_{k}(k ⊗_{R} X, k)

as k-chain complexes. Writing M^{∗} = Hom_{k}(M, k) for the vector space dual of M, this implies that

(4.19)  Ext_{R}^{∗}(k, k) ≅ (Tor_{∗}^{R}(k, k))^{∗}

Therefore Ext_{R}^{∗}(k, k) has both an algebra structure and the dual of an algebra structure, which is called a coalgebra structure. We shall return to consideration of such structures later, when we shall talk about bialgebras and Hopf algebras.

For now, we sum up by saying that for any k-algebra R, Ext_{R}^{∗}(k, k) is a kalgebra under the Yoneda product. It is not necessarily commutative even when R is commutative, but then Ext_{R}^{∗}(k, k) is a Hopf algebra.

We shall later return to this point and show that if R is a Hopf algebra over k, then Ext_{R}^{∗}(k, k) is a commutative k-algebra, but not necessarily a Hopf algebra. As we shall see, when specialized to group algebras this is closely related to the fact that the cohomology of a space with coefficients in k is a commutative k-algebra.