The Samuelson-Berkowitz algorithm efficiently computes the characteristic polynomial of an matrix who entries may be elements of any untial commutative ring without zero divisors.
Description of Algorithm
The Samuelson-Berkowitz algorithm applied to a matrix produces a vector whose entries are the coefficient of the characteristic polynomial of . It computes this
coefficients vector as a recursive product of Toeplitz matrices based on the principal submatrices of
Let be an matrix partitioned so that
The first principal submatrix of is the matrix . Associate with the Toeplitz matrix
defined by
if is ,
if is ,
and in general
That is, all super diagonals of consist of zeros, the main diagonal consists of s, the first subdiagonal consists of and the th subdiagonal
consists of .
The Toeplitz matrix is the Toeplitz matrix associated with the first principal submatrix , and so on. The Samuelson-Berkowitz algorithm then states that the vector defined by
contains the coefficients of the characteristic polynomial of .
^Cook, Stephen and Soltys, Michael. The Proof Complexity of Linear Algebra. 1993
^S.J. Berkowitz, On computing the determinant in small
parallel time using a small number of processors, ACM,
Information Processing Letters 18, 1984, pp. 147-150
^M. Keber, Division-Free computation of sub-resultants
using Bezout matrices, Tech. Report MPI-I-2006-1-006,
Saarbrucken, 2006