The proof that I know of the theorem goes like this:
- Any module $M$ is a quotient of a free module $F$ (over any ring).
- Any submodule $K$ of a free module $F$ over a PID $R$ is a free module, so in particular the kernel of the above quotient map is free.
- For any free submodule $K$ of a free module $F$ over a PID $R$ we can find a $y\in K, x\in F$ and $a\in R$ such that $F=\left<x\right>\oplus F'$ and $K=\left<y\right>\oplus K'$ with $K'=K\cap F'$. Furthermore, $\left<a\right>$ is an ideal maximal among images of $K$ under homomorphisms $F\to R$.
- If $K$ is finitely generated (which would follow from $F$ being finitely generated), we iterate this construction, which gives us sequences $x_i\in F$, $y_i\in K$ and $a_i\in R$ such that $F=F'\oplus_{i} \left<x_i\right>$ and $K=\oplus_{i}\left<y_i\right>$ where $a_ix_i=y_i$ and $a_i$ divides $a_j$ for $i<j$ (which follows from choosing a module homomorphism $f$ from $F$ to $R$ that is $1$ on all the $x_i$ and on the basis elements of the $F'$, then exploiting the fact that $f(y_j)=f(a_jx_j)=a_jf(x_j)=a_j\in f(\oplus_{i\leq j}y_j)\subset\left<a_i\right>$ by $\left<a_i\right>$ being maximal among images of $\oplus_{i\leq j}a_j$ under homomorphisms from $\oplus_{i\leq j}\left<x_j\right>\oplus F'$ to $R$).
- Taking quotients, we obtain that $M=F'\oplus_i R/(a_i)$ where $a_i$ divides $a_j$ if $i<j$.
My question is why does this break down if we drop the assumption in 4 that $K$ is finitely generated? Does iterating the process transfinitely no longer give us a basis for $K$? If so, why not?