GaussInt
GIsmith
Gaussian Integer-only Smith Normal Form
Calling Sequence
Parameters
Description
Examples
GIsmith(A)
GIsmith(A, U, V)
A
-
Matrix of Gaussian integers
U
name (optional)
V
The function GIsmith computes the Smith normal form S of an n by m Matrix of Gaussian integers.
If two n by n Matrices have the same Smith normal form, they are equivalent.
The Smith normal form is a diagonal Matrix S where
rank⁡A = number of nonzero rows (columns) of S
Si,i is in the first quadrant for 0<i≤rankA
Si,i divides Si+1,i+1 for 0<i<rankA
∏i=1r⁡Si,i divides det⁡M for all minors M of rank 0<r≤rankA
The Smith normal form is obtained by doing elementary row and column operations. This includes interchanging rows (columns), multiplying through a row (column) by a unit in Zi, and adding integral multiples of one row (column) to another.
In the case of three arguments, the second argument U and the third argument V will be assigned the transformation Matrices on output, such that GIsmith(A) = U . A . V.
with⁡GaussInt:
H≔Matrix⁡−4+7⁢I,8+10⁢I,−6−8⁢I,−5+7⁢I,6−6⁢I,5⁢I,−10+I,1−3⁢I,−10+5⁢I
H≔−4+7⁢I8+10⁢I−6−8⁢I−5+7⁢I6−6⁢I5⁢I−10+I1−3⁢I−10+5⁢I
GIsmith⁡H
100010001797+791⁢I
A≔Matrix⁡−4−8⁢I,−1−10⁢I,2+3⁢I,−1−9⁢I,8+4⁢I,−5+10⁢I
A≔−4−8⁢I−1−10⁢I2+3⁢I−1−9⁢I8+4⁢I−5+10⁢I
B≔GIsmith⁡A,U,V
B≔100010
−1+4⁢I−1−I5−10⁢I2+3⁢I
043+30⁢I101+8⁢I0−28−29⁢I−75−21⁢I166−21⁢I89−99⁢I
LinearAlgebra:-Equal⁡U·A·V,B
true
See Also
GaussInt[GIhermite]
LinearAlgebra[HermiteForm]
LinearAlgebra[SmithForm]
Download Help Document