
Lemma 10.80.1. Let $M$ be an $R$-module. The following are equivalent:

1. $M$ is flat.

2. If $f: R^ n \to M$ is a module map and $x \in \mathop{\mathrm{Ker}}(f)$, then there are module maps $h: R^ n \to R^ m$ and $g: R^ m \to M$ such that $f = g \circ h$ and $x \in \mathop{\mathrm{Ker}}(h)$.

3. Suppose $f: R^ n \to M$ is a module map, $N \subset \mathop{\mathrm{Ker}}(f)$ any submodule, and $h: R^ n \to R^{m}$ a map such that $N \subset \mathop{\mathrm{Ker}}(h)$ and $f$ factors through $h$. Then given any $x \in \mathop{\mathrm{Ker}}(f)$ we can find a map $h': R^ n \to R^{m'}$ such that $N + Rx \subset \mathop{\mathrm{Ker}}(h')$ and $f$ factors through $h'$.

4. If $f: R^ n \to M$ is a module map and $N \subset \mathop{\mathrm{Ker}}(f)$ is a finitely generated submodule, then there are module maps $h: R^ n \to R^ m$ and $g: R^ m \to M$ such that $f = g \circ h$ and $N \subset \mathop{\mathrm{Ker}}(h)$.

Proof. That (1) is equivalent to (2) is just a reformulation of the equational criterion for flatness1. To show (2) implies (3), let $g: R^ m \to M$ be the map such that $f$ factors as $f = g \circ h$. By (2) find $h'': R^ m \to R^{m'}$ such that $h''$ kills $h(x)$ and $g: R^ m \to M$ factors through $h''$. Then taking $h' = h'' \circ h$ works. (3) implies (4) by induction on the number of generators of $N \subset \mathop{\mathrm{Ker}}(f)$ in (4). Clearly (4) implies (2). $\square$

[1] In fact, a module map $f : R^ n \to M$ corresponds to a choice of elements $x_1, x_2, \ldots , x_ n$ of $M$ (namely, the images of the standard basis elements $e_1, e_2, \ldots , e_ n$); furthermore, an element $x \in \mathop{\mathrm{Ker}}(f)$ corresponds to a relation between these $x_1, x_2, \ldots , x_ n$ (namely, the relation $\sum _ i f_ i x_ i = 0$, where the $f_ i$ are the coordinates of $x$). The module map $h$ (represented as an $m \times n$-matrix) corresponds to the matrix $(a_{ij})$ from Lemma 10.38.11, and the $y_ j$ of Lemma 10.38.11 are the images of the standard basis vectors of $R^ m$ under $g$.

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).