10.75 Tor groups and flatness
In this section we use some of the homological algebra developed in the previous section to explain what Tor groups are. Namely, suppose that R is a ring and that M, N are two R-modules. Choose a resolution F_\bullet of M by free R-modules. See Lemma 10.71.1. Consider the homological complex
F_\bullet \otimes _ R N : \ldots \to F_2 \otimes _ R N \to F_1 \otimes _ R N \to F_0 \otimes _ R N
We define \text{Tor}^ R_ i(M, N) to be the ith homology group of this complex. The following lemma explains in what sense this is well defined.
Lemma 10.75.1. Let R be a ring. Let M_1, M_2, N be R-modules. Suppose that F_\bullet is a free resolution of the module M_1 and that G_\bullet is a free resolution of the module M_2. Let \varphi : M_1 \to M_2 be a module map. Let \alpha : F_\bullet \to G_\bullet be a map of complexes inducing \varphi on M_1 = \mathop{\mathrm{Coker}}(d_{F, 1}) \to M_2 = \mathop{\mathrm{Coker}}(d_{G, 1}), see Lemma 10.71.4. Then the induced maps
H_ i(\alpha ) : H_ i(F_\bullet \otimes _ R N) \longrightarrow H_ i(G_\bullet \otimes _ R N)
are independent of the choice of \alpha . If \varphi is an isomorphism, so are all the maps H_ i(\alpha ). If M_1 = M_2, F_\bullet = G_\bullet , and \varphi is the identity, so are all the maps H_ i(\alpha ).
Proof.
The proof of this lemma is identical to the proof of Lemma 10.71.5.
\square
Not only does this lemma imply that the Tor modules are well defined, but it also provides for the functoriality of the constructions (M, N) \mapsto \text{Tor}_ i^ R(M, N) in the first variable. Of course the functoriality in the second variable is evident. We leave it to the reader to see that each of the \text{Tor}_ i^ R is in fact a functor
\text{Mod}_ R \times \text{Mod}_ R \to \text{Mod}_ R.
Here \text{Mod}_ R denotes the category of R-modules, and for the definition of the product category see Categories, Definition 4.2.20. Namely, given morphisms of R-modules M_1 \to M_2 and N_1 \to N_2 we get a commutative diagram
\xymatrix{ \text{Tor}_ i^ R(M_1, N_1) \ar[r] \ar[d] & \text{Tor}_ i^ R(M_1, N_2) \ar[d] \\ \text{Tor}_ i^ R(M_2, N_1) \ar[r] & \text{Tor}_ i^ R(M_2, N_2) \\ }
Lemma 10.75.2. Let R be a ring and let M be an R-module. Suppose that 0 \to N' \to N \to N'' \to 0 is a short exact sequence of R-modules. There exists a long exact sequence
\text{Tor}_1^ R(M, N') \to \text{Tor}_1^ R(M, N) \to \text{Tor}_1^ R(M, N'') \to M \otimes _ R N' \to M \otimes _ R N \to M \otimes _ R N'' \to 0
Proof.
The proof of this is the same as the proof of Lemma 10.71.6.
\square
Consider a homological double complex of R-modules
\xymatrix{ \ldots \ar[r]^ d & A_{2, 0} \ar[r]^ d & A_{1, 0} \ar[r]^ d & A_{0, 0} \\ \ldots \ar[r]^ d & A_{2, 1} \ar[r]^ d \ar[u]^\delta & A_{1, 1} \ar[r]^ d \ar[u]^\delta & A_{0, 1} \ar[u]^\delta \\ \ldots \ar[r]^ d & A_{2, 2} \ar[r]^ d \ar[u]^\delta & A_{1, 2} \ar[r]^ d \ar[u]^\delta & A_{0, 2} \ar[u]^\delta \\ & \ldots \ar[u]^\delta & \ldots \ar[u]^\delta & \ldots \ar[u]^\delta \\ }
This means that d_{i, j} : A_{i, j} \to A_{i-1, j} and \delta _{i, j} : A_{i, j} \to A_{i, j-1} have the following properties
Any composition of two d_{i, j} is zero. In other words the rows of the double complex are complexes.
Any composition of two \delta _{i, j} is zero. In other words the columns of the double complex are complexes.
For any pair (i, j) we have \delta _{i-1, j} \circ d_{i, j} = d_{i, j-1} \circ \delta _{i, j}. In other words, all the squares commute.
The correct thing to do is to associate a spectral sequence to any such double complex. However, for the moment we can get away with doing something slightly easier.
Namely, for the purposes of this section only, given a double complex (A_{\bullet , \bullet }, d, \delta ) set R(A)_ j = \mathop{\mathrm{Coker}}(A_{1, j} \to A_{0, j}) and U(A)_ i = \mathop{\mathrm{Coker}}(A_{i, 1} \to A_{i, 0}). (The letters R and U are meant to suggest Right and Up.) We endow R(A)_\bullet with the structure of a complex using the maps \delta . Similarly we endow U(A)_\bullet with the structure of a complex using the maps d. In other words we obtain the following huge commutative diagram
\xymatrix{ \ldots \ar[r]^ d & U(A)_2 \ar[r]^ d & U(A)_1 \ar[r]^ d & U(A)_0 & \\ \ldots \ar[r]^ d & A_{2, 0} \ar[r]^ d \ar[u] & A_{1, 0} \ar[r]^ d \ar[u] & A_{0, 0} \ar[r] \ar[u] & R(A)_0 \\ \ldots \ar[r]^ d & A_{2, 1} \ar[r]^ d \ar[u]^\delta & A_{1, 1} \ar[r]^ d \ar[u]^\delta & A_{0, 1} \ar[r] \ar[u]^\delta & R(A)_1 \ar[u]^\delta \\ \ldots \ar[r]^ d & A_{2, 2} \ar[r]^ d \ar[u]^\delta & A_{1, 2} \ar[r]^ d \ar[u]^\delta & A_{0, 2} \ar[r] \ar[u]^\delta & R(A)_2 \ar[u]^\delta \\ & \ldots \ar[u]^\delta & \ldots \ar[u]^\delta & \ldots \ar[u]^\delta & \ldots \ar[u]^\delta \\ }
(This is no longer a double complex of course.) It is clear what a morphism \Phi : (A_{\bullet , \bullet }, d, \delta ) \to (B_{\bullet , \bullet }, d, \delta ) of double complexes is, and it is clear that this induces morphisms of complexes R(\Phi ) : R(A)_\bullet \to R(B)_\bullet and U(\Phi ) : U(A)_\bullet \to U(B)_\bullet .
Lemma 10.75.3. Let (A_{\bullet , \bullet }, d, \delta ) be a double complex such that
Each row A_{\bullet , j} is a resolution of R(A)_ j.
Each column A_{i, \bullet } is a resolution of U(A)_ i.
Then there are canonical isomorphisms
H_ i(R(A)_\bullet ) \cong H_ i(U(A)_\bullet ).
The isomorphisms are functorial with respect to morphisms of double complexes with the properties above.
Proof.
We will show that H_ i(R(A)_\bullet )) and H_ i(U(A)_\bullet ) are canonically isomorphic to a third group. Namely
\mathbf{H}_ i(A) := \frac{ \{ (a_{i, 0}, a_{i-1, 1}, \ldots , a_{0, i}) \mid d(a_{i, 0}) = \delta (a_{i-1, 1}), \ldots , d(a_{1, i-1}) = \delta (a_{0, i}) \} }{ \{ d(a_{i + 1, 0}) + \delta (a_{i, 1}), d(a_{i, 1}) + \delta (a_{i-1, 2}), \ldots , d(a_{1, i}) + \delta (a_{0, i + 1}) \} }
Here we use the notational convention that a_{i, j} denotes an element of A_{i, j}. In other words, an element of \mathbf{H}_ i is represented by a zig-zag, represented as follows for i = 2
\xymatrix{ a_{2, 0} \ar@{|->}[r] & d(a_{2, 0}) = \delta (a_{1, 1}) & \\ & a_{1, 1} \ar@{|->}[u] \ar@{|->}[r] & d(a_{1, 1}) = \delta (a_{0, 2}) \\ & & a_{0, 2} \ar@{|->}[u] \\ }
Naturally, we divide out by “trivial” zig-zags, namely the submodule generated by elements of the form (0, \ldots , 0, -\delta (a_{t + 1, t-i}), d(a_{t + 1, t-i}), 0, \ldots , 0). Note that there are canonical homomorphisms
\mathbf{H}_ i(A) \to H_ i(R(A)_\bullet ), \quad (a_{i, 0}, a_{i-1, 1}, \ldots , a_{0, i}) \mapsto \text{class of image of }a_{0, i}
and
\mathbf{H}_ i(A) \to H_ i(U(A)_\bullet ), \quad (a_{i, 0}, a_{i-1, 1}, \ldots , a_{0, i}) \mapsto \text{class of image of }a_{i, 0}
First we show that these maps are surjective. Suppose that \overline{r} \in H_ i(R(A)_\bullet ). Let r \in R(A)_ i be a cocycle representing the class of \overline{r}. Let a_{0, i} \in A_{0, i} be an element which maps to r. Because \delta (r) = 0, we see that \delta (a_{0, i}) is in the image of d. Hence there exists an element a_{1, i-1} \in A_{1, i-1} such that d(a_{1, i-1}) = \delta (a_{0, i}). This in turn implies that \delta (a_{1, i-1}) is in the kernel of d (because d(\delta (a_{1, i-1})) = \delta (d(a_{1, i-1})) = \delta (\delta (a_{0, i})) = 0. By exactness of the rows we find an element a_{2, i-2} such that d(a_{2, i-2}) = \delta (a_{1, i-1}). And so on until a full zig-zag is found. Of course surjectivity of \mathbf{H}_ i \to H_ i(U(A)) is shown similarly.
To prove injectivity we argue in exactly the same way. Namely, suppose we are given a zig-zag (a_{i, 0}, a_{i-1, 1}, \ldots , a_{0, i}) which maps to zero in H_ i(R(A)_\bullet ). This means that a_{0, i} maps to an element of \mathop{\mathrm{Coker}}(A_{i, 1} \to A_{i, 0}) which is in the image of \delta : \mathop{\mathrm{Coker}}(A_{i + 1, 1} \to A_{i + 1, 0}) \to \mathop{\mathrm{Coker}}(A_{i, 1} \to A_{i, 0}). In other words, a_{0, i} is in the image of \delta \oplus d : A_{0, i + 1} \oplus A_{1, i} \to A_{0, i}. From the definition of trivial zig-zags we see that we may modify our zig-zag by a trivial one and assume that a_{0, i} = 0. This immediately implies that d(a_{1, i-1}) = 0. As the rows are exact this implies that a_{1, i-1} is in the image of d : A_{2, i-1} \to A_{1, i-1}. Thus we may modify our zig-zag once again by a trivial zig-zag and assume that our zig-zag looks like (a_{i, 0}, a_{i-1, 1}, \ldots , a_{2, i-2}, 0, 0). Continuing like this we obtain the desired injectivity.
If \Phi : (A_{\bullet , \bullet }, d, \delta ) \to (B_{\bullet , \bullet }, d, \delta ) is a morphism of double complexes both of which satisfy the conditions of the lemma, then we clearly obtain a commutative diagram
\xymatrix{ H_ i(U(A)_\bullet ) \ar[d] & \mathbf{H}_ i(A) \ar[r] \ar[l] \ar[d] & H_ i(R(A)_\bullet ) \ar[d] \\ H_ i(U(B)_\bullet ) & \mathbf{H}_ i(B) \ar[r] \ar[l] & H_ i(R(B)_\bullet ) \\ }
This proves the functoriality.
\square
Lemma 10.75.5. Let R be a ring. For any i \geq 0 the functors \text{Mod}_ R \times \text{Mod}_ R \to \text{Mod}_ R, (M, N) \mapsto \text{Tor}_ i^ R(M, N) and (M, N) \mapsto \text{Tor}_ i^ R(N, M) are canonically isomorphic.
Proof.
Let F_\bullet be a free resolution of the module M and let G_\bullet be a free resolution of the module N. Consider the double complex (A_{i, j}, d, \delta ) defined as follows:
set A_{i, j} = F_ i \otimes _ R G_ j,
set d_{i, j} : F_ i \otimes _ R G_ j \to F_{i-1} \otimes G_ j equal to d_{F, i} \otimes \text{id}, and
set \delta _{i, j} : F_ i \otimes _ R G_ j \to F_ i \otimes G_{j-1} equal to \text{id} \otimes d_{G, j}.
This double complex is usually simply denoted F_\bullet \otimes _ R G_\bullet .
Since each G_ j is free, and hence flat we see that each row of the double complex is exact except in homological degree 0. Since each F_ i is free and hence flat we see that each column of the double complex is exact except in homological degree 0. Hence the double complex satisfies the conditions of Lemma 10.75.3.
To see what the lemma says we compute R(A)_\bullet and U(A)_\bullet . Namely,
\begin{eqnarray*} R(A)_ i & = & \mathop{\mathrm{Coker}}(A_{1, i} \to A_{0, i}) \\ & = & \mathop{\mathrm{Coker}}(F_1 \otimes _ R G_ i \to F_0 \otimes _ R G_ i) \\ & = & \mathop{\mathrm{Coker}}(F_1 \to F_0) \otimes _ R G_ i \\ & = & M \otimes _ R G_ i \end{eqnarray*}
In fact these isomorphisms are compatible with the differentials \delta and we see that R(A)_\bullet = M \otimes _ R G_\bullet as homological complexes. In exactly the same way we see that U(A)_\bullet = F_\bullet \otimes _ R N. We get
\begin{eqnarray*} \text{Tor}_ i^ R(M, N) & = & H_ i(F_\bullet \otimes _ R N) \\ & = & H_ i(U(A)_\bullet ) \\ & = & H_ i(R(A)_\bullet ) \\ & = & H_ i(M \otimes _ R G_\bullet ) \\ & = & H_ i(G_\bullet \otimes _ R M) \\ & = & \text{Tor}_ i^ R(N, M) \end{eqnarray*}
Here the third equality is Lemma 10.75.3, and the fifth equality uses the isomorphism V \otimes W = W \otimes V of the tensor product.
Functoriality. Suppose that we have R-modules M_\nu , N_\nu , \nu = 1, 2. Let \varphi : M_1 \to M_2 and \psi : N_1 \to N_2 be morphisms of R-modules. Suppose that we have free resolutions F_{\nu , \bullet } for M_\nu and free resolutions G_{\nu , \bullet } for N_\nu . By Lemma 10.71.4 we may choose maps of complexes \alpha : F_{1, \bullet } \to F_{2, \bullet } and \beta : G_{1, \bullet } \to G_{2, \bullet } compatible with \varphi and \psi . We claim that the pair (\alpha , \beta ) induces a morphism of double complexes
\alpha \otimes \beta : F_{1, \bullet } \otimes _ R G_{1, \bullet } \longrightarrow F_{2, \bullet } \otimes _ R G_{2, \bullet }
This is really a very straightforward check using the rule that F_{1, i} \otimes _ R G_{1, j} \to F_{2, i} \otimes _ R G_{2, j} is given by \alpha _ i \otimes \beta _ j where \alpha _ i, resp. \beta _ j is the degree i, resp. j component of \alpha , resp. \beta . The reader also readily verifies that the induced maps R(F_{1, \bullet } \otimes _ R G_{1, \bullet })_\bullet \to R(F_{2, \bullet } \otimes _ R G_{2, \bullet })_\bullet agrees with the map M_1 \otimes _ R G_{1, \bullet } \to M_2 \otimes _ R G_{2, \bullet } induced by \varphi \otimes \beta . Similarly for the map induced on the U(-)_\bullet complexes. Thus the statement on functoriality follows from the statement on functoriality in Lemma 10.75.3.
\square
Lemma 10.75.7. Let R be a Noetherian ring. Let M, N be finite R-modules. Then \text{Tor}_ p^ R(M, N) is a finite R-module for all p.
Proof.
This holds because \text{Tor}_ p^ R(M, N) is computed as the cohomology groups of a complex F_\bullet \otimes _ R N with each F_ n a finite free R-module, see Lemma 10.71.1.
\square
Lemma 10.75.8. Let R be a ring. Let M be an R-module. The following are equivalent:
The module M is flat over R.
For all i > 0 the functor \text{Tor}_ i^ R(M, -) is zero.
The functor \text{Tor}_1^ R(M, -) is zero.
For all ideals I \subset R we have \text{Tor}_1^ R(M, R/I) = 0.
For all finitely generated ideals I \subset R we have \text{Tor}_1^ R(M, R/I) = 0.
Proof.
Suppose M is flat. Let N be an R-module. Let F_\bullet be a free resolution of N. Then F_\bullet \otimes _ R M is a resolution of N \otimes _ R M, by flatness of M. Hence all higher Tor groups vanish.
It now suffices to show that the last condition implies that M is flat. Let I \subset R be an ideal. Consider the short exact sequence 0 \to I \to R \to R/I \to 0. Apply Lemma 10.75.2. We get an exact sequence
\text{Tor}_1^ R(M, R/I) \to M \otimes _ R I \to M \otimes _ R R \to M \otimes _ R R/I \to 0
Since obviously M \otimes _ R R = M we conclude that the last hypothesis implies that M \otimes _ R I \to M is injective for every finitely generated ideal I. Thus M is flat by Lemma 10.39.5.
\square
Comments (2)
Comment #2334 by Noah Olander on
Comment #2405 by Johan on