---
title: Tensor Products and Exact Sequences
module: Module Theory
moduleNumber: 8
lessonNumber: 3
order: 803
summary: >
  The tensor product builds a module in which elements of two modules can be
  multiplied, characterized by a universal property turning bilinear maps into
  linear ones; extension of scalars is its guiding case. Exact sequences track how
  a module is assembled from a submodule and a quotient, when that assembly splits,
  and which modules — projective, injective, flat — make the Hom and tensor
  functors preserve exactness.
topics: [Module Theory]
draft: false
sources:
  - book: Dummit & Foote
    ref: "Ch. 10 — Introduction to Module Theory; §10.4 Tensor Products of Modules"
  - book: Dummit & Foote
    ref: "§10.5 Exact Sequences — Projective, Injective, and Flat Modules"
---

Two constructions dominate the homological side of module theory. The **tensor
product** $M \otimes_R N$ manufactures a module in which one can form products $m
\otimes n$ of elements from two modules, and it is the right tool for _extending
scalars_ — enlarging the ring a module is defined over. **Exact sequences** are the
language for the reverse question: how a module $B$ is stitched together from a
submodule $A$ and the quotient $C = B/A$, and how much of $B$ that data determines.
Both are governed by universal properties, and the interplay between them —
which modules make $\operatorname{Hom}$ and $\otimes$ preserve exact sequences —
produces the classes of projective, injective, and flat modules.[^df-tensor]

## Extension of scalars

Suppose $R$ is a subring of $S$ (with $1_R = 1_S$). Any $S$-module $N$ is
automatically an $R$-module: the smaller ring already acts. This is **restriction of
scalars**, and it is free. The reverse — taking an $R$-module and enlarging its
action to $S$ — usually fails outright.

For example, $\mathbb{Z}$ is a $\mathbb{Z}$-module but cannot be made a
$\mathbb{Q}$-module: if it could, $\tfrac{1}{2} \cdot 1 = z$ would be an integer with
$z + z = 1$. Yet $\mathbb{Z}$ _embeds_ in the $\mathbb{Q}$-module $\mathbb{Q}$. By
contrast $\mathbb{Z}/2\mathbb{Z}$ admits no nonzero map to any $\mathbb{Q}$-module at
all: every nonzero element of a $\mathbb{Q}$-vector space has infinite order, so a
finite-order element must map to $0$. The tensor product $S \otimes_R N$ is the
"best possible" $S$-module receiving a map from $N$; applied to $R = \mathbb{Z}$,
$S = \mathbb{Q}$, it returns $\mathbb{Q}$ from $\mathbb{Z}$ and $0$ from
$\mathbb{Z}/2\mathbb{Z}$, reproducing both behaviors.[^df-ext]

## The tensor product

Let $M$ be a right $R$-module and $N$ a left $R$-module. Start with the free abelian
group on the set $M \times N$ — all formal finite sums of pairs $(m, n)$, with no
relations. To make $\otimes$ additive in each slot and balanced across the ring,
quotient by the subgroup generated by

$$
(m_1 + m_2, n) - (m_1, n) - (m_2, n), \quad
(m, n_1 + n_2) - (m, n_1) - (m, n_2), \quad
(mr, n) - (m, rn).
$$

> **Definition (Tensor product).** The quotient abelian group is $M \otimes_R N$. The
> image of $(m, n)$ is the **simple tensor** $m \otimes n$, and every element is a
> finite sum of simple tensors, subject to
> $$
> (m_1 + m_2) \otimes n = m_1 \otimes n + m_2 \otimes n, \quad
> m \otimes (n_1 + n_2) = m \otimes n_1 + m \otimes n_2, \quad
> mr \otimes n = m \otimes rn.
> $$

Care is required: $m \otimes n$ is a coset, so distinct pairs can give equal tensors,
and a tensor's expression as a sum of simple tensors is not unique. The third relation
is the balancing law that lets a scalar slide across the $\otimes$ sign.

> **Definition (Balanced map).** A map $\varphi : M \times N \to L$ into an abelian
> group $L$ is **$R$-balanced** if it is additive in each variable and satisfies
> $\varphi(mr, n) = \varphi(m, rn)$ for all $r \in R$.

The map $t : M \times N \to M \otimes_R N$, $t(m, n) = m \otimes n$, is the universal
balanced map.

