Algorithm for computing Smith normal form in an algebraic number field of class number 1 Let $K$ be an algebraic number field of class number 1.
Let $\frak{O}$ be the ring of algebraic integers in $K$.
Let $A$ be a nonzero $m\times n$ matrix over $\frak{O}$.
Since $\frak{O}$ is a PID, $A$ has Smith normal form $S$.
I'm looking for an algorithm to compute $S$.
It seems to me that we need to solve Bézout's identity.
If it's too difficult, we may assume K is a quadratic number field of class number 1.

This is routine and is already implemented in several computer algebra systems, including Sage, Pari and (I think) Magma. (I wrote the Sage version some while back). As you point out, the standard existence proof for Smith form is completely algorithmic once you know how to find a GCD of two elements, which any of the above packages will do for you.
