SmithDecomposition

SmithDecomposition[m]

gives the Smith normal form decomposition of an integer matrix m.

Details

  • The result is given in the form {u,r,v}, where u and v are unimodular matrices, r is a diagonal matrix with each diagonal entry dividing the next one, and u.m.vr.
  • The unimodular matrices u and v are integer matrices with Abs[Det[u]]1, and their inverses are also integer matrices.

Examples

open allclose all

Basic Examples  (1)

Decompose m into unimodular matrices u and v and a diagonal matrix r:

In[1]:=
Click for copyable input
In[2]:=
Click for copyable input
Out[2]=
In[3]:=
Click for copyable input
Out[3]=

Each entry on the diagonal of r divides the successor:

In[4]:=
Click for copyable input
Out[4]=

The matrices u and v are unimodular, i.e. determinants are units:

In[5]:=
Click for copyable input
Out[5]=

Scope  (5)

Applications  (3)

Properties & Relations  (6)

See Also

HermiteDecomposition  RowReduce  LatticeReduce  ExtendedGCD

Introduced in 2015
(10.2)