> **Theorem (Universal property of the tensor product).** For any abelian group $L$,
> composition with $t$ is a bijection
> $$
> \{\, R\text{-balanced maps } M \times N \to L \,\}
> \;\longleftrightarrow\;
> \{\, \text{group homomorphisms } M \otimes_R N \to L \,\}.
> $$
> Every balanced $\varphi$ factors uniquely as $\varphi = \Phi \circ t$ for a
> homomorphism $\Phi : M \otimes_R N \to L$.

This theorem is the practical tool. To define a map out of $M \otimes_R N$, one need
not check that a rule on simple tensors is well defined on cosets; it suffices to
check that the corresponding map on ordered pairs is balanced, and the universal
property supplies $\Phi$.[^df-univ]

$$
% caption: Every balanced map out of $M \times N$ factors uniquely through the
% tensor product; the tensor product is the universal target that converts
% balancedness into a single linear map.
\begin{tikzpicture}[>=stealth, font=\footnotesize,
  box/.style={draw, minimum width=22mm, minimum height=10mm, font=\footnotesize}]
  \definecolor{acc}{HTML}{4A6FA5}
  \node[box] (P) at (0,2.2) {pairs $m$, $n$};
  \node[box, draw=acc, text=acc, thick] (T) at (0,0) {tensor product};
  \node[box] (L) at (4.8,2.2) {$L$};
  \draw[->, acc, thick] (P) -- (T) node[midway, left, font=\scriptsize, text=black] {$t$};
  \draw[->, black] (P) -- (L) node[midway, above, font=\scriptsize] {balanced $b$};
  \draw[->, acc, thick, dashed] (T) -- (L) node[midway, below, sloped, font=\scriptsize, text=black] {unique};
\end{tikzpicture}
$$

### Module structure and the commutative case

The abelian group $M \otimes_R N$ becomes a module when one side carries a second
ring action compatibly. If $M$ is an **$(S, R)$-bimodule** — a left $S$-module and
right $R$-module with $s(mr) = (sm)r$ — then $M \otimes_R N$ is a left $S$-module via
$s(\sum m_i \otimes n_i) = \sum (s m_i) \otimes n_i$. When $R$ is commutative, every
$R$-module carries its **standard** $(R, R)$-bimodule structure ($mr = rm$), so
$M \otimes_R N$ is always an $R$-module, and $t$ becomes $R$-**bilinear**:

> **Corollary (Commutative case).** For $R$ commutative and $M, N$ modules over $R$,
> $M \otimes_R N$ is an $R$-module with $r(m \otimes n) = (rm) \otimes n = m \otimes
> (rn)$, and bilinear maps $M \times N \to L$ correspond bijectively to homomorphisms
> $M \otimes_R N \to L$.

### Computing tensor products

The relations force collapses that are invisible until computed.

- **Nothing changes over $R$ itself.** $R \otimes_R N \cong N$; in particular
  $\mathbb{Z} \otimes_{\mathbb{Z}} A = A$ for any abelian group.
- **Cyclic groups.** $\mathbb{Z}/m\mathbb{Z} \otimes_{\mathbb{Z}} \mathbb{Z}/n\mathbb{Z}
  \cong \mathbb{Z}/d\mathbb{Z}$, where $d = \gcd(m, n)$. For coprime $m, n$ the
  product is $0$ — a tensor-level shadow of the
  [Chinese remainder theorem](/abstract-algebra/ring-theory/fractions-and-the-chinese-remainder-theorem).
- **Torsion meets divisible.** $\mathbb{Q} \otimes_{\mathbb{Z}} A = 0$ for any finite
  abelian $A$: writing $q = (q/n)n$ and using $na = 0$ gives $q \otimes a = 0$. This
  is the vanishing that made extension of scalars from $\mathbb{Z}$ to $\mathbb{Q}$
  kill finite groups.
- **Free modules.** $S \otimes_R R^n \cong S^n$; scalars extend on free modules by
  extending on each coordinate. Over fields, $K \otimes_F F^n \cong K^n$, so a real
  vector space complexifies to a complex one of the same dimension.

