TOPICS
Search

Smith Normal Form


The Smith normal form of an m×n matrix A over a principal ideal domain R is an m×n matrix D satisfying

 UAV=D,
(1)

where U and V are m×m and n×n matrices over R whose inverses also have entries in R, all entries of D off the main diagonal are zero, and its nonzero diagonal entries d_1, ..., d_r satisfy d_1|d_2|...|d_r. Here a|b means that a divides b in R. Any remaining diagonal entries are zero, and r is the rank of A. The entries d_i are the invariant factors, determined uniquely up to multiplication by units of R. This form exists over every principal ideal domain, but not over every integral domain (Stanley 2016).

For an integer matrix, U and V are integer unimodular matrices, so their determinants are +/-1. Requiring the nonzero diagonal entries of D to be positive makes the Smith normal form unique. For example,

 [1 0; 3 -1][2 4; 6 8][1 -2; 0 1]=[2 0; 0 4].
(2)

The outer factors have determinants -1 and 1, respectively, and 2|4, so the Smith normal form of the middle matrix has diagonal entries 2 and 4. This reduction is useful for solving linear Diophantine equations.

For the polynomial case, let A be an n×n matrix over a field F. Using elementary row and column operations over the polynomial ring F[x], the n×n matrix xI-A (where I is the identity matrix) can be put into the diagonal matrix form

 [1 0 ... 0 0 0 0 0; 0 1 ... 0 0 0 0 0; | ... ... ... ... ... ... |; 0 0 0 1 0 0 0 0; 0 0 0 0 a_1(x) 0 0 0; 0 0 0 0 0 a_2(x) 0 0; | ... ... ... ... ... ... |; 0 0 0 0 0 0 0 a_m(x)],
(3)

where a_1(x), a_2(x), ..., a_m(x) are monic polynomials in F[x] with degrees at least one and satisfying a_1(x)|a_2(x)|...|a_m(x), where f|g|h|... means f divides g, which in turn divides h, and so on (Dummit and Foote 2004, p. 479). The allowed operations interchange rows or columns, add a polynomial multiple of one to another, or multiply a row or column by a unit of F[x], namely a nonzero constant in F. The polynomials a_i(x) are the invariant factors of A and determine its rational canonical form.

The Smith normal form of an integer matrix is implemented in the Wolfram Language as SmithReduce[A]. The full decomposition is given by SmithDecomposition[A], which returns {U,D,V} satisfying UAV=D. For matrices of univariate polynomials, PolynomialSmithDecomposition[M, x] gives the corresponding decomposition over a polynomial ring.


See also

Hermite Normal Form, Integer Matrix, Invariant Factor, Normal Form, Rational Canonical Form

Explore with Wolfram|Alpha

References

Ayres, F. Jr. "Smith Normal Form." Ch. 24 in Schaum's Outline of Theory and Problems of Matrices. New York: Schaum, pp. 188-195, 1962.Dumas, J.-G.; Saunders, B. D.; and Villard, G. "On Efficient Sparse Integer Matrix Smith Normal Form Computations." J. Symb. Comput. 32, 71-100, 2001.Dummit, D. S. and Foote, R. M. "The Rational Canonical Form." §12.2 in Abstract Algebra, 3rd ed. Hoboken, NJ: Wiley, pp. 472-490, 2004.Giesbrecht, M. "Fast Computation of the Smith Form of a Sparse Integer Matrix." Comput. Complexity 10, 41-69, 2001. Pascoletti, A. "Smith Normal Forms." https://library.wolfram.com/infocenter/MathSource/7081/.Stanley, R. P. "Smith Normal Form in Combinatorics." J. Combin. Th. Ser. A 144, 476-495, 2016. https://doi.org/10.1016/j.jcta.2016.06.013.

Referenced on Wolfram|Alpha

Smith Normal Form

Cite this as:

Weisstein, Eric W. "Smith Normal Form." From MathWorld--A Wolfram Resource. https://mathworld.wolfram.com/SmithNormalForm.html

Subject classifications