Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > Mathematics and Algorithms > Matrices and Linear Algebra > Matrix Decompositions >

HermiteDecomposition

HermiteDecomposition[m]
gives the Hermite normal form decomposition of an integer matrix m.
  • The result is given in the form {u,r} where u is a unimodular matrix, r is an upper-triangular matrix, and u.m==r.
Decompose m into a unimodular matrix u and an upper-triangular matrix r:
The determinant of u is a unit:
Decompose m into a unimodular matrix u and an upper-triangular matrix r:
In[1]:=
Click for copyable input
In[2]:=
Click for copyable input
Out[2]=
In[3]:=
Click for copyable input
Out[3]=
The determinant of u is a unit:
In[4]:=
Click for copyable input
Out[4]=
A singular matrix m:
The number of nonzero rows in r is equal to the rank of m:
Rectangular matrices m:
A rational matrix m:
u is a unimodular integer matrix; r is an upper-triangular rational matrix:
A Gaussian integer matrix m:
u is a unimodular Gaussian integer matrix; r is an upper-triangular Gaussian integer matrix:
A Gaussian rational matrix m:
u is a unimodular Gaussian integer matrix; r is an upper-triangular Gaussian rational matrix:
Solve a linear Diophantine equation A.xEqualb:
Form a homogenized system:
Rows of r are integer combinations of rows of m:
The second row of r gives a solution of A.xEqualb:
The last two rows of r give a basis of solutions to the homogenous equation A.xEqual0:
Reduce uses HermiteDecomposition to solve linear Diophantine equations:
HermiteDecomposition gives a unimodular matrix and an upper-triangular matrix:
The matrices satisfy the equation u.mEqualr:
Det of a unimodular matrix is a unit:
Inverse of a unimodular integer matrix is an integer matrix:
Elements of r form an upper-triangular basis of the lattice generated by the rows of m:
The inverse of u provides an explicit representation of rows of m in terms of the basis:
LatticeReduce gives a basis consisting of shorter vectors:
New in 6
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team