The shifted number system for fast linear algebra on integer matrices

The shifted number system is presented: a method for detecting and avoiding error producing carries during approximate computations with truncated expansions of rational numbers. Using the shifted number system the high-order lifting and integrality certification techniques of Storjohann 2003 for polynomial matrices are extended to the integer case. Las Vegas reductions to integer matrix multiplication are given for some problems involving integer matrices: the determinant and a solution of a linear system can be computed with about the same number of bit operations as required to multiply together two matrices having the same dimension and size of entries as the input matrix. The algorithms are space efficient.

[1]  Erich Kaltofen,et al.  On computing determinants of matrices without divisions , 1992, ISSAC '92.

[2]  Joachim von zur Gathen,et al.  Modern Computer Algebra , 1998 .

[3]  Tommy Färnqvist Number Theory Meets Cache Locality – Efficient Implementation of a Small Prime FFT for the GNU Multiple Precision Arithmetic Library , 2005 .

[4]  David Thomas,et al.  The Art in Computer Programming , 2001 .

[5]  Arnold Schönhage,et al.  Schnelle Multiplikation großer Zahlen , 1971, Computing.

[6]  Victor Y. Pan,et al.  On Rational Number Reconstruction and Approximation , 2004, SIAM J. Comput..

[7]  B. David Saunders,et al.  MATRIX RANK CERTIFICATION , 2004 .

[8]  Kenneth L. Clarkson,et al.  Safe and effective determinant evaluation , 1992, Proceedings., 33rd Annual Symposium on Foundations of Computer Science.

[9]  James Lee Hafner,et al.  Asymptotically fast triangulation of matrices over rings , 1991, SODA '90.

[10]  Oscar H. Ibarra,et al.  A Generalization of the Fast LUP Matrix Decomposition Algorithm and Applications , 1982, J. Algorithms.

[11]  J. Rosser,et al.  Approximate formulas for some functions of prime numbers , 1962 .

[12]  Donald E. Knuth The Art of Computer Programming 2 / Seminumerical Algorithms , 1971 .

[13]  Robert T. Moenck,et al.  Approximate algorithms to derive exact solutions to systems of linear equations , 1979, EUROSAM.

[14]  J. Dixon Exact solution of linear equations usingP-adic expansions , 1982 .

[15]  Jeremy R. Johnson,et al.  Efficient multiprecision floating point multiplication with optimal directional rounding , 1993, Proceedings of IEEE 11th Symposium on Computer Arithmetic.

[16]  Yuefan Deng,et al.  New trends in high performance computing , 2001, Parallel Computing.

[17]  A. Storjohann Algorithms for matrix canonical forms , 2000 .

[18]  Manuel Bronstein,et al.  Fast deterministic computation of determinants of dense matrices , 1999, ISSAC '99.

[19]  Gilles Villard,et al.  On computing the determinant and Smith form of an integer matrix , 2000, Proceedings 41st Annual Symposium on Foundations of Computer Science.

[20]  E. Kaltofen,et al.  Computing the sign or the value of the determinant of an integer matrix, a complexity survey , 2004 .

[21]  Arne Storjohann,et al.  A BLAS based C library for exact linear algebra on integer matrices , 2005, ISSAC.

[22]  Wayne Eberly,et al.  Asymptotically Efficient Algorithms for the Frobenius Form , 2002 .

[23]  Arne Storjohann,et al.  Near optimal algorithms for computing Smith normal forms of integer matrices , 1996, ISSAC '96.

[24]  V. Strassen Gaussian elimination is not optimal , 1969 .

[25]  Clifford Stein,et al.  Introduction to Algorithms, 2nd edition. , 2001 .

[26]  Mark Giesbrecht,et al.  Nearly Optimal Algorithms for Canonical Matrix Forms , 1995, SIAM J. Comput..

[27]  R. K. Shyamasundar,et al.  Introduction to algorithms , 1996 .

[28]  Arnold Schönhage,et al.  Schnelle Berechnung von Kettenbruchentwicklungen , 1971, Acta Informatica.

[29]  Mariette Yvinec,et al.  Efficient Exact Evaluation of Signs of Determinants , 1997, Symposium on Computational Geometry.

[30]  Don Coppersmith,et al.  Rectangular Matrix Multiplication Revisited , 1997, J. Complex..

[31]  Victor Y. Pan Randomized Acceleration of Fundamental Matrix Computations , 2002, STACS.

[32]  Donald E. Knuth,et al.  The art of computer programming. Vol.2: Seminumerical algorithms , 1981 .

[33]  Mark Giesbrecht,et al.  Fast computation of the Smith form of a sparse integer matrix , 2002, computational complexity.

[34]  Keith O. Geddes,et al.  Algorithms for computer algebra , 1992 .

[35]  Erich Kaltofen,et al.  Parallel algorithms for matrix normal forms , 1990 .

[36]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[37]  Michael Clausen,et al.  Algebraic complexity theory , 1997, Grundlehren der mathematischen Wissenschaften.

[38]  Don Coppersmith,et al.  Matrix multiplication via arithmetic progressions , 1987, STOC.

[39]  Erich Kaltofen An output-sensitive variant of the baby steps/giant steps determinant algorithm , 2002, ISSAC '02.

[40]  Alan M. Frieze,et al.  Greedy Algorithms for the Shortest Common Superstring That Are Asymptotically Optimal , 1998, Algorithmica.

[41]  Arne Storjohann,et al.  High-order lifting and integrality certification , 2003, J. Symb. Comput..

[42]  Arne Storjohann High-order lifting , 2002, ISSAC '02.

[43]  Jack J. Dongarra,et al.  Automated empirical optimizations of software and the ATLAS project , 2001, Parallel Comput..

[44]  Erich Kaltofen,et al.  ON THE COMPLEXITY OF COMPUTING DETERMINANTS , 2001 .

[45]  Victor Y. Pan,et al.  Computing the Determinant and the Characteristic Polynomial of a Matrix via Solving Linear Systems of Equations , 1988, Inf. Process. Lett..

[46]  Arne Storjohann,et al.  Certified dense linear system solving , 2004, J. Symb. Comput..

[47]  Victor Y. Pan,et al.  Improved algorithms for computing determinants and resultants , 2005, J. Complex..