Abstract

Hensel’s symbolic lifting is a highly effective method for the solution of a general or structured (e.g. Toeplitz or Hankel) linear system of equations with integer or rational coefficients of bounded length. It can handle ill conditioned inputs, for which numerical methods become costly. Lifting amounts to recursive multiplications by vectors of the input coefficient matrices and its precomputed inverse modulo a fixed integer s . Such multiplications only involve small numbers of data movements and arithmetic operations with bounded precision. The known methods for precomputation of the inverse are more costly, however; in particular they involve more data movements. As our remedy for this bottleneck stage we create an auxiliary matrix sharing its inverse modulo s with the input matrix, and we readily compute this inverse by applying numerical iterative refinement, which is a numerical counterpart of lifting. In the case of general unstructured as well as Toeplitz, Hankel, and other popular structured inputs our hybrid algorithms involve a small number of data movements and optimal number of Boolean (that is bitwise) operations (up to a logarithmic factor). We extend the algorithms to nearly optimal computation of polynomial greatest common divisors (gcds), least common multiples (lcms) and Padé approximations, as well as the Berlekamp–Massey reconstruction of linear recurrences. We also cover Newton’s lifting for matrix inversion, specialize it to the case of structured input, and combine it with Hensel’s to enhance the overall efficiency. Our initialization techniques work for Newton’s lifting as well. Furthermore we extend all our lifting algorithms to allow their initialization modulo powers of two, thus implementing them in the binary base.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call