The Stacks project

10.12 Tensor products

Definition 10.12.1. Let $R$ be a ring, $M, N, P$ be three $R$-modules. A mapping $f : M \times N \to P$ (where $M \times N$ is viewed only as Cartesian product of two $R$-modules) is said to be $R$-bilinear if for each $x \in M$ the mapping $y\mapsto f(x, y)$ of $N$ into $P$ is $R$-linear, and for each $y\in N$ the mapping $x\mapsto f(x, y)$ is also $R$-linear.

Lemma 10.12.2. Let $M, N$ be $R$-modules. Then there exists a pair $(T, g)$ where $T$ is an $R$-module, and $g : M \times N \to T$ an $R$-bilinear mapping, with the following universal property: For any $R$-module $P$ and any $R$-bilinear mapping $f : M \times N \to P$, there exists a unique $R$-linear mapping $\tilde{f} : T \to P$ such that $f = \tilde{f} \circ g$. In other words, the following diagram commutes:

\[ \xymatrix{ M \times N \ar[rr]^ f \ar[dr]_ g & & P\\ & T \ar[ur]_{\tilde f} } \]

Moreover, if $(T, g)$ and $(T', g')$ are two pairs with this property, then there exists a unique isomorphism $j : T \to T'$ such that $j\circ g = g'$.

The $R$-module $T$ which satisfies the above universal property is called the tensor product of $R$-modules $M$ and $N$, denoted as $M \otimes _ R N$.

Proof. We first prove the existence of such $R$-module $T$. Let $M, N$ be $R$-modules. Let $T$ be the quotient module $P/Q$, where $P$ is the free $R$-module $R^{(M \times N)}$ and $Q$ is the $R$-module generated by all elements of the following types: ($x\in M, y\in N$)

\begin{align*} (x + x', y) - (x, y) - (x', y), \\ (x, y + y') - (x, y) - (x, y'), \\ (ax, y) - a(x, y), \\ (x, ay) - a(x, y) \end{align*}

