Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
| Download

All published worksheets from http://sagenb.org

Views: 168742
Image: ubuntu2004

The Hilbert Matrix

The Hilbert matrix is a very ill-conditioned matrix.  See http://en.wikipedia.org/wiki/Hilbert_matrix for some background information.

def hilbert_matrix(n): return matrix([[1/i for i in [j..j+(n-1)]] for j in [1..n]])

Exact Arithmetic

First, let's define a 12×1212\times 12 Hilbert matrix.  We will be using exact arithmetic first.

A=hilbert_matrix(12) A
[ 1 1/2 1/3 1/4 1/5 1/6 1/7 1/8 1/9 1/10 1/11 1/12] [ 1/2 1/3 1/4 1/5 1/6 1/7 1/8 1/9 1/10 1/11 1/12 1/13] [ 1/3 1/4 1/5 1/6 1/7 1/8 1/9 1/10 1/11 1/12 1/13 1/14] [ 1/4 1/5 1/6 1/7 1/8 1/9 1/10 1/11 1/12 1/13 1/14 1/15] [ 1/5 1/6 1/7 1/8 1/9 1/10 1/11 1/12 1/13 1/14 1/15 1/16] [ 1/6 1/7 1/8 1/9 1/10 1/11 1/12 1/13 1/14 1/15 1/16 1/17] [ 1/7 1/8 1/9 1/10 1/11 1/12 1/13 1/14 1/15 1/16 1/17 1/18] [ 1/8 1/9 1/10 1/11 1/12 1/13 1/14 1/15 1/16 1/17 1/18 1/19] [ 1/9 1/10 1/11 1/12 1/13 1/14 1/15 1/16 1/17 1/18 1/19 1/20] [1/10 1/11 1/12 1/13 1/14 1/15 1/16 1/17 1/18 1/19 1/20 1/21] [1/11 1/12 1/13 1/14 1/15 1/16 1/17 1/18 1/19 1/20 1/21 1/22] [1/12 1/13 1/14 1/15 1/16 1/17 1/18 1/19 1/20 1/21 1/22 1/23]
B=A.inverse() B
[ 144 -10296 240240 -2702700 17297280 -68612544 176432256 -299304720 332560800 -232792560 93117024 -16224936] [ -10296 981552 -25765740 309188880 -2061259200 8409937536 -22076086032 38044955520 -42800574960 30263032800 -12206089896 2141691552] [ 240240 -25765740 721440720 -9018009000 61837776000 -257554337040 686811565440 -1198416098880 1361836476000 -970938969000 394350596640 -69604975440] [ -2702700 309188880 -9018009000 115945830000 -811620810000 3434057827200 -9271956133440 16342037712000 -18725251545000 13443770340000 -5492740453200 974469656160] [ 17297280 -2061259200 61837776000 -811620810000 5771525760000 -24725216355840 67432408243200 -119841609888000 138278780640000 -99868008240000 41012462050560 -7308522421200] [ -68612544 8409937536 -257554337040 3434057827200 -24725216355840 106992754412544 -294230074634496 526565596677120 -611192210428800 443680271274240 -183018111900624 32742180446976] [ 176432256 -22076086032 686811565440 -9271956133440 67432408243200 -294230074634496 814790975910912 -1466861305029120 1711338189200640 -1247850762958800 516757021837056 -92769511266432] [ -299304720 38044955520 -1198416098880 16342037712000 -119841609888000 526565596677120 -1466861305029120 2654320456719360 -3110531785218000 2276990587872000 -946216088737920 170392979877120] [ 332560800 -42800574960 1361836476000 -18725251545000 138278780640000 -611192210428800 1711338189200640 -3110531785218000 3659449159080000 -2688113888460000 1120519052452800 -202341663604080] [ -232792560 30263032800 -970938969000 13443770340000 -99868008240000 443680271274240 -1247850762958800 2276990587872000 -2688113888460000 1980715496760000 -827939077645680 149882713780800] [ 93117024 -12206089896 394350596640 -5492740453200 41012462050560 -183018111900624 516757021837056 -946216088737920 1120519052452800 -827939077645680 346945899203904 -62950739787936] [ -16224936 2141691552 -69604975440 974469656160 -7308522421200 32742180446976 -92769511266432 170392979877120 -202341663604080 149882713780800 -62950739787936 11445589052352]
A*B
[1 0 0 0 0 0 0 0 0 0 0 0] [0 1 0 0 0 0 0 0 0 0 0 0] [0 0 1 0 0 0 0 0 0 0 0 0] [0 0 0 1 0 0 0 0 0 0 0 0] [0 0 0 0 1 0 0 0 0 0 0 0] [0 0 0 0 0 1 0 0 0 0 0 0] [0 0 0 0 0 0 1 0 0 0 0 0] [0 0 0 0 0 0 0 1 0 0 0 0] [0 0 0 0 0 0 0 0 1 0 0 0] [0 0 0 0 0 0 0 0 0 1 0 0] [0 0 0 0 0 0 0 0 0 0 1 0] [0 0 0 0 0 0 0 0 0 0 0 1]

