
The Hermite Normal Form 251
If the matrix entries are integers, then its Hermite normal form is
H =
d
0
.
.
.
0
, D = gcd(v
1
, v
2
, . . . , v
m
).
If we turn this vector upside down, then we have the vector computed by
the GCD algorithms describe d in the previous sec tio ns. Therefore, using ele-
mentary row ope rations to compute the greatest common divisor of the com-
ponents of an m × 1 column vector is equivalent to computing the Hermite
normal form of an m × 1 matrix.
In this section, we consider an integer matrix of size m × n, and follow
Havas, Majewski and Matthews [56] to extend the algorithm for the GCD to
an algorithm for the HNF. In the