Invariant factors and Smith normal form

This (Chapter 7 of Huffman-Kunze) is still black magic to me;
here are my first notes:
- cyclic vectors
this is much easier to understand once you understand generalized
eigenspaces and the structure of nilpotent operators;
then the cyclic vectors correspond exactly to the Jordan blocks (duh
-- that's the point) but they're not at all uniquely determined.
[you're just picking stuff in $\ker A^k$ and pushing 'em forward via
 $A$.]

essentially cyclic vectors are exactly what's captured in Jordan
blocks; you can start with them (presumably), or start with careful
study of nilpotent operators

- Smith normal form
GOOD GOD!
This is illegible b/c it assumes you know the structure theorem for
finitely generated modules over a PID (and probably its proof).
[they do the proof only for $K[x]$, and use the Euclidean algorithm in
 the middle of their proof. *groan*
 If you're gonna do this, first define PIDs and state it generally!]

The intrinsic characterization of invariant factors
(as $\delta_k/\delta_{k-1}$) sounds a -lot- like this:
``$\delta_k$ is the determinant $\Lambda^k M \to \Lambda^k N$
  in some sense; hence we're looking at a sort of characteristic
  polynomial, I swear...''

