1 | initial version |
Because you matrices are not square (hence not invertible), there may be many solutions, and given each propositions, you can actually check that the wanted equality holtds. I am not sure about you actual problems, but you can have a look at the pseudoinverse
method:
sage: X = matrix(ZZ, [[5,2],[1,4],[2,3]]) ; X
[5 2]
[1 4]
[2 3]
sage: Y = X.LLL() ; Y
[ 0 0]
[ 1 0]
[ 0 -1]
sage: T = Y*X.pseudoinverse() ; T
[ 0 0 0]
[ 21/94 -51/470 -1/235]
[ 4/47 -10/47 -5/47]
You can check:
sage: T*X == Y
True
2 | No.2 Revision |
Because you matrices are not square (hence not invertible), there may be many solutions, and given each propositions, you can actually check that the wanted equality holtds. holds. I am not sure about you actual problems, but you can have a look at the pseudoinverse
method:
sage: X = matrix(ZZ, [[5,2],[1,4],[2,3]]) ; X
[5 2]
[1 4]
[2 3]
sage: Y = X.LLL() ; Y
[ 0 0]
[ 1 0]
[ 0 -1]
sage: T = Y*X.pseudoinverse() ; T
[ 0 0 0]
[ 21/94 -51/470 -1/235]
[ 4/47 -10/47 -5/47]
You can check:
sage: T*X == Y
True