As expected, the matrix times its inverse is the identity matrix.  However, this happens because we are dealing with exact arithmetic, with no rounding.  In a sense, we have infinite precision here.

Matlab-like precision

Now let's try floating point precision, which is what Matlab uses.  We will first change AA to have entries over "RealField(53)", which is the precision that is used for double-precision floating point numbers.

AA=A.change_ring(RealField(53)) AA
[ 1.0 0.5 0.333333333333 0.25 0.2 0.166666666667 0.142857142857 0.125 0.111111111111 0.1 0.0909090909091 0.0833333333333] [ 0.5 0.333333333333 0.25 0.2 0.166666666667 0.142857142857 0.125 0.111111111111 0.1 0.0909090909091 0.0833333333333 0.0769230769231] [ 0.333333333333 0.25 0.2 0.166666666667 0.142857142857 0.125 0.111111111111 0.1 0.0909090909091 0.0833333333333 0.0769230769231 0.0714285714286] [ 0.25 0.2 0.166666666667 0.142857142857 0.125 0.111111111111 0.1 0.0909090909091 0.0833333333333 0.0769230769231 0.0714285714286 0.0666666666667] [ 0.2 0.166666666667 0.142857142857 0.125 0.111111111111 0.1 0.0909090909091 0.0833333333333 0.0769230769231 0.0714285714286 0.0666666666667 0.0625] [ 0.166666666667 0.142857142857 0.125 0.111111111111 0.1 0.0909090909091 0.0833333333333 0.0769230769231 0.0714285714286 0.0666666666667 0.0625 0.0588235294118] [ 0.142857142857 0.125 0.111111111111 0.1 0.0909090909091 0.0833333333333 0.0769230769231 0.0714285714286 0.0666666666667 0.0625 0.0588235294118 0.0555555555556] [ 0.125 0.111111111111 0.1 0.0909090909091 0.0833333333333 0.0769230769231 0.0714285714286 0.0666666666667 0.0625 0.0588235294118 0.0555555555556 0.0526315789474] [ 0.111111111111 0.1 0.0909090909091 0.0833333333333 0.0769230769231 0.0714285714286 0.0666666666667 0.0625 0.0588235294118 0.0555555555556 0.0526315789474 0.05] [ 0.1 0.0909090909091 0.0833333333333 0.0769230769231 0.0714285714286 0.0666666666667 0.0625 0.0588235294118 0.0555555555556 0.0526315789474 0.05 0.047619047619] [0.0909090909091 0.0833333333333 0.0769230769231 0.0714285714286 0.0666666666667 0.0625 0.0588235294118 0.0555555555556 0.0526315789474 0.05 0.047619047619 0.0454545454545] [0.0833333333333 0.0769230769231 0.0714285714286 0.0666666666667 0.0625 0.0588235294118 0.0555555555556 0.0526315789474 0.05 0.047619047619 0.0454545454545 0.0434782608696]
AA.inverse()
[ 143.686243981 -10252.7890606 238794.895111 -2682053.1897 17140087.2871 -67900229.9453 174395975.969 -295538021.062 328062136.75 -229444509.469 91705338.3438 -15967422.3164] [ -10253.2077644 975685.602832 -25570171.4063 306401210.003 -2040073355.1 8314070026.02 -21802345241.7 37539072032.4 -42196868675.8 29814041839.6 -12016887208.2 2107195778.06] [ 238817.691412 -25571394.1332 714976556.894 -8926022494.0 61139596835.9 -254398265903.0 677807218052.0 -1.18178724391e+12 1.34200368799e+12 -956196212330.0 388140752149.0 -68473212807.9] [ -2682462.31484 306430404.244 -8926417209.1 114644121410.0 -801750541152.0 3.38947486845e+12 -9.14484097927e+12 1.61074110987e+13 -1.84455438826e+13 1.32359284979e+13 -5.40522373137e+12 958524095211.0] [ 17143640.9423 -2040358030.31 61144718161.7 -801780921806.0 5.69697223635e+12 -2.43886741655e+13 6.64733414133e+13 -1.18072126057e+14 1.36170056796e+14 -9.83015585349e+13 4.03530448287e+13 -7.1884041354e+12] [ -67917747.9824 8315563901.33 -254428441069.0 3.38971309069e+12 -2.43894424935e+13 1.05477797199e+14 -2.89914567712e+14 5.18606175958e+14 -6.0170956861e+14 4.36637902127e+14 -1.80054170456e+14 3.22023752303e+13] [ 174448996.553 -21807046073.0 677908313469.0 -9.14573724295e+12 6.64771889929e+13 -2.89922070967e+14 8.02523364437e+14 -1.44424160735e+15 1.68439613361e+15 -1.22784610891e+15 5.08339105408e+14 -9.12366444452e+13] [ -295640125.271 37548366511.1 -1.18199509142e+12 1.61093732647e+13 -1.1808158678e+14 5.18630736418e+14 -1.44427220894e+15 2.61267937748e+15 -3.06094360624e+15 2.24017741773e+15 -9.30727512069e+14 1.67572947041e+14] [ 328187688.156 -42208515686.6 1.34227113795e+12 -1.8448169654e+13 1.36183539974e+14 -6.01748887312e+14 1.68446135825e+15 -3.06099674739e+15 3.60047067861e+15 -2.64433606141e+15 1.10210257392e+15 -1.98988920476e+14] [ -229539979.419 29823024324.1 -956406440332.0 1.32380481712e+13 -9.83128794922e+13 4.36673065477e+14 -1.22791164011e+15 2.24024850961e+15 -2.64437378942e+15 1.94825280195e+15 -8.14284177658e+14 1.47397064914e+14] [ 91746244.7224 -12020778112.6 388233122031.0 -5.40617308027e+12 4.03582526353e+13 -1.80070996804e+14 5.08372509111e+14 -9.30768227194e+14 1.10213134746e+15 -8.14293764665e+14 3.41206782306e+14 -6.19061177496e+13] [ -15974975.1911 2107920390.36 -68490605218.1 958705432716.0 -7.18941823405e+12 3.2205740927e+13 -9.1243595497e+13 1.67581973119e+14 -1.98996087918e+14 1.47400245324e+14 -6.19067220057e+13 1.12555734689e+13]
AA.inverse()*AA
[ 0.973938757554 -0.0232936348766 -0.0210496054497 -0.019195421366 -0.0176386963576 -0.0163137675263 -0.015172814019 -0.0141802217113 -0.0133089586161 -0.0125381575199 -0.011851453688 -0.0112358375918] [ 0.00837197899818 1.00769168139 0.00711965560913 0.00662186741829 0.00618648529053 0.00580243766308 0.00546242296696 0.00515815615654 0.00488604605198 0.00464007258415 0.00441752374172 0.00421570241451] [-0.00701332092285 -0.00584125518799 0.99450969696 -0.00522994995117 -0.0050048828125 -0.00476312637329 -0.00458812713623 -0.00439834594727 -0.00422716140747 -0.00404691696167 -0.0039119720459 -0.00377225875854] [ -0.0304412841797 -0.0370178222656 -0.034423828125 0.968803405762 -0.02783203125 -0.0256195068359 -0.023567199707 -0.0216674804688 -0.0199356079102 -0.0187530517578 -0.0173263549805 -0.0162734985352] [ 0.10888671875 0.176635742188 0.167114257812 0.150817871094 1.13793945312 0.126647949219 0.115112304688 0.104553222656 0.0960083007812 0.0908203125 0.083740234375 0.0782470703125] [ -0.41015625 -0.71337890625 -0.68115234375 -0.6171875 -0.55419921875 0.4892578125 -0.46630859375 -0.423828125 -0.394775390625 -0.369384765625 -0.341796875 -0.319091796875] [ 1.12109375 1.9521484375 1.8857421875 1.701171875 1.5478515625 1.4111328125 2.2841796875 1.1796875 1.0830078125 1.0302734375 0.95751953125 0.88525390625] [ -1.865234375 -3.44921875 -3.361328125 -3.005859375 -2.75390625 -2.49609375 -2.267578125 -1.08203125 -1.9287109375 -1.7783203125 -1.6728515625 -1.5791015625] [ 2.3828125 4.20703125 4.0 3.615234375 3.306640625 2.990234375 2.73828125 2.501953125 3.310546875 2.21875 2.02734375 1.90234375] [ -1.76953125 -3.1171875 -2.986328125 -2.7109375 -2.435546875 -2.2392578125 -2.048828125 -1.8720703125 -1.7333984375 -0.630859375 -1.5078125 -1.412109375] [ 0.7412109375 1.298828125 1.2646484375 1.12548828125 1.0224609375 0.935546875 0.857421875 0.78369140625 0.71728515625 0.68115234375 1.62744140625 0.58251953125] [ -0.123046875 -0.226196289062 -0.217651367188 -0.196533203125 -0.17919921875 -0.160278320312 -0.1474609375 -0.134399414062 -0.12353515625 -0.116821289062 -0.106811523438 0.897705078125]

