A Modular Algorithm for Computing the Characteristic Polynomial of an Integer Matrix in Maple (original) (raw)

Strongly Connected Graph Components and Computing Characteristic Polynomials of Integer Matrices in Maple

Let A be an n × n matrix of integers. We present details of our Maple implemen-tation of a simple modular method for computing the characteristic polynomial of A. We consider several different representations for the computation modulo primes, in particular, the use of double precision floats. The algorithm used in Maple releases 7–10 is the Berkowitz algorithm. We present some timings comparing the two algorithms on a sequence of matrices arising from an application in combinatorics of Jocelyn Quaintance. These matrices have a hidden block structure. Once identified, we can further reduce the computing time dramati-cally. This work has been incorporated into Maple 11's LinearAlgebra package.

Efficient computation of the characteristic polynomial

2005

This article deals with the computation of the characteristic polynomial of dense matrices over small finite fields and over the integers. We first present two algorithms for the finite fields: one is based on Krylov iterates and Gaussian elimination. We compare it to an improvement of the second algorithm of Keller-Gehrig. Then we show that a generalization of Keller-Gehrig's third algorithm could improve both complexity and computational time. We use these results as a basis for the computation of the characteristic polynomial of integer matrices. We first use early termination and Chinese remaindering for dense matrices. Then a probabilistic approach, based on integer minimal polynomial and Hensel factorization, is particularly well suited to sparse and/or structured matrices.

Strongly Connected Graph Components and Computing Characteristic Polynomials of Integer Matrices

cecm.sfu.ca

Let A be an n × n matrix of integers. We present details of our Maple implementation of a simple modular method for computing the characteristic polynomial of A. We consider several different representations for the computation modulo primes, in particular, the use of double precision floats. The algorithm used in Maple releases 7-10 is the Berkowitz algorithm. We present some timings comparing the two algorithms on a sequence of matrices arising from an application in combinatorics of Jocelyn Quaintance. These matrices have a hidden block structure. Once identified, we can further reduce the computing time dramatically. This work has been incorporated into Maple 11's LinearAlgebra package. * Supported by NSERC of Canada and the MITACS NCE of Canada.

Computing characteristic polynomials of matrices of structured polynomials

ACM Communications in Computer Algebra

We present a parallel modular algorithm for finding characteristic polynomials of matrices with integer coefficient bivariate monomials. For each prime, evaluation and interpolation gives us the bridge between polynomial matrices and matrices over a finite field so that the Hessenberg algorithm can be used. After optimizations, we are able to save a significant amount of work by incremental Chinese remaindering and early termination.

The modpn library: bringing fast polynomial arithmetic into MAPLE

ACM Sigsam Bulletin, 2009

One of the main successes of the computer algebra community in the last 30 years has been the discovery of algorithms, called modular methods, that allow to keep the swell of the intermediate expressions under control. Without these methods, many applications of computer algebra would not be possible and the impact of computer algebra in scientific computing would be severely

On the genericity of the modular polynomial GCD algorithm

1999

In this paper we st,udy the generic setting of the modular GCD algorithm. We develop the algorithm for multivariate polynomials over Euclidean domains which have a spc:&l kind of remainder function. Details for the parameterixation and generic Maple code are given. Applying this grncric algorithm to a GCD problem in Z/(~)[t][z] where 1~ is small yields an improved asymptotic performance over t.he usual approach, and a very practical algorithm for polynomials over small finite fields. 'This nxderial is bawd on work support,ed in part, by t.hr National Science Yound;rLion under C:rmlt X0. C!CR-9712267 (Erich Kalt.ofen) and on work support,ed by NSEHC: of C!anacla (Michael Mormgan 1. Pcrnlission 1.0 make digit,al or hard copies of ,211 or part. of this work for personal or classroo~n use is granted wit.hout fee providctl that copies are not. made or dist.rilmtcd for prolit or commercial aclvant.age, arid that. ropies bear this ndice and the full cit.ation 011 the first. page. To c'opy othrrwise, to republish, to post on sc?rvers i)r to rcdist.ribute t.0 lists. requires prior specific permission and/or a fee. ISSAC' 99.

An engineered algorithm for the Smith form of an integer matrix

A variety of algorithms for computing Smith normal forms of integer matrices are known. Their worst case asymptotic complexities have steadily improved over the past four decades. However, in practice, an asymptotically inferior algorithm often outperforms an asymptotically better one. We offer an "engineered" algorithm for Smith forms of integer matrices, which is designed to combine the best aspects of previous algorithms. The fundamental base of our method is the Smith form algorithm of Eberly, Giesbrecht, and Villard. Our algorithm shares its worst case complexity. We provide several improvements such as a "bonus" idea which allows two adjacent invariant factors to be found at the price one, and a more practically efficient perturbation method. We "engineer in" judicious use of other algorithms in situations where they are more efficient. We discover the importance of seqarating rough and smooth parts of invariant factors and find an adaptive algorithm for computing each part. A number of experimental measurements suggest substantial benefit from our engineered Smith form algorithm.

A sympy/sage Module for Computing Polynomial Remainder Sequences: [preprint]

2017

The Modified Euclidean prs is obtained by modifying the sign of the remainder of each polynomial division performed for the computation of the Euclidean prs. Analogously, the Modified Subresultant prs is obtained by modifying the matrix from which the Subresultant prs is obtained. Even though prs’s (c) and (d) are computed by evaluating sub-determinants of given matrices, our objective is to compute all four prs’s using the same type of polynomial divisions over the ring Z[x]. Our objective is not at all trivial and has eluded the efforts of great mathematicians, as our brief review below indicates. Initially, Collins, Brown and Traub [8], [9], [11], [12] used the so called prem pseudo-remainder function defined by LC(g) · f = q · g + h, (1)

On finding multiplicities of characteristic polynomial factors of black-box matrices

2009

We present algorithms and heuristics to compute the characteristic polynomial of a matrix given its minimal polynomial. The matrix is represented as a black-box, i.e., by a function to compute its matrix-vector product. The methods apply to matrices either over the integers or over a large enough finite field. Experiments show that these methods perform efficiently in practice. Combined in an adaptive strategy, these algorithms reach significant speedups in practice for some integer matrices arising in an application from graph theory.