For a finitely generated module M over a principal ideal domain (or Euclidean domain) R, there exists an integer r ≥ 0 and non-zero, non-unit elements d1, d2, …, dk in R such that di divides di+1 for 1≤i<k and such that M is isomorphic, as a module, to
r is the torsion-free rank of M and the di are the invariant factors. This decomposition is unique up to multiplying the invariant factors by units. When R = ℤ, then the classification of finite abelian groups follows. When R = F[x], where F is a field, the rational canonical form follows, and when R = ℂ[x], a similar version of the structure theorem gives the Jordan normal form. See also Smith normal form.