Return to search

Deterministic Unimodularity Certification and Applications for Integer Matrices

The asymptotically fastest algorithms for many linear algebra problems on integer matrices, including solving a system of linear equations and computing the determinant, use high-order lifting. For a square nonsingular integer matrix A, high-order lifting computes B congruent to A^{-1} mod X^k and matrix R with AB = I + RX^k for non-negative integers X and k. Here, we present a deterministic method -- "double-plus-one" lifting -- to compute the high-order residue R as well as a succinct representation of B. As an application, we give a fully deterministic algorithm to certify the unimodularity of A. The cost of the algorithm is O((log n) n^{omega} M(log n + log ||A||)) bit operations, where ||A|| denotes the largest entry in absolute value, M(t) the cost of multiplying two integers bounded in bit length by t, and omega the exponent of matrix multiplication.


Unimodularity certification is then applied to give a heuristic, but certified, algorithm for computing the determinant and Hermite normal form of a square, nonsingular integer matrix. Though most effective on random matrices, a highly optimized implementation of the latter algorithm demonstrates the techniques' effectiveness across a variety of inputs: empirical running times grow as O(n^3log n). A comparison against the fastest known Hermite normal algorithms -- those available in Sage and Magma -- show our implementation is, in all cases, highly competitive, and often surpasses existing, state-of-the-art implementations.

Identiferoai:union.ndltd.org:WATERLOO/oai:uwspace.uwaterloo.ca:10012/7895
Date January 2013
CreatorsPauderis, Colton
Source SetsUniversity of Waterloo Electronic Theses Repository
LanguageEnglish
Detected LanguageEnglish
TypeThesis or Dissertation

Page generated in 0.0017 seconds