1 | initial version |
WorksForMe (on 9.3.beta3) :
sage: MR=MatrixSpace(RR,3).random_element()
sage: MR
[-0.0413379232879041 -0.383726107921675 0.402484964228335]
[ 0.0264553329794861 0.345098500636929 0.264737280303141]
[ -0.141479831307881 -0.998284842827106 0.178457190865074]
sage: MR.det()
0.0117348614307324
sage: MR^-1
[ 27.7692689578674 -28.4039106845136 -20.4930893556867]
[ -3.59408846998909 4.22386369616762 1.83995041270540]
[ 1.91007962570815 1.10972616436864 -0.350583891628722]
sage: MR*MR^-1
[ 1.00000000000000 -4.99600361081320e-16 1.11022302462516e-16]
[-2.22044604925031e-16 1.00000000000000 -8.32667268468867e-17]
[-2.77555756156289e-16 -2.77555756156289e-17 1.00000000000000]
sage: MC=MR.change_ring(CC)
sage: MC
[-0.0413379232879041 -0.383726107921675 0.402484964228335]
[ 0.0264553329794861 0.345098500636929 0.264737280303141]
[ -0.141479831307881 -0.998284842827106 0.178457190865074]
sage: MC.det()
0.0117348614307324
sage: MC^-1
[ 27.7692689578674 -28.4039106845136 -20.4930893556867]
[ -3.59408846998909 4.22386369616762 1.83995041270540]
[ 1.91007962570815 1.10972616436864 -0.350583891628722]
sage: (MC^-1)-(MR^-1)
[0.000000000000000 0.000000000000000 0.000000000000000]
[0.000000000000000 0.000000000000000 0.000000000000000]
[0.000000000000000 0.000000000000000 0.000000000000000]
Of course, that's not a proof, just an example. If you have a counter-example, I'd be glad to see it...
IMHO, Florentin is right : any deviation has probably to be attributed to imprecisions in floating point approximate computations.
HTH,