Let $\pi : M \times N \to T$ denote the natural map. This map is $R$-bilinear, as implied by the above relations when we check the bilinearity conditions. Denote the image $\pi (x, y) = x \otimes y$, then these elements generate $T$. Now let $f : M \times N \to P$ be an $R$-bilinear map, then we can define $f' : T \to P$ by extending the mapping $f'(x \otimes y) = f(x, y)$. Clearly $f = f'\circ \pi $. Moreover, $f'$ is uniquely determined by the value on the generating sets $\{ x \otimes y : x\in M, y\in N\} $. Suppose there is another pair $(T', g')$ satisfying the same properties. Then there is a unique $j : T \to T'$ and also $j' : T' \to T$ such that $g' = j\circ g$, $g = j'\circ g'$. But then both the maps $(j\circ j') \circ g$ and $g$ satisfies the universal properties, so by uniqueness they are equal, and hence $j'\circ j$ is identity on $T$. Similarly $(j'\circ j) \circ g' = g'$ and $j\circ j'$ is identity on $T'$. So $j$ is an isomorphism. $\square$

Lemma 10.12.3. Let $M, N, P$ be $R$-modules, then the bilinear maps

\begin{align*} (x, y) & \mapsto y \otimes x\\ (x + y, z) & \mapsto x \otimes z + y \otimes z\\ (r, x) & \mapsto rx \end{align*}

induce unique isomorphisms

\begin{align*} M \otimes _ R N & \to N \otimes _ R M, \\ (M\oplus N)\otimes _ R P & \to (M \otimes _ R P)\oplus (N \otimes _ R P), \\ R \otimes _ R M & \to M \end{align*}

Proof. Omitted. $\square$

We may generalize the tensor product of two $R$-modules to finitely many $R$-modules, and set up a correspondence between the multi-tensor product with multilinear mappings. Using almost the same construction one can prove that:

Lemma 10.12.4. Let $M_1, \ldots , M_ r$ be $R$-modules. Then there exists a pair $(T, g)$ consisting of an $R$-module T and an $R$-multilinear mapping $g : M_1\times \ldots \times M_ r \to T$ with the universal property: For any $R$-multilinear mapping $f : M_1\times \ldots \times M_ r \to P$ there exists a unique $R$-module homomorphism $f' : T \to P$ such that $f'\circ g = f$. Such a module $T$ is unique up to unique isomorphism. We denote it $M_1\otimes _ R \ldots \otimes _ R M_ r$ and we denote the universal multilinear map $(m_1, \ldots , m_ r) \mapsto m_1 \otimes \ldots \otimes m_ r$.

Proof. Omitted. $\square$

Lemma 10.12.5. The homomorphisms

\[ (M \otimes _ R N)\otimes _ R P \to M \otimes _ R N \otimes _ R P \to M \otimes _ R (N \otimes _ R P) \]

such that $f((x \otimes y)\otimes z) = x \otimes y \otimes z$ and $g(x \otimes y \otimes z) = x \otimes (y \otimes z)$, $x\in M, y\in N, z\in P$ are well-defined and are isomorphisms.

Proof. We shall prove $f$ is well-defined and is an isomorphism, and this proof carries analogously to $g$. Fix any $z\in P$, then the mapping $(x, y)\mapsto x \otimes y \otimes z$, $x\in M, y\in N$, is $R$-bilinear in $x$ and $y$, and hence induces homomorphism $f_ z : M \otimes N \to M \otimes N \otimes P$ which sends $f_ z(x \otimes y) = x \otimes y \otimes z$. Then consider $(M \otimes N)\times P \to M \otimes N \otimes P$ given by $(w, z)\mapsto f_ z(w)$. The map is $R$-bilinear and thus induces $f : (M \otimes _ R N)\otimes _ R P \to M \otimes _ R N \otimes _ R P$ and $f((x \otimes y)\otimes z) = x \otimes y \otimes z$. To construct the inverse, we note that the map $\pi : M \times N \times P \to (M \otimes N)\otimes P$ is $R$-trilinear. Therefore, it induces an $R$-linear map $h : M \otimes N \otimes P \to (M \otimes N)\otimes P$ which agrees with the universal property. Here we see that $h(x \otimes y \otimes z) = (x \otimes y)\otimes z$. From the explicit expression of $f$ and $h$, $f\circ h$ and $h\circ f$ are identity maps of $M \otimes N \otimes P$ and $(M \otimes N)\otimes P$ respectively, hence $f$ is our desired isomorphism. $\square$

Doing induction we see that this extends to multi-tensor products. Combined with Lemma 10.12.3 we see that the tensor product operation on the category of $R$-modules is associative, commutative and distributive.

Definition 10.12.6. An abelian group $N$ is called an $(A, B)$-bimodule if it is both an $A$-module and a $B$-module and for all $a \in A$ and $b \in B$ the multiplication by $a$ and $b$ commute, so $b(an) = a(bn)$ for all $n \in N$. In this situation we usually write the $B$-action on the right: so for $b \in B$ and $n \in N$ the result of multiplying $n$ by $b$ is denoted $nb$. With this convention the compatibility above is that $(ax)b = a(xb)$ for all $a\in A, b\in B, x\in N$. The shorthand $_ AN_ B$ is used to denote an $(A, B)$-bimodule $N$.

Lemma 10.12.7. For $A$-module $M$, $B$-module $P$ and $(A, B)$-bimodule $N$, the modules $(M \otimes _ A N)\otimes _ B P$ and $M \otimes _ A(N \otimes _ B P)$ can both be given $(A, B)$-bimodule structure, and moreover

\[ (M \otimes _ A N)\otimes _ B P \cong M \otimes _ A(N \otimes _ B P). \]

Proof. A priori $M \otimes _ A N$ is an $A$-module, but we can give it a $B$-module structure by letting

\[ (x \otimes y)b = x \otimes yb, \quad x\in M, y\in N, b\in B \]

Thus $M \otimes _ A N$ becomes an $(A, B)$-bimodule. Similarly for $N \otimes _ B P$, and thus for $(M \otimes _ A N)\otimes _ B P$ and $M \otimes _ A(N \otimes _ B P)$. By Lemma 10.12.5, these two modules are isomorphic as both as $A$-module and $B$-module via the same mapping. $\square$

Lemma 10.12.8. For any three $R$-modules $M, N, P$,

\[ \mathop{\mathrm{Hom}}\nolimits _ R(M \otimes _ R N, P) \cong \mathop{\mathrm{Hom}}\nolimits _ R(M, \mathop{\mathrm{Hom}}\nolimits _ R(N, P)) \]

Proof. An $R$-linear map $\hat{f}\in \mathop{\mathrm{Hom}}\nolimits _ R(M \otimes _ R N, P)$ corresponds to an $R$-bilinear map $f : M \times N \to P$. For each $x\in M$ the mapping $y\mapsto f(x, y)$ is $R$-linear by the universal property. Thus $f$ corresponds to a map $\phi _ f : M \to \mathop{\mathrm{Hom}}\nolimits _ R(N, P)$. This map is $R$-linear since

\[ \phi _ f(ax + y)(z) = f(ax + y, z) = af(x, z)+f(y, z) = (a\phi _ f(x)+\phi _ f(y))(z), \]

for all $a \in R$, $x \in M$, $y \in M$ and $z \in N$. Conversely, any $f \in \mathop{\mathrm{Hom}}\nolimits _ R(M, \mathop{\mathrm{Hom}}\nolimits _ R(N, P))$ defines an $R$-bilinear map $M \times N \to P$, namely $(x, y)\mapsto f(x)(y)$. So this is a natural one-to-one correspondence between the two modules $\mathop{\mathrm{Hom}}\nolimits _ R(M \otimes _ R N, P)$ and $\mathop{\mathrm{Hom}}\nolimits _ R(M, \mathop{\mathrm{Hom}}\nolimits _ R(N, P))$. $\square$

Lemma 10.12.9 (Tensor products commute with colimits). Let $(M_ i, \mu _{ij})$ be a system over the preordered set $I$. Let $N$ be an $R$-module. Then

\[ \mathop{\mathrm{colim}}\nolimits (M_ i \otimes N) \cong (\mathop{\mathrm{colim}}\nolimits M_ i)\otimes N. \]

Moreover, the isomorphism is induced by the homomorphisms $\mu _ i \otimes 1: M_ i \otimes N \to M \otimes N$ where $M = \mathop{\mathrm{colim}}\nolimits _ i M_ i$ with natural maps $\mu _ i : M_ i \to M$.

Proof. First proof. The functor $M' \mapsto M' \otimes _ R N$ is left adjoint to the functor $N' \mapsto \mathop{\mathrm{Hom}}\nolimits _ R(N, N')$ by Lemma 10.12.8. Thus $M' \mapsto M' \otimes _ R N$ commutes with all colimits, see Categories, Lemma 4.24.5.

Second direct proof. Let $P = \mathop{\mathrm{colim}}\nolimits (M_ i \otimes N)$ with coprojections $\lambda _ i : M_ i \otimes N \to P$. Let $M = \mathop{\mathrm{colim}}\nolimits M_ i$ with coprojections $\mu _ i : M_ i \to M$. Then for all $i\leq j$, the following diagram commutes:

\[ \xymatrix{ M_ i \otimes N \ar[r]_{\mu _ i \otimes 1} \ar[d]_{\mu _{ij} \otimes 1} & M \otimes N \ar[d]^{\text{id}} \\ M_ j \otimes N \ar[r]^{\mu _ j \otimes 1} & M \otimes N } \]

By Lemma 10.8.7 these maps induce a unique homomorphism $\psi : P \to M \otimes N$ such that $\mu _ i \otimes 1 = \psi \circ \lambda _ i$.

To construct the inverse map, for each $i\in I$, there is the canonical $R$-bilinear mapping $g_ i : M_ i \times N \to M_ i \otimes N$. This induces a unique mapping $\widehat{\phi } : M \times N \to P$ such that $\widehat{\phi } \circ (\mu _ i \times 1) = \lambda _ i \circ g_ i$. It is $R$-bilinear. Thus it induces an $R$-linear mapping $\phi : M \otimes N \to P$. From the commutative diagram below:

\[ \xymatrix{ M_ i \times N \ar[r]^{g_ i} \ar[d]^{\mu _ i \times \text{id}} & M_ i \otimes N\ar[r]_{\text{id}} \ar[d]_{\lambda _ i} & M_ i \otimes N \ar[d]_{\mu _ i \otimes \text{id}} \ar[rd]^{\lambda _ i} \\ M \times N \ar[r]^{\widehat{\phi }} & P \ar[r]^{\psi } & M \otimes N \ar[r]^{\phi } & P } \]

we see that $\psi \circ \widehat{\phi } = g$, the canonical $R$-bilinear mapping $g : M \times N \to M \otimes N$. So $\psi \circ \phi $ is identity on $M \otimes N$. From the right-hand square and triangle, $\phi \circ \psi $ is also identity on $P$. $\square$

Lemma 10.12.10. Let

\begin{align*} M_1\xrightarrow {f} M_2\xrightarrow {g} M_3 \to 0 \end{align*}

be an exact sequence of $R$-modules and homomorphisms, and let $N$ be any $R$-module. Then the sequence

10.12.10.1
\begin{equation} \label{algebra-equation-2ndex} M_1\otimes N\xrightarrow {f \otimes 1} M_2\otimes N \xrightarrow {g \otimes 1} M_3\otimes N \to 0 \end{equation}

is exact. In other words, the functor $- \otimes _ R N$ is right exact, in the sense that tensoring each term in the original right exact sequence preserves the exactness.

Proof. We apply the functor $\mathop{\mathrm{Hom}}\nolimits (-, \mathop{\mathrm{Hom}}\nolimits (N, P))$ to the first exact sequence. We obtain

\[ 0 \to \mathop{\mathrm{Hom}}\nolimits (M_3, \mathop{\mathrm{Hom}}\nolimits (N, P)) \to \mathop{\mathrm{Hom}}\nolimits (M_2, \mathop{\mathrm{Hom}}\nolimits (N, P)) \to \mathop{\mathrm{Hom}}\nolimits (M_1, \mathop{\mathrm{Hom}}\nolimits (N, P)) \]

By Lemma 10.12.8, we have

\[ 0 \to \mathop{\mathrm{Hom}}\nolimits (M_3 \otimes N, P) \to \mathop{\mathrm{Hom}}\nolimits (M_2 \otimes N, P) \to \mathop{\mathrm{Hom}}\nolimits (M_1 \otimes N, P) \]

Using the pullback property again, we arrive at the desired exact sequence. $\square$

Remark 10.12.11. However, tensor product does NOT preserve exact sequences in general. In other words, if $M_1 \to M_2 \to M_3$ is exact, then it is not necessarily true that $M_1 \otimes N \to M_2 \otimes N \to M_3 \otimes N$ is exact for arbitrary $R$-module $N$.

Example 10.12.12. Consider the injective map $2 : \mathbf{Z}\to \mathbf{Z}$ viewed as a map of $\mathbf{Z}$-modules. Let $N = \mathbf{Z}/2$. Then the induced map $\mathbf{Z} \otimes \mathbf{Z}/2 \to \mathbf{Z} \otimes \mathbf{Z}/2$ is NOT injective. This is because for $x \otimes y\in \mathbf{Z} \otimes \mathbf{Z}/2$,

\[ (2 \otimes 1)(x \otimes y) = 2x \otimes y = x \otimes 2y = x \otimes 0 = 0 \]

Therefore the induced map is the zero map while $\mathbf{Z} \otimes N\neq 0$.

Remark 10.12.13. For $R$-modules $N$, if the functor $-\otimes _ R N$ is exact, i.e. tensoring with $N$ preserves all exact sequences, then $N$ is said to be flat $R$-module. We will discuss this later in Section 10.39.

Lemma 10.12.14. Let $R$ be a ring. Let $M$ and $N$ be $R$-modules.

  1. If $N$ and $M$ are finite, then so is $M \otimes _ R N$.

  2. If $N$ and $M$ are finitely presented, then so is $M \otimes _ R N$.

Proof. Suppose $M$ is finite. Then choose a presentation $0 \to K \to R^{\oplus n} \to M \to 0$. This gives an exact sequence $K \otimes _ R N \to N^{\oplus n} \to M \otimes _ R N \to 0$ by Lemma 10.12.10. We conclude that if $N$ is finite too then $M \otimes _ R N$ is a quotient of a finite module, hence finite, see Lemma 10.5.3. Similarly, if both $N$ and $M$ are finitely presented, then we see that $K$ is finite and that $M \otimes _ R N$ is a quotient of the finitely presented module $N^{\oplus n}$ by a finite module, namely $K \otimes _ R N$, and hence finitely presented, see Lemma 10.5.3. $\square$

Lemma 10.12.15. Let $M$ be an $R$-module. Then the $S^{-1}R$-modules $S^{-1}M$ and $S^{-1}R \otimes _ R M$ are canonically isomorphic, and the canonical isomorphism $f : S^{-1}R \otimes _ R M \to S^{-1}M$ is given by

\[ f((a/s) \otimes m) = am/s, \forall a \in R, m \in M, s \in S \]

Proof. Obviously, the map $f' : S^{-1}R \times M \to S^{-1}M$ given by $f'(a/s, m) = am/s$ is bilinear, and thus by the universal property, this map induces a unique $S^{-1}R$-module homomorphism $f : S^{-1}R \otimes _ R M \to S^{-1}M$ as in the statement of the lemma. Actually every element in $S^{-1}M$ is of the form $m/s$, $m\in M, s\in S$ and every element in $S^{-1}R \otimes _ R M$ is of the form $1/s \otimes m$. To see the latter fact, write an element in $S^{-1}R \otimes _ R M$ as

\[ \sum _ k \frac{a_ k}{s_ k} \otimes m_ k = \sum _ k \frac{a_ k t_ k}{s} \otimes m_ k = \frac{1}{s} \otimes \sum _ k {a_ k t_ k}m_ k = \frac{1}{s} \otimes m \]

Where $m = \sum _ k {a_ k t_ k}m_ k$. Then it is obvious that $f$ is surjective, and if $f(\frac{1}{s} \otimes m) = m/s = 0$ then there exists $t'\in S$ with $tm = 0$ in $M$. Then we have

\[ \frac{1}{s} \otimes m = \frac{1}{st} \otimes tm = \frac{1}{st} \otimes 0 = 0 \]

Therefore $f$ is injective. $\square$

Lemma 10.12.16. Let $M, N$ be $R$-modules, then there is a canonical $S^{-1}R$-module isomorphism $f : S^{-1}M \otimes _{S^{-1}R}S^{-1}N \to S^{-1}(M \otimes _ R N)$, given by

\[ f((m/s)\otimes (n/t)) = (m \otimes n)/st \]

Proof. We may use Lemma 10.12.7 and Lemma 10.12.15 repeatedly to see that these two $S^{-1}R$-modules are isomorphic, noting that $S^{-1}R$ is an $(R, S^{-1}R)$-bimodule:

\begin{align*} S^{-1}(M \otimes _ R N) & \cong S^{-1}R \otimes _ R (M \otimes _ R N)\\ & \cong S^{-1}M \otimes _ R N\\ & \cong (S^{-1}M \otimes _{S^{-1}R}S^{-1}R)\otimes _ R N\\ & \cong S^{-1}M \otimes _{S^{-1}R}(S^{-1}R \otimes _ R N)\\ & \cong S^{-1}M \otimes _{S^{-1}R}S^{-1}N \end{align*}

This isomorphism is easily seen to be the one stated in the lemma. $\square$


Comments (8)

Comment #967 by Tim on

There is a \textit command after the first lemma that doesn't seem to compile.

Comment #1103 by Ben on

Minor issue, but there is an unpaired parenthesis in the definition of in Lemma 10.11.16.

Comment #7866 by Yuchong Zhang on

The first line of the proof of Lemma 10.12.15 should be .

Comment #8366 by Hao Zhang on

In definition 00D1, the M should be N.


Post a comment

Your email address will not be published. Required fields are marked.

In your comment you can use Markdown and LaTeX style mathematics (enclose it like $\pi$). A preview option is available if you wish to see how it works out (just click on the eye in the toolbar).

Unfortunately JavaScript is disabled in your browser, so the comment preview function will not work.

All contributions are licensed under the GNU Free Documentation License.




In order to prevent bots from posting comments, we would like you to prove that you are human. You can do this by filling in the name of the current tag in the following input field. As a reminder, this is tag 00CV. Beware of the difference between the letter 'O' and the digit '0'.