BaseMat( mat )
BaseMat
returns a standard base for the vector space spanned by the
rows of the matrix mat. The standard base is in upper triangular form.
That means that the first nonzero vector in each row is one and lies
further to the right than the first nonzero entry in the previous row.
Furthermore, above the first nonzero entry in each row all entries are
zero.
gap> BaseMat( [ [ 0, -3, -1 ], [ -3, 0, -1 ], [ 2, -2, 0 ] ] ); [ [ 1, 0, 1/3 ], [ 0, 1, 1/3 ] ]
Note that for large rational matrices BaseMat
may take very long,
because the entries may become very large during the Gaussian
elimination, even if the final result contains only small integers.
GAP 3.4.4