> **Worked example.** Compute
> $\mathbb{Z}/8\mathbb{Z} \otimes_{\mathbb{Z}} \mathbb{Z}/12\mathbb{Z}$.
>
> Every simple tensor collapses onto the single generator $1 \otimes 1$:
> $a \otimes b = ab\,(1 \otimes 1)$ by pulling the integers $a$ and $b$ across the
> tensor sign. The generator is killed by both moduli,
>
> $$
> 8\,(1 \otimes 1) = 8 \otimes 1 = 0 \otimes 1 = 0,
> \qquad
> 12\,(1 \otimes 1) = 1 \otimes 12 = 1 \otimes 0 = 0,
> $$
>
> so its order divides $\gcd(8, 12) = 4$. To rule out further collapse, exhibit a
> balanced map onto $\mathbb{Z}/4$: the rule
> $\varphi(a, b) = ab \bmod 4$ is well defined ($a \mapsto a + 8$ changes $ab$ by
> $8b \equiv 0 \bmod 4$, and $b \mapsto b + 12$ changes it by $12a \equiv 0$),
> additive in each slot, and balanced. The universal property gives a homomorphism
> $\Phi : \mathbb{Z}/8 \otimes_{\mathbb{Z}} \mathbb{Z}/12 \to \mathbb{Z}/4$ with
> $\Phi(1 \otimes 1) = 1$, an element of order $4$. Hence $1 \otimes 1$ has order
> exactly $4$ and
>
> $$
> \mathbb{Z}/8\mathbb{Z} \otimes_{\mathbb{Z}} \mathbb{Z}/12\mathbb{Z} \;\cong\; \mathbb{Z}/4\mathbb{Z}.
> $$
>
> The same two-step argument — collapse to $1 \otimes 1$, then a balanced map to
> certify the order — proves the general case
> $\mathbb{Z}/m \otimes_{\mathbb{Z}} \mathbb{Z}/n \cong \mathbb{Z}/\gcd(m,n)$.

The companion computation for $\operatorname{Hom}$ lands on the same answer:
homomorphism groups between cyclic modules are also cyclic of gcd order.

> **Worked example.** Compute
> $\operatorname{Hom}_{\mathbb{Z}}(\mathbb{Z}/8\mathbb{Z}, \mathbb{Z}/12\mathbb{Z})$.
>
> A homomorphism $\varphi$ is determined by $y = \varphi(1)$, and $y$ is
> admissible exactly when $8y \equiv 0 \pmod{12}$: the constraint is
> $12 \mid 8y$, i.e. $3 \mid 2y$, i.e. $3 \mid y$ since $3 \nmid 2$. So
>
> $$
> y \in \{0, 3, 6, 9\},
> $$
>
> four homomorphisms in all. Under pointwise addition they form a cyclic group
> generated by the map with $y = 3$: its multiples give $y = 3, 6, 9, 0$, so it
> has order $4$ and
>
> $$
> \operatorname{Hom}_{\mathbb{Z}}(\mathbb{Z}/8, \mathbb{Z}/12) \;\cong\; \mathbb{Z}/4
> \;=\; \mathbb{Z}/\gcd(8, 12).
> $$
>
> In general the admissible images of $1$ in $\mathbb{Z}/n$ are the multiples of
> $n/\gcd(m,n)$, giving
> $\operatorname{Hom}_{\mathbb{Z}}(\mathbb{Z}/m, \mathbb{Z}/n) \cong \mathbb{Z}/\gcd(m, n)$.

### Operations on tensors

Tensor products interact with maps and with direct sums as expected.

- **Tensor of homomorphisms.** For $\varphi : M \to M'$ and $\psi : N \to N'$ there is
  a unique $\varphi \otimes \psi : M \otimes_R N \to M' \otimes_R N'$ with
  $(\varphi \otimes \psi)(m \otimes n) = \varphi(m) \otimes \psi(n)$.
- **Associativity.** $(M \otimes_R N) \otimes_T L \cong M \otimes_R (N \otimes_T L)$,
  so an iterated tensor product $M_1 \otimes \cdots \otimes M_n$ is unambiguous and is
  the universal object for **multilinear** maps.
- **Distributivity.** $(M \oplus M') \otimes_R N \cong (M \otimes_R N) \oplus (M'
  \otimes_R N)$, and likewise in the second variable — tensoring commutes with direct
  sums.

## Exact sequences

The extension problem runs opposite to the tensor construction: given modules $A$
and $C$, build the modules $B$ that contain a copy of $A$ with $B/A \cong C$. The
bookkeeping device is exactness.

> **Definition (Exactness).** A pair $X \xrightarrow{\alpha} Y \xrightarrow{\beta} Z$
> is **exact at $Y$** if $\operatorname{im}\alpha = \ker\beta$. A longer sequence is
> **exact** if it is exact at every interior term. A **short exact sequence** is
> $$
> 0 \longrightarrow A \xrightarrow{\ \psi\ } B \xrightarrow{\ \varphi\ } C \longrightarrow 0,
> $$
> exact at all three interior spots.

