Get Math Help

GET TUTORING NEAR ME!

(800) 434-2582

By submitting the following form, you agree to Club Z!'s Terms of Use and Privacy Policy

    Home / Get Math Help

    Hermite Normal Form

    Usage

    HermiteDecomposition[m] gives the Hermite normal form decomposition of an integer matrix m.

    Basic example

    Decompose m into a unimodular matrix u and an upper-triangular matrix r:
In[1]:=m=(1 | 2 | 3
5 | 4 | 3
8 | 7 | 9);
In[2]:={u, r}=HermiteDecomposition[m];
{u//MatrixForm, r//MatrixForm}
Out[2]={(1 | 0 | 0
3 | 1 | -1
-1 | -3 | 2), (1 | 2 | 3
0 | 3 | 3
0 | 0 | 6)}
The determinant of u has absolute value 1:
In[3]:=Abs[Det[u]]
Out[3]=1
Confirm the decomposition:
In[4]:=u.m = r
Out[4]=True

    Option

    Method

    Relationships with other entities

    Charles Hermite

    SmithDecomposition | RowReduce | LatticeReduce | ExtendedGCD

    Relationships with other entities

    History

    introduced in Version 6 (May 2007)

    Back to List | POWERED BY THE WOLFRAM LANGUAGE