[back] [prev] [next] [index] [root]

 


MatHermiteRowMod

Computes the modular row Hermite normal form of an integer matrix.

Syntax:

H := MatHermiteRowMod(k, M);

matrix
  H  
integer
  k  
matrix
  M  

Description:

Let M \in {\Bbb Z}^{m \times n}. The MatHermiteRowMod routine computes the row Hermite normal form of the matrix \left(\begin{array}{c} M k cdot I_n \end{array}right) \in {\Bbb Z}^{(m+n)\times n} and returns the upper m rows of the Hermite Normal form.


Example:

Compute the row Hermite normal form of \left(\begin{array}{ccc}3 & 7 & 10 20 & 25 & 40 \end{array}right) with respect to the modulus 5.

kash> M := Mat(Z,[[3,7,10],[20,25,40]]);
[ 3  7 10]
[20 25 40]
kash> MatHermiteRowMod(5,M);
> [1 4 0]
[0 5 0]
[0 0 5]


<- back[back] [prev] [next] [index] [root]