SMITHEX\_INT _ _ _ _ _ _ _ _ _ _ _ _ operator
The operator smithex_int performs the same task as smithex but on matrices containing only integer entries. Namely, smithex_int returns {S,P,P^-1} where S is the smith normal form of the input matrix (A say), and P*S*P^-1 = A.
<matrix> :- a rectangular matrix of integer entries.
a := mat((9,-36,30),(-36,192,-180),(30,-180,180));
[ 9 -36 30 ]
[ ]
a := [-36 192 -180]
[ ]
[30 -180 180 ]
smithex_int(a);
[3 0 0 ] [-17 -5 -4 ] [1 -24 30 ]
[ ] [ ] [ ]
{ [0 12 0 ], [64 19 15 ], [-1 25 -30] }
[ ] [ ] [ ]
[0 0 60] [-50 -15 -12] [0 -1 1 ]