Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

For your matrix you have:

sage: A.parent()
Full MatrixSpace of 4 by 5 dense matrices over Integer Ring

so it's a matrix over the integers. There "echelon form" means "Hermite normal form", which is what you got (the transition matrix is an integer matrix with an inverse that is also an integer matrix in that case. That's why the row [0 0 0 4 4] doesn't get scaled)

If you're interested in reduced row echelon form over the rationals, you can get that:

sage: B=A.change_ring(QQ)
sage: B.echelon_form()
[1 0 3 0 1]
[0 1 1 0 1]
[0 0 0 1 1]
[0 0 0 0 0]