linalg[ihermite] - integer-only Hermite Normal Form
|
Calling Sequence
|
|
ihermite(A)
ihermite(A, U)
|
|
Parameters
|
|
A
|
-
|
rectangular matrix of integers
|
U
|
-
|
name
|
|
|
|
|
Description
|
|
•
|
The function ihermite computes the Hermite Normal Form (reduced row echelon form) of a rectangular matrix of integers.
|
•
|
The Hermite normal form of A is an upper triangular matrix H with rank(A) = the number of nonzero rows of H. If A is an n by n matrix of full rank then .
|
•
|
This is not an efficient method for computing the rank or determinant except that this may yield a partial factorization of without doing any explicit factorizations.
|
•
|
The Hermite normal form is obtained by doing elementary row operations. This includes interchanging rows, multiplying through a row by -1, and adding an integral multiple of one row to another.
|
•
|
One can use transposes to obtain 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: ihermite(A) = U A.
|
•
|
The command with(linalg,ihermite) allows the use of the abbreviated form of this command.
|
|
|
Examples
|
|
Important: The linalg package has been deprecated. Use the superseding packages, LinearAlgebra and VectorCalculus, instead.
>
|
|
>
|
|
| (1) |
>
|
|
| (2) |
To obtain column form of Hermite Normal Form
>
|
|
| (3) |
>
|
|
>
|
|
| (4) |
>
|
|
| (5) |
>
|
|
| (6) |
|
|
Download Help Document
Was this information helpful?