Notice that the matrix times its inverse is not anything like the identity matrix.  The roundoff error was magnified so that the inverse really doesn't mean much.

Higher Precision Floating Point

In Sage (and other systems, but not Matlab), we can compute in higher precision than double-precision.  Here, we do the computations in 100-bit precision, instead of double-precision (53-bit precision).

AAA=A.change_ring(RealField(100)) AAA
[ 1.0000000000000000000000000000 0.50000000000000000000000000000 0.33333333333333333333333333333 0.25000000000000000000000000000 0.20000000000000000000000000000 0.16666666666666666666666666667 0.14285714285714285714285714286 0.12500000000000000000000000000 0.11111111111111111111111111111 0.10000000000000000000000000000 0.090909090909090909090909090909 0.083333333333333333333333333333] [ 0.50000000000000000000000000000 0.33333333333333333333333333333 0.25000000000000000000000000000 0.20000000000000000000000000000 0.16666666666666666666666666667 0.14285714285714285714285714286 0.12500000000000000000000000000 0.11111111111111111111111111111 0.10000000000000000000000000000 0.090909090909090909090909090909 0.083333333333333333333333333333 0.076923076923076923076923076923] [ 0.33333333333333333333333333333 0.25000000000000000000000000000 0.20000000000000000000000000000 0.16666666666666666666666666667 0.14285714285714285714285714286 0.12500000000000000000000000000 0.11111111111111111111111111111 0.10000000000000000000000000000 0.090909090909090909090909090909 0.083333333333333333333333333333 0.076923076923076923076923076923 0.071428571428571428571428571429] [ 0.25000000000000000000000000000 0.20000000000000000000000000000 0.16666666666666666666666666667 0.14285714285714285714285714286 0.12500000000000000000000000000 0.11111111111111111111111111111 0.10000000000000000000000000000 0.090909090909090909090909090909 0.083333333333333333333333333333 0.076923076923076923076923076923 0.071428571428571428571428571429 0.066666666666666666666666666667] [ 0.20000000000000000000000000000 0.16666666666666666666666666667 0.14285714285714285714285714286 0.12500000000000000000000000000 0.11111111111111111111111111111 0.10000000000000000000000000000 0.090909090909090909090909090909 0.083333333333333333333333333333 0.076923076923076923076923076923 0.071428571428571428571428571429 0.066666666666666666666666666667 0.062500000000000000000000000000] [ 0.16666666666666666666666666667 0.14285714285714285714285714286 0.12500000000000000000000000000 0.11111111111111111111111111111 0.10000000000000000000000000000 0.090909090909090909090909090909 0.083333333333333333333333333333 0.076923076923076923076923076923 0.071428571428571428571428571429 0.066666666666666666666666666667 0.062500000000000000000000000000 0.058823529411764705882352941176] [ 0.14285714285714285714285714286 0.12500000000000000000000000000 0.11111111111111111111111111111 0.10000000000000000000000000000 0.090909090909090909090909090909 0.083333333333333333333333333333 0.076923076923076923076923076923 0.071428571428571428571428571429 0.066666666666666666666666666667 0.062500000000000000000000000000 0.058823529411764705882352941176 0.055555555555555555555555555556] [ 0.12500000000000000000000000000 0.11111111111111111111111111111 0.10000000000000000000000000000 0.090909090909090909090909090909 0.083333333333333333333333333333 0.076923076923076923076923076923 0.071428571428571428571428571429 0.066666666666666666666666666667 0.062500000000000000000000000000 0.058823529411764705882352941176 0.055555555555555555555555555556 0.052631578947368421052631578947] [ 0.11111111111111111111111111111 0.10000000000000000000000000000 0.090909090909090909090909090909 0.083333333333333333333333333333 0.076923076923076923076923076923 0.071428571428571428571428571429 0.066666666666666666666666666667 0.062500000000000000000000000000 0.058823529411764705882352941176 0.055555555555555555555555555556 0.052631578947368421052631578947 0.050000000000000000000000000000] [ 0.10000000000000000000000000000 0.090909090909090909090909090909 0.083333333333333333333333333333 0.076923076923076923076923076923 0.071428571428571428571428571429 0.066666666666666666666666666667 0.062500000000000000000000000000 0.058823529411764705882352941176 0.055555555555555555555555555556 0.052631578947368421052631578947 0.050000000000000000000000000000 0.047619047619047619047619047619] [0.090909090909090909090909090909 0.083333333333333333333333333333 0.076923076923076923076923076923 0.071428571428571428571428571429 0.066666666666666666666666666667 0.062500000000000000000000000000 0.058823529411764705882352941176 0.055555555555555555555555555556 0.052631578947368421052631578947 0.050000000000000000000000000000 0.047619047619047619047619047619 0.045454545454545454545454545455] [0.083333333333333333333333333333 0.076923076923076923076923076923 0.071428571428571428571428571429 0.066666666666666666666666666667 0.062500000000000000000000000000 0.058823529411764705882352941176 0.055555555555555555555555555556 0.052631578947368421052631578947 0.050000000000000000000000000000 0.047619047619047619047619047619 0.045454545454545454545454545455 0.043478260869565217391304347826]
BBB=AAA.inverse() BBB
[ 143.99999999999998385926621383 -10295.999999999997945153802886 240239.99999999993517821134306 -2.7026999999999991148954428276e6 1.7297279999999993501492904679e7 -6.8612543999999971416032165103e7 1.7643225599999992029691472385e8 -2.9930471999999985565121483258e8 3.3256079999999983071010010636e8 -2.3279255999999987598852216992e8 9.3117023999999948433587717326e7 -1.6224935999999990708636750502e7] [ -10295.999999999997939572218793 981551.99999999973778979807969 -2.5765739999999991730848146562e7 3.0918887999999988711708833034e8 -2.0612591999999991713737482600e9 8.4099375359999963558799759637e9 -2.2076086031999989840297104751e10 3.8044955519999981602312941953e10 -4.2800574959999978425921027358e10 3.0263032799999984197714467970e10 -1.2206089895999993429680590175e10 2.1416915519999988162375938171e9] [ 240239.99999999993486838354859 -2.5765739999999991713828299917e7 7.2144071999999973874667688827e8 -9.0180089999999964343016151984e9 6.1837775999999973829937365600e10 -2.5755433703999988492546741311e11 6.8681156543999967921320423437e11 -1.1984160988799994191628527984e12 1.3618364759999993189412403907e12 -9.7093896899999950118684247044e11 3.9435059663999979261663390284e11 -6.9604975439999962638475164754e10] [ -2.7026999999999991092270228462e6 3.0918887999999988670177963828e8 -9.0180089999999964285329067647e9 1.1594582999999995126279658026e11 -8.1162080999999964234570693172e11 3.4340578271999984275046213718e12 -9.2719561334399956168633662186e12 1.6342037711999992064271925208e13 -1.8725251544999990695665548615e13 1.3443770339999993185866383639e13 -5.4927404531999971671619565845e12 9.7446965615999948967118944279e11] [ 1.7297279999999993451332371433e7 -2.0612591999999991672380928173e9 6.1837775999999973753325380974e10 -8.1162080999999964187800408919e11 5.7715257599999973722372244964e12 -2.4725216355839988447612993401e13 6.7432408243199967801716011740e13 -1.1984160988799994170860669472e14 1.3827878063999993165974001271e14 -9.9868008239999949952928044875e13 4.1012462050559979194936733187e13 -7.3085224211999962521793627173e12] [ -6.8612543999999971164330333414e7 8.4099375359999963337385796804e9 -2.5755433703999988446393330242e11 3.4340578271999984237471352321e12 -2.4725216355839988435130538691e13 1.0699275441254394916156451794e14 -2.9423007463449585831499669841e14 5.2656559667711974351015689526e14 -6.1119221042879969930924157431e14 4.4368027127423977980754558780e14 -1.8301811190062390846751328252e14 3.2742180446975983511949880369e13] [ 1.7643225599999991952217810648e8 -2.2076086031999989769290657463e10 6.8681156543999967763410725254e11 -9.2719561334399956023980754571e12 6.7432408243199967737634706702e13 -2.9423007463449585818623487306e14 8.1479097591091160479267485530e14 -1.4668613050291192845991081256e15 1.7113381892006391613509070994e15 -1.2478507629587993858905982913e15 5.1675702183705574472779089650e14 -9.2769511266431954018398358455e13] [ -2.9930471999999985413539717231e8 3.8044955519999981459386847269e10 -1.1984160988799994158513440941e12 1.6342037711999992031909775523e13 -1.1984160988799994154730091381e14 5.2656559667711974307794843329e14 -1.4668613050291192840442128615e15 2.6543204567193587040394155448e15 -3.1105317852179984808312148486e15 2.2769905878719988876105893420e15 -9.4621608873791953761728303775e14 1.7039297987711991671429658524e14] [ 3.3256079999999982881814724218e8 -4.2800574959999978243780096103e10 1.3618364759999993145999050528e12 -1.8725251544999990651465655736e13 1.3827878063999993142471587569e14 -6.1119221042879969860072188484e14 1.7113381892006391601379463594e15 -3.1105317852179984798130740340e15 3.6594491590799982180450687305e15 -2.6881138884599986952277725391e15 1.1205190524527994576645104604e15 -2.0234166360407990231527727661e14] [ -2.3279255999999987452952718909e8 3.0263032799999984055002347610e10 -9.7093896899999949771394580635e11 1.3443770339999993149493636694e13 -9.9868008239999949751443829953e13 4.4368027127423977915958533961e14 -1.2478507629587993846425537079e15 2.2769905878719988862137052754e15 -2.6881138884599986944642403598e15 1.9807154967599990440934742576e15 -8.2793907764567960268162252724e14 1.4988271378079992843705118858e14] [ 9.3117023999999947800140063598e7 -1.2206089895999993366935933124e10 3.9435059663999979106531218043e11 -5.4927404531999971505741906404e12 4.1012462050559979100415831889e13 -1.8301811190062390815084884097e14 5.1675702183705574407715086410e14 -9.4621608873791953679796787540e14 1.1205190524527994570673636522e15 -8.2793907764567960247676739947e14 3.4694589920390383477462057293e14 -6.2950739787935970241003788991e13] [ -1.6224935999999990590217501335e7 2.1416915519999988043877834552e9 -6.9604975439999962341799916187e10 9.7446965615999948644827029129e11 -7.3085224211999962334302365208e12 3.2742180446975983447337017503e13 -9.2769511266431953880099897217e13 1.7039297987711991652852421400e14 -2.0234166360407990216294712756e14 1.4988271378079992836737087401e14 -6.2950739787935970227377951789e13 1.1445589052351994637696534530e13]
AAA*BBB
[ 0.99999999999999999999875261164 1.5881867761018131357531046888e-19 -4.7840420860922883150578854838e-18 6.7762635780344027125465800054e-17 -5.2388648974499574251240119338e-16 2.4216739724636227037990465760e-15 -6.4601102245376296195900067687e-15 1.1990408665951690636575222015e-14 -1.4474532683550478395773097873e-14 1.0436096431476471479982137680e-14 -4.1841530240560587117215618491e-15 7.7281930854766756056051235646e-16] [-1.0819522412193601987318025692e-21 1.0000000000000000001374310957 -4.3639137442541553468799975235e-18 5.8546917314217239436402451247e-17 -4.5536491244391186228313017637e-16 2.1302404284995191119378432631e-15 -5.5788706987414116156287491322e-15 1.0477729794899914850248023868e-14 -1.2975731600306517066201195121e-14 9.1315843775419125449843704700e-15 -3.7053693446864599536638706923e-15 6.5572547391923308168770745397e-16] [-1.0058516248644816526436329696e-21 1.2176098616780567374107135947e-19 0.99999999999999999612397723336 5.2909066017292616379563696682e-17 -4.1806835771041050975327380002e-16 1.8977874827186269612866453826e-15 -4.8502868388311526359757408500e-15 9.3119956190435004828032106161e-15 -1.1560197243909442477161064744e-14 8.2711615334574162261560559273e-15 -3.2682190287403045658720657229e-15 6.1409211049578971142182126641e-16] [-8.9335506155726988886112138744e-22 1.0905549195899116865504652196e-19 -3.4626706883755797861113023828e-18 1.0000000000000000486806775446 -3.7079714299004251643054885790e-16 1.6688039838896884248242713511e-15 -4.5033421436357912170933559537e-15 8.6736173798840354720596224070e-15 -1.0116907311896738974610343575e-14 7.7160500211448379559442400932e-15 -2.9837243786801082023885101080e-15 5.2995802191091456734284292907e-16] [-8.0650109723920198299962347477e-22 9.5714723039735938314720442577e-20 -3.1916201452542036776094391826e-18 4.1037052228576342827182088513e-17 0.99999999999999968167824215826 1.4589024432964947664004284889e-15 -4.1355807667287081130780279636e-15 7.6327832942979512154124677181e-15 -8.6042284408449631882831454277e-15 6.5503158452884235884994268417e-15 -2.5604518505417672713520005345e-15 4.9092674370143640771857462823e-16] [-7.4694409313538399040888204894e-22 9.4973569210888425518035660389e-20 -2.8833001524536383541885697923e-18 3.9248118643975260511069791391e-17 -3.1398494915180208408855833113e-16 1.0000000000000014415552085367 -3.9343528435153984901262447238e-15 7.5217609918354355613701045513e-15 -8.3821838359199318801984190941e-15 6.3282712403633922804147005081e-15 -2.5049406993105094443308189511e-15 4.7444687067965674032166134566e-16] [-6.9235017270688416386736907526e-22 8.6820877093565784754503056320e-20 -2.6427427954334170578931662021e-18 3.5182360497154618883541843388e-17 -2.8883145875013838121958542615e-16 1.3357370765021414626971818507e-15 0.99999999999999659300309318155 6.5086824818649802182335406542e-15 -7.8825834748386114370077848434e-15 5.9188765000328658061334863305e-15 -2.3141211169530606639455072582e-15 4.1806835771041050975327380002e-16] [-6.4850960024157369709918441458e-22 7.8350547621022781363819831313e-20 -2.5512632371299526212737873720e-18 3.3827107781547738341032527387e-17 -2.7105054312137610850186320022e-16 1.2594092435591619505430571735e-15 -3.2890357104520262510050088167e-15 1.0000000000000062727600891321 -7.2719608112947753397747874260e-15 5.4956039718945248750969767570e-15 -2.1510571102112407970707863569e-15 3.9551695252271201752591878176e-16] [-5.9639722165073295358228566698e-22 7.5385932305632730177080702560e-20 -2.4394548880923849765167688020e-18 3.3013956152183610015526937786e-17 -2.5023386140965442336892010644e-16 1.2195106036116953873715829104e-15 -3.1016855750465310848085209727e-15 5.9952043329758453182876110077e-15 0.99999999999999279742812774430 5.1625370645069779129698872566e-15 -2.0816681711721685132943093777e-15 3.6949610038305991110973991454e-16] [-5.7158180327414212333614340622e-22 7.1891921398208741278423872245e-20 -2.1209704999247680490270795417e-18 3.0628711372715500260710541625e-17 -2.3678975447083416838722769171e-16 1.0564465968698755204968620092e-15 -2.8657631823136853199684992433e-15 5.5025428657984321034746244550e-15 -6.4115379672102790209464728832e-15 1.0000000000000046837533851374 -1.8665624601510444335872307420e-15 3.4737837606435562065598787740e-16] [-5.2774123080883165656795874554e-22 6.6597965477869364159246856616e-20 -2.0261028098322864110514274216e-18 2.7105054312137610850186320022e-17 -2.1857515797307769389590248466e-16 1.0078743395425249218533281237e-15 -2.7096380694757726814714260399e-15 5.1139648071796273143263533711e-15 -6.0507154842071031453087925911e-15 4.4408920985006261616945266724e-15 0.99999999999999825139873621538 3.0531133177191804861649870872e-16] [-5.0954325733266504772078775432e-22 6.1409888675936774582453381299e-20 -1.9312351197398047730757753015e-18 2.6888213877640509963384829462e-17 -2.1206994493816466729185776785e-16 9.5583263526322070902097038925e-16 -2.5882074261573961848625913262e-15 4.8572257327350598643533885479e-15 -5.7592819402429995534475892782e-15 4.2951753265185743657639250159e-15 -1.6861512186494564957683905959e-15 1.0000000000000003040102891649]

While we don't quite get the identity matrix exactly, we get something that is very, very close to the identity matrix.  The diagonal entries are almost one, and the off-diagonal entries are almost zero.