65.127 PutStandardForm

PutStandardForm( M )
PutStandardForm( M, idleft )

PutStandardForm puts a matrix M in standard form, and returns the permutation needed to do so. idleft is a boolean that sets the position of the identity matrix in M. If idleft is set to true, the identity matrix is put in the left side of M. Otherwise, it is put at the right side. The default for idleft is true.

The function BaseMat also returns a similar standard form, but does not apply column permutations. The rows of the matrix still span the same vector space after BaseMat, but after calling PutStandardForm, this is not necessarily true.

    gap> M := Z(2)*[[1,0,0,1],[0,0,1,1]];; PrintArray(M);
    [ [  Z(2)^0,  0*Z(2),  0*Z(2),  Z(2)^0 ],
      [  0*Z(2),  0*Z(2),  Z(2)^0,  Z(2)^0 ] ]
    gap> PutStandardForm(M);                   # identity at the left side
    (2,3)
    gap> PrintArray(M);
    [ [  Z(2)^0,  0*Z(2),  0*Z(2),  Z(2)^0 ],
      [  0*Z(2),  Z(2)^0,  0*Z(2),  Z(2)^0 ] ]
    gap> PutStandardForm(M, false);            # identity at the right side
    (1,4,3)
    gap> PrintArray(M);
    [ [  0*Z(2),  Z(2)^0,  Z(2)^0,  0*Z(2) ],
      [  0*Z(2),  Z(2)^0,  0*Z(2),  Z(2)^0 ] ] 

Previous Up Top Next
Index

GAP 3.4.4
April 1997