Inverse of Hilbert matrix


H = invhilb(n)


H = invhilb(n) generates the exact inverse of the exact Hilbert matrix for n less than about 15. For larger n, invhilb(n) generates an approximation to the inverse Hilbert matrix.


The exact inverse of the exact Hilbert matrix is a matrix whose elements are large integers. These integers may be represented as floating-point numbers without roundoff error as long as the order of the matrix, n, is less than 15.

Comparing invhilb(n) with inv(hilb(n)) involves the effects of two or three sets of roundoff errors:

  • The errors caused by representing hilb(n)

  • The errors in the matrix inversion process

  • The errors, if any, in representing invhilb(n)

It turns out that the first of these, which involves representing fractions like 1/3 and 1/5 in floating-point, is the most significant.


invhilb(4) is

     16    -120     240    -140
   -120    1200   -2700    1680
    240   -2700    6480   -4200
   -140    1680   -4200    2800


[1] Forsythe, G. E. and C. B. Moler, Computer Solution of Linear Algebraic Systems, Prentice-Hall, 1967, Chapter 19.

See Also

Introduced before R2006a

Was this topic helpful?