Unwinding the endpoints: exactness at $A$ says $\psi$ is injective; exactness at $C$
says $\varphi$ is surjective; exactness at $B$ says $\operatorname{im}\psi =
\ker\varphi$. So a short exact sequence encodes "$A$ is a submodule of $B$
(via $\psi$) and $C$ is the quotient" — $B$ is an **extension** of $C$ by $A$.[^df-exact]

$$
% caption: A short exact sequence: $A$ injects into $B$ as a submodule, $B$
% surjects onto the quotient $C$, and the image of the first map coincides with the
% kernel of the second.
\begin{tikzpicture}[>=stealth, font=\footnotesize,
  box/.style={draw, minimum width=11mm, minimum height=10mm, font=\footnotesize}]
  \definecolor{acc}{HTML}{4A6FA5}
  \node (z0) at (-2.6,0) {$0$};
  \node[box] (A) at (-0.4,0) {$A$};
  \node[box, draw=acc, text=acc, thick] (B) at (2.6,0) {$B$};
  \node[box] (C) at (5.6,0) {$C$};
  \node (z1) at (7.8,0) {$0$};
  \draw[->, black] (z0) -- (A);
  \draw[->, black, thick] (A) -- (B) node[midway, above, font=\scriptsize] {$f$ (into)};
  \draw[->, black, thick] (B) -- (C) node[midway, above, font=\scriptsize] {$g$ (onto)};
  \draw[->, black] (C) -- (z1);
  \node[font=\scriptsize, text=acc] at (2.6,-1.0) {$\mathrm{im}\, f = \ker g$};
\end{tikzpicture}
$$

> **Worked example.** Check that
>
> $$
> 0 \longrightarrow \mathbb{Z}/2 \xrightarrow{\ \psi\ } \mathbb{Z}/4 \xrightarrow{\ \varphi\ } \mathbb{Z}/2 \longrightarrow 0,
> \qquad \psi(x) = 2x, \quad \varphi(y) = y \bmod 2,
> $$
>
> is a short exact sequence.
>
> - **Homomorphisms.** $\psi$ is well defined: $x$ and $x + 2$ have images $2x$
>   and $2x + 4 = 2x$ in $\mathbb{Z}/4$. $\varphi$ is reduction mod $2$, well
>   defined since $4$ is a multiple of $2$.
> - **Exact at $\mathbb{Z}/2$ (left).** $\ker\psi = 0$: $\psi(1) = 2 \ne 0$ in
>   $\mathbb{Z}/4$.
> - **Exact at $\mathbb{Z}/4$.** $\operatorname{im}\psi = \{0, 2\}$, and
>   $\ker\varphi = \{y : y \text{ even}\} = \{0, 2\}$. Equal.
> - **Exact at $\mathbb{Z}/2$ (right).** $\varphi(1) = 1$, so $\varphi$ is onto.
>
> So $\mathbb{Z}/4$ is an extension of $\mathbb{Z}/2$ by $\mathbb{Z}/2$. The
> sequence does not split: a section $\mu : \mathbb{Z}/2 \to \mathbb{Z}/4$ needs
> $\mu(1)$ of additive order dividing $2$, hence $\mu(1) \in \{0, 2\}$, and then
> $\varphi(\mu(1)) = 0 \ne 1$. Consistently, $\mathbb{Z}/4 \ncong
> \mathbb{Z}/2 \oplus \mathbb{Z}/2$ — the left side has an element of order $4$.
> The direct sum $\mathbb{Z}/2 \oplus \mathbb{Z}/2$ is a different extension of
> the same two modules, so the ends of a short exact sequence do not determine
> the middle.

### Splitting

The simplest extension is the direct sum $B = A \oplus C$, in which $C$ sits inside
$B$ as a complement to $A$. An extension of this shape is **split**.

> **Proposition (Splitting).** For a short exact sequence
> $0 \to A \xrightarrow{\psi} B \xrightarrow{\varphi} C \to 0$ of modules, the
> following are equivalent, and any one gives $B \cong A \oplus C$.
>
> - There is a **section** $\mu : C \to B$ (a homomorphism) with $\varphi \circ \mu =
>   \mathrm{id}_C$.
> - There is a retraction $\lambda : B \to A$ with $\lambda \circ \psi = \mathrm{id}_A$.
> - $\psi(A)$ has a submodule complement in $B$.

