Gaussian-integer-only Hermite Normal Form
Matrix of Gaussian integers
The function GIhermite computes the Hermite Normal Form (reduced row echelon form) of a Matrix of Gaussian integers.
The Hermite normal form of A is an upper triangular Matrix H with rank(A) = the number of nonzero rows of H.
The Hermite normal form is obtained by doing elementary row operations. This includes interchanging rows, multiplying through a row by a unit in Zi, and adding an integral multiple of one row to another.
One can use transposes to obtain the column form of the Hermite Normal Form.
In the case of two arguments, the second argument U will be assigned the transformation Matrix on output, such that the following holds: GIhermite(A) = U . A.
A ≔ Matrix⁡3−7⁢I,7+11⁢I,11⁢I,13−4⁢I,17+12⁢I,19
B ≔ GIhermite⁡A,U
Download Help Document