Companion matrix

From Wikipedia, the free encyclopedia

In linear algebra, the Frobenius companion matrix of the monic polynomial

is the square matrix defined as


Some authors use the transpose of this matrix, which (dually) cycles coordinates, and is more convenient for some purposes, like linear recurrence relations.


The characteristic polynomial as well as the minimal polynomial of C(p) are equal to p.[1]

In this sense, the matrix C(p) is the "companion" of the polynomial p.

If A is an n-by-n matrix with entries from some field K, then the following statements are equivalent:

  • A is similar to the companion matrix over K of its characteristic polynomial
  • the characteristic polynomial of A coincides with the minimal polynomial of A, equivalently the minimal polynomial has degree n
  • there exists a cyclic vector v in for A, meaning that {v, Av, A2v, ..., An−1v} is a basis of V. Equivalently, such that V is cyclic as a -module (and ); one says that A is non-derogatory.

Not every square matrix is similar to a companion matrix. But every square matrix A is similar to a matrix made up of blocks of companion matrices. If we also demand that these polynomials divide each other, they are uniquely determined by A. For details, see rational canonical form.


If p(t) has distinct roots λ1, ..., λn (the eigenvalues of C(p)), then C(p) is diagonalizable as follows:

where V is the Vandermonde matrix corresponding to the λ's.

In that case,[2] traces of powers m of C readily yield sums of the same powers m of all roots of p(t),

If p(t) has a non-simple root, then C(p) isn't diagonalizable (its Jordan canonical form contains one block for each distinct root).

Linear recursive sequences[edit]

Given a linear recursive sequence with characteristic polynomial

the (transpose) companion matrix

generates the sequence, in the sense that

increments the series by 1.

The vector (1,t,t2, ..., tn-1) is an eigenvector of this matrix for eigenvalue t, when t is a root of the characteristic polynomial p(t).

For c0 = −1, and all other ci=0, i.e., p(t) = tn−1, this matrix reduces to Sylvester's cyclic shift matrix, or circulant matrix.

From linear ODE to linear ODE system[edit]

Consider first a homogeneous system in normal form.

A linear ODE of order n for the scalar function y

can be equivalently described as a coupled linear ODE system of order 1 for the vector function z = (y, y(1), ..., y(n-1))T

where C(p)T is the transpose of the companion matrix for the monic polynomial p(t) = c0 + c1 t + ... + cn-1tn-1 + tn.

In the ODE setting the coefficients {ci}i=0n-1 may be also functions of the independent variable as well and not just scalar values.

The system is in general coupled because z(1)n depends not only on zn. If C(p) is invertible then it is possible to decouple it by making a coordinate transformation as described in the section on Diagonalizability.

For inhomogeneous case

the inhomogenity term will be become a vector function of the form F(x)= (0, ..., 0, f(x))T


See also[edit]


  1. ^ Horn, Roger A.; Charles R. Johnson (1985). Matrix Analysis. Cambridge, UK: Cambridge University Press. pp. 146–147. ISBN 0-521-30586-1. Retrieved 2010-02-10.
  2. ^ Bellman, Richard (1987), Introduction to Matrix Analysis, SIAM, ISBN 0898713994 .