For modules the two one-sided conditions are equivalent, unlike for groups, because
the underlying groups are abelian: where a split extension of groups is only a
[semidirect product](/abstract-algebra/products-and-group-structure/semidirect-products),
a split extension of modules is a genuine direct sum. Not every sequence splits. The
sequence $0 \to \mathbb{Z} \xrightarrow{n} \mathbb{Z} \to \mathbb{Z}/n\mathbb{Z} \to 0$,
with the first map multiplication by $n$, has no section, since there is no nonzero
homomorphism $\mathbb{Z}/n\mathbb{Z} \to \mathbb{Z}$. It is a nontrivial extension of
$\mathbb{Z}/n\mathbb{Z}$ by $\mathbb{Z}$.

$$
% caption: A split sequence admits a section $\mu$ picking out a complement, so
% $B \cong A \oplus C$; the non-split sequence at right (multiplication by $n$) has
% no section back from the quotient.
\begin{tikzpicture}[>=stealth, font=\footnotesize,
  box/.style={draw, minimum width=10mm, minimum height=9mm, font=\footnotesize}]
  \definecolor{acc}{HTML}{4A6FA5}
  % split
  \node[box] (A) at (0,0) {$A$};
  \node[box, draw=acc, text=acc, thick] (B) at (2.2,0) {$B$};
  \node[box] (C) at (4.4,0) {$C$};
  \draw[->, black] (A) -- (B) node[midway, above, font=\scriptsize] {$f$};
  \draw[->, black] (B) -- (C) node[midway, above, font=\scriptsize] {$g$};
  \draw[->, acc, thick, bend left=40] (C) to node[midway, below, font=\scriptsize, text=black] {section} (B);
  \node[font=\scriptsize] at (2.2,-1.6) {split: $B$ is a direct sum};
  % non-split
  \begin{scope}[xshift=7.6cm]
    \node[box] (A2) at (0,0) {$\mathbf{Z}$};
    \node[box] (B2) at (2.2,0) {$\mathbf{Z}$};
    \node[box] (C2) at (4.6,0) {$\mathbf{Z}_n$};
    \draw[->, black] (A2) -- (B2) node[midway, above, font=\scriptsize] {$n$};
    \draw[->, black] (B2) -- (C2) node[midway, above, font=\scriptsize] {mod $n$};
    \draw[->, black, dashed, bend left=40] (C2) to node[midway, below, font=\scriptsize, text=black] {none} (B2);
    \node[font=\scriptsize] at (2.3,-1.6) {non-split};
  \end{scope}
\end{tikzpicture}
$$

## Projective, injective, and flat modules

Applying $\operatorname{Hom}_R(D, -)$ or $D \otimes_R -$ to a short exact sequence
usually produces a sequence that is exact only at one end. The modules $D$ for which
exactness is fully preserved are the projective, injective, and flat ones.

> **Definition (Projective module).** An $R$-module $P$ is **projective** if any of
> the following equivalent conditions holds.
>
> - $\operatorname{Hom}_R(P, -)$ carries short exact sequences to short exact
>   sequences.
> - Every map $P \to N$ **lifts** through any surjection $M \twoheadrightarrow N$.
> - Every short exact sequence $0 \to L \to M \to P \to 0$ splits.
> - $P$ is a direct summand of a free module.

Free modules are projective (they are their own instance of the last condition), and
the lifting property is the working characterization: because $P$ has "enough freeness"
to have no relations obstructing a lift, a map defined into a quotient can be raised
to a map into the module above.[^df-proj]

$$
% caption: The lifting property defining a projective module: given a surjection
% onto $N$ and any map from $P$ into $N$, the map lifts to $P \to M$ making the
% triangle commute.
\begin{tikzpicture}[>=stealth, font=\footnotesize,
  box/.style={draw, minimum width=11mm, minimum height=9mm, font=\footnotesize}]
  \definecolor{acc}{HTML}{4A6FA5}
  \node[box, draw=acc, text=acc, thick] (P) at (0,2.1) {$P$};
  \node[box] (M) at (0,0) {$M$};
  \node[box] (N) at (3.4,0) {$N$};
  \node (z) at (6.2,0) {$0$};
  \draw[->, acc, thick, dashed] (P) -- (M) node[midway, left, font=\scriptsize, text=black] {lift $F$};
  \draw[->, black] (P) -- (N) node[midway, above, sloped, font=\scriptsize] {$f$};
  \draw[->, black] (M) -- (N) node[midway, above, font=\scriptsize] {onto};
  \draw[->, black] (N) -- (z);
