Algebra, at its most fundamental level, is the study of structure — the patterns and regularities that emerge when a set of objects can be combined, scaled, and transformed. Vector spaces capture one kind of structure: a collection of objects that can be added together and scaled by numbers from a field. But what happens when the scalars are not numbers in the classical sense, but elements of a more general algebraic system — a ring? This generalization leads to the concept of a **module**, one of the central unifying structures of modern algebra.
The need for modules arises throughout mathematics in a remarkably natural way. When we study abelian groups, we quickly discover that every abelian group is already a module over the integers $\mathbb{Z}$: the scalar multiplication $n \cdot g$ is just adding $g$ to itself $n$ times. When we study representations of a group $G$ over a field $k$, we find that a representation is precisely a module over the group algebra $k[G]$. When algebraic geometers study sheaves of modules over structure sheaves, they are working with modules over commutative rings. The theory of modules is not an isolated corner of algebra — it is the common language of a vast portion of mathematics.
[example: Integer Multiples as Module Structure]
Consider the abelian group $(\mathbb{Z}/6\mathbb{Z}, +)$. The elements are residue classes $\bar{0}, \bar{1}, \bar{2}, \bar{3}, \bar{4}, \bar{5}$, and addition is addition modulo $6$. Now let $R = \mathbb{Z}$ act on $M = \mathbb{Z}/6\mathbb{Z}$ by
\begin{align*}
n \cdot \bar{m} &:= \overline{nm},
\end{align*}
where $\overline{nm}$ denotes the residue class of $nm$ modulo $6$. This is well-defined: if $\bar{m} = \bar{m'}$ then $6 \mid (m - m')$, so $6 \mid n(m - m')$, giving $\overline{nm} = \overline{nm'}$.
To verify this gives a module structure, we check: $1 \cdot \bar{m} = \overline{1 \cdot m} = \bar{m}$; $(n_1 + n_2) \cdot \bar{m} = \overline{(n_1 + n_2)m} = \overline{n_1 m + n_2 m} = n_1 \cdot \bar{m} + n_2 \cdot \bar{m}$; and $n \cdot (\bar{m}_1 + \bar{m}_2) = n \cdot \overline{m_1 + m_2} = \overline{n(m_1 + m_2)} = \overline{nm_1} + \overline{nm_2} = n \cdot \bar{m}_1 + n \cdot \bar{m}_2$. All module axioms hold. The group $\mathbb{Z}/6\mathbb{Z}$ is a $\mathbb{Z}$-module.
Notice that $2 \cdot \bar{3} = \bar{6} = \bar{0}$, so a nonzero element $\bar{3}$ is annihilated by the nonzero integer $2$. This cannot happen in a vector space over a field, where nonzero scalars always act invertibly. Modules are richer and more varied — they admit torsion.
[/example]
The example makes clear that modules are genuine generalizations of vector spaces, not merely formal ones. The new phenomena that appear — torsion, non-free structure, failure of dimension theory — are not pathologies to be avoided but are the very features that make modules interesting.
## Definition
The definition of a module is shaped by stripping the field axioms from the definition of a vector space. A field demands that every nonzero element has a multiplicative inverse; a ring makes no such demand. This single change opens the door to a vastly richer theory.
[definition: Left Module]
Let $R$ be a ring with multiplicative identity $1_R$. A **left $R$-module** is an abelian group $(M, +)$ together with a scalar multiplication map
\begin{align*}
R \times M &\to M \\
(r, m) &\mapsto r \cdot m
\end{align*}
satisfying, for all $r, s \in R$ and $m, n \in M$:
1. $r \cdot (m + n) = r \cdot m + r \cdot n$ (distributivity over module addition),
2. $(r + s) \cdot m = r \cdot m + s \cdot m$ (distributivity over ring addition),
3. $(rs) \cdot m = r \cdot (s \cdot m)$ (compatibility with ring multiplication),
4. $1_R \cdot m = m$ (unital axiom).
[/definition]
[remark: Left vs Right Modules]
The term "left" refers to the fact that the ring elements act from the left: $r \cdot m$. A **right $R$-module** is defined analogously, with multiplication $m \cdot r$ satisfying $(m \cdot r) \cdot s = m \cdot (rs)$ and $m \cdot 1_R = m$. When $R$ is commutative, every left module can be made into a right module by setting $m \cdot r := r \cdot m$, so the distinction disappears. For noncommutative rings, left and right modules can behave very differently. Throughout this article, "module" means "left module" unless stated otherwise.
[/remark]
The four axioms distill exactly what is needed for scalar multiplication to be compatible with the ring structure on $R$ and the group structure on $M$. There is no axiom requiring $r \cdot m = 0 \implies r = 0$ or $m = 0$, and no axiom requiring the existence of inverses for ring elements. These absences are not oversights — they are the key features distinguishing modules from vector spaces.
[definition: Module Homomorphism]
Let $R$ be a ring and let $M$, $N$ be left $R$-modules. An **$R$-module homomorphism** (or **$R$-linear map**) is a map $f: M \to N$ satisfying, for all $r \in R$ and $m, m' \in M$:
\begin{align*}
f(m + m') &= f(m) + f(m'), \\
f(r \cdot m) &= r \cdot f(m).
\end{align*}
The set of all $R$-module homomorphisms from $M$ to $N$ is denoted $\operatorname{Hom}_R(M, N)$.
[/definition]
The set $\operatorname{Hom}_R(M, N)$ is itself an abelian group under pointwise addition. When $R$ is commutative, it even becomes an $R$-module by $(r \cdot f)(m) := r \cdot f(m)$. When $R$ is not commutative, this additional structure need not be preserved, and $\operatorname{Hom}_R(M, N)$ remains merely an abelian group.
[example: Module Homomorphisms Between Cyclic Groups]
Consider $M = \mathbb{Z}/6\mathbb{Z}$ and $N = \mathbb{Z}/3\mathbb{Z}$ as $\mathbb{Z}$-modules. A $\mathbb{Z}$-module homomorphism $f: M \to N$ is in particular a group homomorphism from $(\mathbb{Z}/6\mathbb{Z}, +)$ to $(\mathbb{Z}/3\mathbb{Z}, +)$.
Such a homomorphism is determined by $f(\bar{1})$: once we know $f(\bar{1}) = \bar{a}$, we have $f(\bar{n}) = n \cdot \bar{a}$ for all $n$. For $f$ to be well-defined, we need $f(\bar{0}) = \bar{0}$, i.e., $6 \cdot \bar{a} = \bar{0}$ in $\mathbb{Z}/3\mathbb{Z}$. Since $6 \cdot \bar{a} = 2 \cdot (3 \cdot \bar{a}) = 2 \cdot \bar{0} = \bar{0}$, this holds for any choice of $\bar{a}$. There are therefore exactly three choices: $f(\bar{1}) = \bar{0}$, $f(\bar{1}) = \bar{1}$, or $f(\bar{1}) = \bar{2}$.
The $\mathbb{Z}$-linearity condition $f(n \cdot m) = n \cdot f(m)$ is automatic for $\mathbb{Z}$-module maps because the $\mathbb{Z}$-action is determined by the group structure: $n \cdot m = m + m + \cdots + m$ ($n$ times). So $\operatorname{Hom}_\mathbb{Z}(\mathbb{Z}/6\mathbb{Z}, \mathbb{Z}/3\mathbb{Z})$ has exactly three elements, isomorphic to $\mathbb{Z}/3\mathbb{Z}$ as an abelian group.
[/example]
## Submodules and Quotients
The internal structure of a module is organized through its submodules. A submodule is the appropriate notion of "subobject" for modules — it is a subset that is closed under both addition and scalar multiplication, and therefore inherits a module structure from the ambient module.
[definition: Submodule]
Let $R$ be a ring and let $M$ be a left $R$-module. A **submodule** of $M$ is a nonempty subset $N \subset M$ such that:
1. $N$ is a subgroup of $(M, +)$: for all $n_1, n_2 \in N$, $n_1 - n_2 \in N$,
2. $N$ is closed under scalar multiplication: for all $r \in R$ and $n \in N$, $r \cdot n \in N$.
[/definition]
Submodules over $\mathbb{Z}$ are exactly subgroups of abelian groups. Submodules of a ring $R$ viewed as a module over itself are exactly the left ideals of $R$. This last observation shows that the theory of ideals in ring theory is a special case of submodule theory — another sign of the unifying power of the module concept.
Given a submodule $N \subset M$, one forms the **quotient module** $M/N$. The underlying set consists of cosets $m + N := \{m + n : n \in N\}$, and the operations are
\begin{align*}
(m_1 + N) + (m_2 + N) &:= (m_1 + m_2) + N, \\
r \cdot (m + N) &:= (r \cdot m) + N.
\end{align*}
These are well-defined precisely because $N$ is a submodule: if $m_1 + N = m_1' + N$, then $m_1 - m_1' \in N$, so $(r \cdot m_1) - (r \cdot m_1') = r \cdot (m_1 - m_1') \in N$ (using the closure axiom), giving $r \cdot m_1 + N = r \cdot m_1' + N$.
The quotient map $\pi: M \to M/N$ defined by $\pi(m) := m + N$ is an $R$-module homomorphism, and it is surjective with kernel $N$. This is the first instance of a pattern that recurs throughout module theory.
[quotetheorem:862]
The first isomorphism theorem is a structural theorem, not just a formality. It says that any homomorphism $f$ factors as a surjection $M \to M/\ker f$ followed by an isomorphism $M/\ker f \xrightarrow{\sim} \operatorname{im} f$ followed by an inclusion $\operatorname{im} f \hookrightarrow N$. Understanding a homomorphism amounts to understanding its kernel and image.
## Free Modules and Generation
One of the most basic questions about a module is: how is it built? The simplest modules are those with no relations among their elements — the **free modules**. These are the modules that behave most like vector spaces.
Free modules arise naturally when we want to describe a module without imposing any relations. If we have a set $S$ and want a module containing one "independent" generator for each element of $S$, with no relations other than those forced by the module axioms, we are constructing the free module on $S$.
[definition: Free Module]
Let $R$ be a ring and let $S$ be a set. The **free left $R$-module on $S$** is the $R$-module
\begin{align*}
R^{(S)} &:= \bigoplus_{s \in S} R,
\end{align*}
the direct sum of copies of $R$ indexed by $S$. Concretely, elements of $R^{(S)}$ are functions $\alpha: S \to R$ with $\alpha(s) = 0$ for all but finitely many $s \in S$. The module operations are pointwise: $(\alpha + \beta)(s) = \alpha(s) + \beta(s)$ and $(r \cdot \alpha)(s) = r \cdot \alpha(s)$.
When $S = \{1, \ldots, n\}$ is finite, the free module $R^{(S)}$ is denoted $R^n$, and its elements can be written as $n$-tuples $(r_1, \ldots, r_n)$ with $r_i \in R$.
[/definition]
The defining property of $R^{(S)}$ is a **universal property**: any function $\varphi: S \to M$ from the set $S$ to any $R$-module $M$ extends uniquely to an $R$-module homomorphism $\tilde{\varphi}: R^{(S)} \to M$. This makes free modules the "most general" modules with a given number of generators.
<!-- illustration-needed: the universal property of free modules — show a triangle diagram with S mapping into R^(S) via the inclusion i, S mapping into M via φ, and the unique dashed arrow R^(S) → M labelled φ̃, indicating that every function from S factors uniquely through the free module -->
[explanation: Universal Property of Free Modules]
The universal property pins down what it means to "freely generate" a module. Suppose we want an $R$-module $F$ generated by a set $S$, with no relations beyond what the module axioms force. The universal property says: for any $R$-module $M$ and any function (not necessarily a homomorphism) $\varphi: S \to M$, there exists a unique $R$-module homomorphism $\tilde{\varphi}: F \to M$ extending $\varphi$, meaning $\tilde{\varphi}(s) = \varphi(s)$ for all $s \in S$.
In the free module $R^{(S)}$, the element $e_s \in R^{(S)}$ defined by $e_s(s) = 1_R$ and $e_s(t) = 0$ for $t \neq s$ is the "standard basis vector" at $s$. The extension of $\varphi: S \to M$ is forced: since $e_s$ is a generator corresponding to $s$, we must have $\tilde{\varphi}(e_s) = \varphi(s)$, and then $R$-linearity forces
\begin{align*}
\tilde{\varphi}\!\left(\sum_{s \in S} r_s e_s\right) &= \sum_{s \in S} r_s \cdot \varphi(s).
\end{align*}
The uniqueness of this extension is what justifies the name "free": there are no relations to worry about, so extension is always possible and always unique.
[/explanation]
For vector spaces over a field, every module is free — this is the content of the fact that every vector space has a basis. For modules over a general ring, this fails spectacularly. The module $\mathbb{Z}/2\mathbb{Z}$ over $\mathbb{Z}$ has no basis: the element $\bar{1}$ generates it, but $2 \cdot \bar{1} = \bar{0}$, so $\bar{1}$ is not "free" (it satisfies a nontrivial relation).
Not every module is free, and not every generating set is a basis. The distinction matters: a module can be "generated" by elements that satisfy nontrivial relations among themselves, without any subset being a free basis. Freeness is strictly stronger than generation, and understanding when one implies the other is a central theme of the theory.
[definition: Generating Set and Finitely Generated Module]
Let $M$ be a left $R$-module and let $S \subset M$ be a subset. The **submodule generated by $S$** is
\begin{align*}
\langle S \rangle &:= \left\{ \sum_{i=1}^n r_i m_i : n \in \mathbb{N}, \, r_i \in R, \, m_i \in S \right\},
\end{align*}
the set of all finite $R$-linear combinations of elements of $S$. We say $M$ is **finitely generated** if there exists a finite set $S = \{m_1, \ldots, m_n\} \subset M$ with $\langle S \rangle = M$.
[/definition]
[example: Finitely Generated but Not Free]
The $\mathbb{Z}$-module $M = \mathbb{Z}/2\mathbb{Z} \oplus \mathbb{Z}/3\mathbb{Z}$ is finitely generated: the single element $(\bar{1}, \bar{1})$ generates all of $M$, since
\begin{align*}
1 \cdot (\bar{1}, \bar{1}) &= (\bar{1}, \bar{1}), \\
2 \cdot (\bar{1}, \bar{1}) &= (\bar{0}, \bar{2}), \\
3 \cdot (\bar{1}, \bar{1}) &= (\bar{1}, \bar{0}), \\
4 \cdot (\bar{1}, \bar{1}) &= (\bar{0}, \bar{1}), \\
5 \cdot (\bar{1}, \bar{1}) &= (\bar{1}, \bar{2}), \\
6 \cdot (\bar{1}, \bar{1}) &= (\bar{0}, \bar{0}).
\end{align*}
All six distinct elements of $M$ appear, so $\{(\bar{1}, \bar{1})\}$ is a generating set. However, $M$ is not free: every element $m \in M$ satisfies $6m = 0$ (since $|M| = 6$), so no element can be "free." By the Chinese Remainder Theorem, $M \cong \mathbb{Z}/6\mathbb{Z}$ as $\mathbb{Z}$-modules — it is a cyclic module, but not a free one.
[/example]
## Exact Sequences and the Homological Perspective
One of the great insights of twentieth-century algebra is that the most important information about modules is carried not by single modules in isolation, but by **relationships between modules** — specifically, by exact sequences. The concept of exactness captures a kind of "fitting together" that allows us to measure how far a module is from being free, projective, or injective.
[definition: Exact Sequence]
A sequence of $R$-module homomorphisms
\begin{align*}
\cdots \to M_{n+1} \xrightarrow{f_{n+1}} M_n \xrightarrow{f_n} M_{n-1} \to \cdots
\end{align*}
is **exact at $M_n$** if $\ker f_n = \operatorname{im} f_{n+1}$. The sequence is **exact** if it is exact at every module in the sequence.
A **short exact sequence** is an exact sequence of the form
\begin{align*}
0 \to A \xrightarrow{f} B \xrightarrow{g} C \to 0.
\end{align*}
Exactness at $A$ means $f$ is injective; exactness at $B$ means $\ker g = \operatorname{im} f$; exactness at $C$ means $g$ is surjective.
[/definition]
A short exact sequence $0 \to A \xrightarrow{f} B \xrightarrow{g} C \to 0$ says that $B$ "contains" a copy of $A$ (via the injective map $f$) and the quotient of $B$ by this copy is isomorphic to $C$. In other words, $B$ is an **extension** of $C$ by $A$.
The simplest case: for any submodule $N \subset M$, the sequence
\begin{align*}
0 \to N \xrightarrow{\iota} M \xrightarrow{\pi} M/N \to 0
\end{align*}
is exact, where $\iota$ is inclusion and $\pi$ is the quotient map. Every short exact sequence arises in essentially this way: up to isomorphism, $A = \ker g = \operatorname{im} f$ is a submodule of $B$, and $C \cong B/A$.
[remark: Splitting]
A short exact sequence $0 \to A \xrightarrow{f} B \xrightarrow{g} C \to 0$ is said to **split** if there exists a homomorphism $s: C \to B$ with $g \circ s = \operatorname{id}_C$ (a **section** of $g$). When the sequence splits, $B \cong A \oplus C$. For modules over a field, every short exact sequence splits — this is the reason vector spaces decompose as direct sums so readily. For modules over a ring, splitting can fail. The sequence $0 \to \mathbb{Z} \xrightarrow{\times 2} \mathbb{Z} \to \mathbb{Z}/2\mathbb{Z} \to 0$ does not split, because there is no injective map $\mathbb{Z}/2\mathbb{Z} \to \mathbb{Z}$ (since $\mathbb{Z}$ is torsion-free).
[/remark]
[quotetheorem:1930]
<!-- illustration-needed: the Snake Lemma commutative diagram — two rows of short exact sequences connected by vertical maps α, β, γ, with the "snake" path of the connecting homomorphism δ traced as a curved arrow from ker γ to coker α threading diagonally through the diagram -->
The connecting homomorphism $\delta$ is the conceptual heart of the Snake Lemma. Given $c \in \ker \gamma$, one lifts $c$ to some $b \in B$ (possible since $g$ is surjective), applies $\beta$ to get $\beta(b) \in B'$, and observes that $g'(\beta(b)) = \gamma(g(b)) = \gamma(c) = 0$, so $\beta(b) \in \ker g' = \operatorname{im} f'$, meaning $\beta(b) = f'(a')$ for a unique $a' \in A'$. The class $a' + \operatorname{im} \alpha$ in $\operatorname{coker} \alpha$ is independent of the lift, and $\delta(c)$ is defined to be this class.
## Tensor Products and Bilinear Maps
The tensor product is the most important construction in module theory beyond direct sums. It is the universal object for bilinear maps, and it is the right notion of "product" for modules — not the Cartesian product (which gives the direct sum), but a construction that collapses bilinearity into linearity.
What problem does the tensor product solve? Suppose $M$ is a right $R$-module and $N$ is a left $R$-module, and we want to form a product $M \times N \to P$ for some abelian group $P$ that is $\mathbb{Z}$-bilinear and satisfies $(mr) \otimes n = m \otimes (rn)$ for $r \in R$. The tensor product $M \otimes_R N$ is the universal abelian group through which all such maps factor.
[definition: Tensor Product of Modules]
Let $M$ be a right $R$-module and $N$ a left $R$-module. The **tensor product** $M \otimes_R N$ is the abelian group generated by symbols $m \otimes n$ for $m \in M$, $n \in N$, subject to the relations:
\begin{align*}
(m_1 + m_2) \otimes n &= m_1 \otimes n + m_2 \otimes n, \\
m \otimes (n_1 + n_2) &= m \otimes n_1 + m \otimes n_2, \\
(mr) \otimes n &= m \otimes (rn), \quad r \in R.
\end{align*}
Formally, $M \otimes_R N := \mathbb{Z}^{(M \times N)} / K$, where $\mathbb{Z}^{(M \times N)}$ is the free abelian group on the set $M \times N$, and $K$ is the subgroup generated by all elements of the forms listed above.
[/definition]
The notation "$m \otimes n$" means the image of the pair $(m, n)$ in the quotient. Not every element of $M \otimes_R N$ is of this form — a general element is a finite sum $\sum_i m_i \otimes n_i$. This is a common source of errors: one cannot always decompose a tensor as a "pure tensor."
[example: Tensor Product Over the Integers]
Consider $M = \mathbb{Z}/m\mathbb{Z}$ and $N = \mathbb{Z}/n\mathbb{Z}$ as $\mathbb{Z}$-modules (note that $\mathbb{Z}$ is commutative, so there is no left/right distinction). We claim
\begin{align*}
\mathbb{Z}/m\mathbb{Z} \otimes_\mathbb{Z} \mathbb{Z}/n\mathbb{Z} &\cong \mathbb{Z}/\gcd(m,n)\mathbb{Z}.
\end{align*}
To see this, first observe that any generator $\bar{a} \otimes \bar{b}$ can be written as $\bar{1} \otimes \overline{ab}$, since $\bar{a} \otimes \bar{b} = (a \cdot \bar{1}) \otimes \bar{b} = \bar{1} \otimes (a \cdot \bar{b}) = \bar{1} \otimes \overline{ab}$. So $M \otimes N$ is generated by $\bar{1} \otimes \bar{1}$.
The element $\bar{1} \otimes \bar{1}$ satisfies $m(\bar{1} \otimes \bar{1}) = \overline{m} \otimes \bar{1} = \bar{0} \otimes \bar{1} = 0$ and $n(\bar{1} \otimes \bar{1}) = \bar{1} \otimes \overline{n} = \bar{1} \otimes \bar{0} = 0$. Therefore $\operatorname{ord}(\bar{1} \otimes \bar{1})$ divides both $m$ and $n$, hence divides $\gcd(m, n)$.
Conversely, the map $\bar{a} \otimes \bar{b} \mapsto \overline{ab}$ into $\mathbb{Z}/\gcd(m,n)\mathbb{Z}$ is well-defined (checking: if $\bar{a} = \bar{a'}$ then $m \mid a - a'$, and since $\gcd(m,n) \mid m$, we have $\gcd(m,n) \mid (a-a')b$, so $\overline{ab} = \overline{a'b}$ in $\mathbb{Z}/\gcd(m,n)\mathbb{Z}$; similarly for $b$), and its image contains $\bar{1}$, so it is surjective. Hence $\operatorname{ord}(\bar{1} \otimes \bar{1}) = \gcd(m,n)$, and $M \otimes N \cong \mathbb{Z}/\gcd(m,n)\mathbb{Z}$.
As a special case: $\mathbb{Z}/2\mathbb{Z} \otimes_\mathbb{Z} \mathbb{Z}/3\mathbb{Z} \cong \mathbb{Z}/\gcd(2,3)\mathbb{Z} = \mathbb{Z}/\mathbb{Z} = 0$. The tensor product of two nontrivial modules can be zero.
[/example]
The vanishing $\mathbb{Z}/2\mathbb{Z} \otimes_\mathbb{Z} \mathbb{Z}/3\mathbb{Z} = 0$ is striking. Intuitively, any element $\bar{a} \otimes \bar{b}$ satisfies $2(\bar{a} \otimes \bar{b}) = \bar{0} \otimes \bar{b} = 0$ (from the $\mathbb{Z}/2\mathbb{Z}$ side) and $3(\bar{a} \otimes \bar{b}) = 0$ (from the $\mathbb{Z}/3\mathbb{Z}$ side), so it has order dividing $\gcd(2, 3) = 1$, making it zero.
[example: Naive Tensor Products Can Collapse Information]
A naive attempt to construct a "product" of modules might try the Cartesian product $M \times N$ with componentwise operations. But the Cartesian product gives the **direct sum** $M \oplus N$, not a multiplicative object — it records no interaction between $M$ and $N$. The tensor product is designed precisely to capture how elements of $M$ and $N$ interact via the ring, but this interaction can destroy information in unexpected ways.
Consider $M = \mathbb{Z}$ (as a $\mathbb{Z}$-module) and $N = \mathbb{Q}/\mathbb{Z}$. A naive expectation might be that $M \otimes_\mathbb{Z} N \cong N$ since $\mathbb{Z}$ "should" act as the identity. Indeed, the map $n \otimes \bar{q} \mapsto n\bar{q}$ is an isomorphism $\mathbb{Z} \otimes_\mathbb{Z} (\mathbb{Q}/\mathbb{Z}) \xrightarrow{\sim} \mathbb{Q}/\mathbb{Z}$. Now adjoin torsion: replace $\mathbb{Z}$ by $\mathbb{Z}/p\mathbb{Z}$ for a prime $p$. Then
\begin{align*}
\mathbb{Z}/p\mathbb{Z} \otimes_\mathbb{Z} (\mathbb{Q}/\mathbb{Z}) &\cong \mathbb{Z}/p\mathbb{Z} \otimes_\mathbb{Z} \mathbb{Z}[p^{-1}]/\mathbb{Z} \cong \mathbb{Z}/p\mathbb{Z},
\end{align*}
where the last isomorphism holds because $\mathbb{Q}/\mathbb{Z}$ has a unique subgroup $\mathbb{Z}/p^\infty\mathbb{Z} = \bigcup_k \frac{1}{p^k}\mathbb{Z}/\mathbb{Z}$ of $p$-power torsion, and $\mathbb{Z}/p\mathbb{Z} \otimes_\mathbb{Z} \mathbb{Q}/\mathbb{Z} \cong \mathbb{Z}/p\mathbb{Z} \otimes_\mathbb{Z} \mathbb{Z}/p^\infty\mathbb{Z} \cong \mathbb{Z}/p\mathbb{Z}$. The tensor product keeps only the "compatible" $p$-torsion and discards everything else. The failure of the sequence $0 \to \mathbb{Z} \to \mathbb{Q} \to \mathbb{Q}/\mathbb{Z} \to 0$ to remain exact after tensoring with $\mathbb{Z}/p\mathbb{Z}$ (since $\mathbb{Z}/p\mathbb{Z} \otimes \mathbb{Q} = 0$ while $\mathbb{Z}/p\mathbb{Z} \otimes \mathbb{Q}/\mathbb{Z} \neq 0$) is exactly what the flatness condition is designed to detect.
[/example]
## Projective, Injective, and Flat Modules
The distinction between free modules and general modules leads to three fundamental classes of modules, each capturing a different aspect of how modules behave with respect to exact sequences and homomorphisms.
The question is natural: given a module $M$, can we always lift or extend homomorphisms through surjections or injections? For free modules, the universal property gives lifting for free. For a general module, this may fail — and the precise way it fails is recorded by the module's projective, injective, or flat properties.
[definition: Projective Module]
A left $R$-module $P$ is **projective** if for every surjective $R$-module homomorphism $g: B \twoheadrightarrow C$ and every homomorphism $f: P \to C$, there exists a homomorphism $\tilde{f}: P \to B$ such that $g \circ \tilde{f} = f$.
Equivalently, $P$ is projective if and only if every short exact sequence $0 \to A \to B \to P \to 0$ splits.
[/definition]
Projective modules answer the question: which modules have the lifting property? If you want to map into $C$ and you know $B$ surjects onto $C$, a projective module lets you always find a lift through $B$. This is useful, for instance, in constructing resolutions: one builds a free (hence projective) module surjecting onto any given module, and projectivity controls how that surjection interacts with maps out of the module.
Now consider the dual question: instead of lifting maps through surjections, can we always extend maps through injections? If $A$ injects into $B$, and we have a map $A \to I$, can we always extend it to a map $B \to I$? This is the content of injectivity.
[definition: Injective Module]
A left $R$-module $I$ is **injective** if for every injective $R$-module homomorphism $f: A \hookrightarrow B$ and every homomorphism $g: A \to I$, there exists a homomorphism $\tilde{g}: B \to I$ such that $\tilde{g} \circ f = g$.
Equivalently, $I$ is injective if and only if every short exact sequence $0 \to I \to B \to C \to 0$ splits.
[/definition]
Injective modules answer an extension question: any map out of a submodule can be extended to the whole module. Over $\mathbb{Z}$, Baer's criterion says that a $\mathbb{Z}$-module $I$ is injective if and only if it is **divisible**: for every $i \in I$ and every nonzero $n \in \mathbb{Z}$, there exists $j \in I$ with $nj = i$. This explains why $\mathbb{Q}$ and $\mathbb{Q}/\mathbb{Z}$ are injective $\mathbb{Z}$-modules, while $\mathbb{Z}$ itself is not: the element $1 \in \mathbb{Z}$ has no "half" in $\mathbb{Z}$.
There is a third property that is independent of both projectivity and injectivity, but arises from the tensor product perspective. The tensor product functor $- \otimes_R M$ always sends right-exact sequences to right-exact sequences (meaning it preserves surjections but need not preserve injections). Modules for which tensor product also preserves injections — and hence preserves all exact sequences — are called flat.
[definition: Flat Module]
A left $R$-module $M$ is **flat** if the functor $- \otimes_R M$ preserves exactness: for every exact sequence of right $R$-modules $0 \to A \to B \to C \to 0$, the sequence
\begin{align*}
0 \to A \otimes_R M \to B \otimes_R M \to C \otimes_R M \to 0
\end{align*}
is exact.
[/definition]
[explanation: Relationships Among Projective, Injective, and Flat]
These three classes form a hierarchy when the ring is nice enough, but they measure genuinely different things.
Every free module is projective. The converse is false in general: $\mathbb{Z}_{(p)} = \{m/n \in \mathbb{Q} : p \nmid n\}$, the localization of $\mathbb{Z}$ at the prime $p$, is a projective but non-free $\mathbb{Z}$-module. However, over a local ring, every projective module is free — a theorem of Kaplansky.
Every projective module is flat. The converse fails: $\mathbb{Q}$ is flat as a $\mathbb{Z}$-module (since it is torsion-free, and for $\mathbb{Z}$, flat and torsion-free coincide for finitely generated modules). But $\mathbb{Q}$ is not projective as a $\mathbb{Z}$-module, because the sequence $0 \to \mathbb{Z} \to \mathbb{Q} \to \mathbb{Q}/\mathbb{Z} \to 0$ does not split: a splitting would give an injection $\mathbb{Q}/\mathbb{Z} \hookrightarrow \mathbb{Q}$, but $\mathbb{Q}/\mathbb{Z}$ is divisible and not torsion-free, while every subgroup of $\mathbb{Q}$ is torsion-free.
Injective modules are dual to projective modules in the formal categorical sense, but they are quite different concretely. Over $\mathbb{Z}$, the injective modules are precisely the divisible abelian groups: $\mathbb{Q}$, $\mathbb{Q}/\mathbb{Z}$, and their direct sums. Every $\mathbb{Z}$-module embeds into an injective $\mathbb{Z}$-module, a fact that holds for modules over any ring (every module has an **injective hull**).
[/explanation]
[quotetheorem:3232]
The equivalence with condition (2) is particularly illuminating: projective modules are exactly the direct summands of free modules. This is the correct generalization of the concept of a "direct summand" to modules that may not be free themselves. Over a PID like $\mathbb{Z}$ or $k[x]$, every submodule of a free module is free (a theorem), so every projective module over a PID is free.
[remark: Connection to Homological Algebra]
The three classes — projective, injective, flat — are not merely interesting in their own right; they are the foundation of homological algebra. Given a module $M$, one can build a **projective resolution**: a long exact sequence
\begin{align*}
\cdots \to P_2 \to P_1 \to P_0 \to M \to 0
\end{align*}
where each $P_i$ is projective. Applying $\operatorname{Hom}_R(-, N)$ to such a resolution and taking the cohomology of the resulting complex yields the **Ext groups** $\operatorname{Ext}_R^n(M, N)$, which measure the failure of $\operatorname{Hom}_R(-, N)$ to be exact. Dually, applying $- \otimes_R N$ to a projective resolution and taking homology yields the **Tor groups** $\operatorname{Tor}_n^R(M, N)$, measuring the failure of $- \otimes_R N$ to be exact. Both $\operatorname{Ext}$ and $\operatorname{Tor}$ are independent of the choice of resolution (a nontrivial theorem), and they are the principal invariants of modern homological algebra. In particular, $\operatorname{Tor}_1^R(M, N) = 0$ for all $N$ if and only if $M$ is flat, and $\operatorname{Ext}_R^1(M, N) = 0$ for all $N$ if and only if $M$ is projective.
[/remark]
## Structure Theorem for Finitely Generated Modules over a PID
The most precise structural result in elementary module theory applies when the ring is a principal ideal domain. Over a PID, finitely generated modules have a complete classification, generalizing both the fundamental theorem of finitely generated abelian groups (PID $= \mathbb{Z}$) and the rational canonical and Jordan forms for linear operators (PID $= k[x]$).
The key insight is that over a PID, the failure of a module to be free is controlled by finitely many invariants — the **elementary divisors** or **invariant factors** — which completely determine the module up to isomorphism.
[definition: Torsion Submodule]
Let $R$ be an integral domain and let $M$ be a left $R$-module. The **torsion submodule** of $M$ is
\begin{align*}
\operatorname{Tor}(M) &:= \{m \in M : \exists r \in R \setminus \{0\}, \, r \cdot m = 0\}.
\end{align*}
An element $m \in M$ with $r \cdot m = 0$ for some nonzero $r \in R$ is called a **torsion element**. The module $M$ is **torsion-free** if $\operatorname{Tor}(M) = \{0\}$, and **torsion** if $\operatorname{Tor}(M) = M$.
[/definition]
Over an integral domain, $\operatorname{Tor}(M)$ is always a submodule of $M$ (to check closure: if $r \cdot m_1 = 0$ and $s \cdot m_2 = 0$ with $r, s \neq 0$, then $rs \cdot (m_1 + m_2) = s \cdot (r \cdot m_1) + r \cdot (s \cdot m_2) = 0$, and $rs \neq 0$ since $R$ is a domain). This fails over rings with zero divisors: in $\mathbb{Z}/6\mathbb{Z}$, the element $\bar{2}$ satisfies $3 \cdot \bar{2} = \bar{6} = \bar{0}$, but $\bar{2} + \bar{3} = \bar{5}$ and there is no single nonzero annihilator for $\bar{5}$ that isn't $6$ itself.
[quotetheorem:3233]
[example: Applying the Structure Theorem to Abelian Groups]
Consider the finitely generated abelian group $M = \mathbb{Z}^2 / \langle (4, 2), (2, 4) \rangle$, viewed as a $\mathbb{Z}$-module. We can compute its structure using the Smith Normal Form of the presentation matrix.
The presentation matrix is
\begin{align*}
A &= \begin{pmatrix} 4 & 2 \\ 2 & 4 \end{pmatrix}.
\end{align*}
To find the Smith Normal Form, we perform row and column operations over $\mathbb{Z}$. First, swap rows to put the smallest entry in position $(1,1)$: swap rows to get $\begin{pmatrix} 2 & 4 \\ 4 & 2 \end{pmatrix}$. Subtract $2 \times (\text{row 1})$ from row 2: $\begin{pmatrix} 2 & 4 \\ 0 & -6 \end{pmatrix}$. Subtract $2 \times (\text{col 1})$ from col 2: $\begin{pmatrix} 2 & 0 \\ 0 & -6 \end{pmatrix}$.
The Smith Normal Form is $\operatorname{diag}(2, 6)$ (replacing $-6$ by $6$, which differs by a unit $-1 \in \mathbb{Z}^\times$). We verify $2 \mid 6$, as required.
Therefore
\begin{align*}
M &\cong \mathbb{Z}/2\mathbb{Z} \oplus \mathbb{Z}/6\mathbb{Z}.
\end{align*}
The module is purely torsion (rank $r = 0$) with invariant factors $d_1 = 2$ and $d_2 = 6$.
[/example]
[example: Jordan Normal Form via the Structure Theorem]
Let $k$ be a field and let $T: V \to V$ be a linear operator on a finite-dimensional $k$-vector space $V$. Define a $k[x]$-module structure on $V$ by setting $x \cdot v := T(v)$ and extending by linearity: for any polynomial $p(x) = a_n x^n + \cdots + a_1 x + a_0$, set $p \cdot v := a_n T^n(v) + \cdots + a_1 T(v) + a_0 v$.
This makes $V$ into a finitely generated $k[x]$-module. Since $k[x]$ is a PID, the Structure Theorem applies:
\begin{align*}
V &\cong k[x]/(p_1(x)) \oplus k[x]/(p_2(x)) \oplus \cdots \oplus k[x]/(p_m(x))
\end{align*}
for some polynomials $p_1 \mid p_2 \mid \cdots \mid p_m$ in $k[x]$. There is no free part because $V$ is finite-dimensional over $k$: a free $k[x]$-summand would contain elements $v, T(v), T^2(v), \ldots$ that are $k$-linearly independent, so $V$ would be infinite-dimensional.
The polynomial $p_m(x)$ is the **minimal polynomial** of $T$, and the product $p_1(x) \cdots p_m(x)$ (up to a unit) is the **characteristic polynomial** of $T$. The decomposition into cyclic modules $k[x]/(p_i(x))$ is the **rational canonical form** of $T$. If $k$ is algebraically closed and we further decompose each $k[x]/(p_i(x))$ by factoring $p_i$ into linear factors, we obtain the **Jordan normal form**.
[/example]
The second example reveals that the theory of modules over $k[x]$ is precisely the theory of a single linear operator. The Structure Theorem over PIDs simultaneously proves both the classification of finitely generated abelian groups and the Jordan/rational canonical form theorem for matrices — two results that, on their surface, look completely different. This unification is a striking demonstration of the power of abstraction.
## References
- D. S. Dummit and R. M. Foote, *Abstract Algebra*, 3rd edition (2004). Chapters 10–12.
- S. Lang, *Algebra*, revised 3rd edition (2002). Chapters III and XIII–XVI.
- M. F. Atiyah and I. G. Macdonald, *Introduction to Commutative Algebra* (1969). Chapter 2.
- P. J. Hilton and U. Stammbach, *A Course in Homological Algebra*, 2nd edition (1997). Chapters I–III.
- N. Jacobson, *Basic Algebra II* (1989). Chapter 3.