\end{tikzpicture}
$$

**Injective modules** are the dual: $Q$ is injective if every map _into_ $Q$ from a
submodule extends to the whole module, equivalently if $\operatorname{Hom}_R(-, Q)$
preserves exactness. Baer's criterion tests this on ideals alone, and over a
[principal ideal domain](/abstract-algebra/factorization-and-polynomials/euclidean-domains-pids-ufds)
injective coincides with **divisible** ($rQ = Q$ for all $r \ne 0$): $\mathbb{Q}$ and
$\mathbb{Q}/\mathbb{Z}$ are injective $\mathbb{Z}$-modules, while $\mathbb{Z}$ is not.

**Flat modules** measure the tensor product instead. The functor $A \otimes_R -$ is
always right exact; $A$ is **flat** when it is also left exact, so that tensoring with
$A$ carries injections to injections. Projective modules are flat; $\mathbb{Q}/\mathbb{Z}$
is injective but not flat, and $\mathbb{Z} \oplus \mathbb{Q}$ is flat but neither
projective nor injective, so the three classes are genuinely different.

> **Worked example.** $\mathbb{Z}/2$ is not flat as a $\mathbb{Z}$-module. Tensor
> the exact sequence
> $0 \to \mathbb{Z} \xrightarrow{\, \cdot 2 \,} \mathbb{Z} \to \mathbb{Z}/2 \to 0$
> with $\mathbb{Z}/2$. Using $\mathbb{Z} \otimes_{\mathbb{Z}} \mathbb{Z}/2 \cong
> \mathbb{Z}/2$, the left map becomes
>
> $$
> \mathbb{Z}/2 \xrightarrow{\, \cdot 2 \,} \mathbb{Z}/2,
> \qquad x \longmapsto 2x = 0,
> $$
>
> the zero map — not injective, though the original map was. Tensoring with
> $\mathbb{Z}/2$ destroyed exactness at the left end; only
>
> $$
> \mathbb{Z}/2 \xrightarrow{\ 0\ } \mathbb{Z}/2 \longrightarrow \mathbb{Z}/2 \otimes_{\mathbb{Z}} \mathbb{Z}/2 \longrightarrow 0
> $$
>
> survives, which is the right exactness that always holds.

| Module class | Preserves exactness of | Fails at | PID / field example |
| --- | --- | --- | --- |
| Projective | $\operatorname{Hom}_R(P, -)$ | — (right end) | free modules; over a field, all |
| Injective | $\operatorname{Hom}_R(-, Q)$ | — (right end) | $\mathbb{Q}$, $\mathbb{Q}/\mathbb{Z}$ divisible |
| Flat | $A \otimes_R -$ | — (left end) | $\mathbb{Q}$; over a field, all |

Over a field all three collapse to "everything," since
[every vector space is free](/abstract-algebra/module-theory/vector-spaces-and-linear-maps)
and every short exact sequence of vector spaces splits. The distinctions are visible
only over rings with genuine ideal structure, and measuring the failure of exactness
in general is the entry point to homological algebra.

[^df-tensor]: **Dummit & Foote**, _Abstract Algebra_, 3rd ed., §10.4 — the tensor product of modules, constructed as a quotient of the free abelian group on $M \times N$ by the balancing relations.
[^df-ext]: **Dummit & Foote**, §10.4 — extension and restriction of scalars, and Corollary 9: $N/\ker t$ is the largest quotient of $N$ embeddable in an $S$-module, with the $\mathbb{Z} \to \mathbb{Q}$ examples.
[^df-univ]: **Dummit & Foote**, §10.4, Theorem 10 and Corollary 12 — the universal property of the tensor product with respect to balanced maps, and the bilinear form of it over a commutative ring.
[^df-exact]: **Dummit & Foote**, §10.5, Definition and Corollary 23 — exact and short exact sequences, and Proposition 25/26 on splitting via sections and retractions.
[^df-proj]: **Dummit & Foote**, §10.5, Proposition 30 and Corollary 31 — the equivalent characterizations of a projective module, including the lifting property and being a direct summand of a free module; injective (Proposition 34, Baer's criterion) and flat modules are treated later in the same section.
