Minimal Polynomials, Companion Matrices, and More
The minimal polynomial, the lowest-degree polynomial that kills A and divides every one that does. Then, pretending we never heard of Cayley–Hamilton: the minimal polynomial for a vector X, companion matrices, a third proof of Cayley–Hamilton, and L-invariant subspaces.
Picking right back up where we left off!!
The set
,
![]()
we said is closed under addition, subtraction, and multiplication. But when we looked at polynomials after the integers, didn’t we say that a set of polynomials closed under addition, subtraction, and multiplication (by any polynomial at all) can be called ’the set of multiples of something’?? So we can write that as
![]()
![]()
(It’s the same as when we did number theory….. please check the earlier post.)
![]()
is what it’s called. Aaahhh, and also: this minimal polynomial has to give 0 when you plug A into it, too!!
So among the polynomials that turn into 0 when you plug in the matrix itself, it’s the one with the lowest degree!!
Yeah?!
The characteristic polynomial and the minimal polynomial
Then let’s look at the relationship between the characteristic polynomial and the minimal polynomial! If we have

the characteristic polynomial is
![]()
OK, OK.
is in
too, so we can say it’s also a multiple of
. So a multiple of what~? What that means is that among the factors (same idea as divisors) of
there’s
…..
Hmm~ If we list out all the factors (same idea as divisors) of
,

the minimal polynomial has to be one of these!!
Which one of them is it, though…..
The way to find it is simple: go through them from the smallest up, plug A into each one, and find the one that gives 0. Doing that, the minimal polynomial of A is
![]()
so the minimal polynomial is the same as the characteristic polynomial….. T_T
Ah, but if the matrix had been like this,

then the characteristic polynomial and the minimal polynomial are

different from each other………. T_T oh boy…… Just stripping out the multiplicities doesn’t make it the minimal polynomial…..
(Apparently there’s no easy shortcut for finding the minimal polynomial…. you just have to check the candidates one by one.)
But it’s an easy proof, so I won’t write out the proof; I’ll just say it in words. The minimal polynomial, I tell you,

isn’t just any of these 5 cases;
![]()
it’s one of these two.
Did you catch that?? It’s only the ones that contain every different kind of factor at least once!!
Apparently this is one of the few ways to find the minimal polynomial a bit more easily…
The reason we learned about the ‘minimal polynomial’, which you could call one property a given matrix has, is apparently to study the decomposition theorem more deeply later on. But this much won’t do. Let’s go just a little further with the minimal polynomial!! (I’ve still got one bullet left……)

![]()
![]()
By the Cayley–Hamilton theorem, we know that plugging A into the characteristic polynomial
gives 0, so the characteristic polynomial is in
, and
is a multiple of
!! That’s the point.

Let’s say that, shall we~
Pretending we don’t know Cayley–Hamilton
But the stuff above came together easily only because we knew the C–H theorem. So this time we’re going to define the minimal polynomial on its own, pretending we don’t know the C–H theorem. Because we’ll need to!!
Let me hypnotize myself before we start:
“I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0. I do not know that plugging A into the characteristic polynomial gives 0.”
![]()
Let’s assume this. Plugging A in here,
![]()
and this has to come out as the zero matrix. Why? Because that’s the condition for the minimal polynomial.
Then, in that case, k = ? what?!
First, before we go hunting: it’s the convention to set the leading coefficient to 1, so let’s set
. It’s fine to drop just this one!! We can just write the other coefficients differently, right? (FYI, a polynomial whose leading coefficient is 1 is called a monic polynomial.)
![]()
![]()
OK then, first of all: the top degree k of
, whatever it is, is at most
.
Let’s think about a certain set of matrices.
![]()
The matrices in here can be added freely, and they can be multiplied by constants freely too. So we can see that
is yet another vector space, and the dimension of that vector space is
!!
No need to overthink this: it’s easy if you think about the basis of
.
![]()
You get these 4, right?? The dimension is 4. So the dimension is 2 times 2, which is 4.
But wait, didn’t we already finish talking about k being at most n??!?
↓ Nope, that was when we knew the Cayley–Hamilton theorem. This comes up because we’re doing it all over again, step by step.
OK, so what I want to say here is (the logic from here on down will keep coming back, so make sure you catch it): we got as far as saying that a set like
has dimension n², and now I’ll pick these elements out of it:
![]()
Think of this as an indexed list of powers; some matrices in it may repeat. How many entries does it have?? “n² + 1”!! The dimension of
is n², but that list has one more entry than the dimension, so the listed matrices are linearly dependent!!
Let me write a linear combination of the elements of the subset above that comes out 0.
![]()
Since the elements above are linearly dependent, the coefficients don’t all have to be 0. Right??!! So let me make a polynomial out of those coefficients.
![]()
A polynomial of degree at most n². Since this polynomial gives 0 when we plug in A, we can say it’s one of the elements of
, and that element has to be a multiple of
. So the degree of
is, for now, at most n²!!
So, to sum up the above: the elements of the set
are sure to show up as multiples of some polynomial; we define the one of lowest degree among the polynomials that give 0 when you plug in A as
, and after the argument above, we now know that the degree of
is, for now, at most n × n, the size of the matrix A.
![]()
The minimal polynomial for a vector X
And next!! Another story starts.
Let X be a nonzero vector in n-dimensional space:
. Then
is an n-dimensional space, so we can say that any subset with n + 1 elements is 100% linearly dependent!! Let me put it this way:
![]()
We build a set like this, multiplying by A once more each time, and if we take n + 1 of them, it’s linearly dependent, no matter what!!
(Announcing: the same logic as above starts here heh heh) (This actually uses a concept called the L-cyclic basis; I’ll sort out the terminology below.)
The count alone already breaks the condition, so it’s 100% linearly dependent, no two ways about it!! Then, a linear combination!
![]()
The c coefficients that make this equal zero don’t all have to be 0!! Because it’s linearly dependent. We’re going to give birth to another polynomial:
![]()
if we define it like this,
(the subscript X on f means ‘for some X’. If the vector were Y, or Z, the coefficients we get could be different, right?! So I put the subscript X on f to tell them apart.)
in other words, if we put A in place of t in this polynomial and then multiply by X,
![]()
we get this form back, right?! That is,
: it’s possible to satisfy this equation.
What I’m getting at is: for any vector X, there’s a nonzero polynomial f(t) of degree at most n with f(A)X = 0.
To make good use of this second story, let me make one more set.
![]()
The set of polynomials that give 0 when you plug A into f(t) and multiply by the vector X!! This set, too, is closed under addition, subtraction, and multiplication (by any polynomial at all, too), so we can call it the set of multiples of some polynomial.
![]()
Of course, the degree of
will be at most n!! 
Tracking down k, we’ve now ended up at
. But so we don’t lose the thread, let me put it this way: “We are currently out hunting for the true identity of k.”
OK then,
: the set where you have to plug A into the polynomial and then also multiply by the vector X to get 0 contains the set where plugging A in is already enough to get 0, right?! So in
there can be polynomials that don’t give 0 when you just plug A in!! That’s all it’s saying~ Anyway, makes sense.
Kyaa!! But!!!
: what this means is, first of all, every element in
has to be a multiple of
, that is,
becomes a multiple of
!?
(A totally unnecessary extra explanation:)
is a divisor of
, that’s all. The polynomials in
are divisible by
, right? Then
, which is in there, has to be divisible by
too!! Got it?!
Then this guy,
, has a degree at least as high as this guy,
. 
And then, inside the set
we can track down
. It’s the same logic as what we did above. Here’s how!!~

An actual example
To give an actual example,

say we have a matrix like this,

and say these,
, are a basis of 3-dimensional space. Now let’s pull the stunt we pulled above with X₁.

![]()
Taking the coefficients of the linear combination like this, we get 0. O~kay~ Let me switch to t.
![]()
We can say this about this polynomial:
![]()
because plugging in A and then multiplying by X₁ gives 0!! If we pull the same stunt with X₂ and X₃,

it comes out like this.
OK then,
has to be a multiple of
for every X, you see, so it has to be divisible by all of those, which means the possible
here is
![]()
this one!! Kind of looks like a least common multiple, doesn’t it.
Anyway, even without using the Cayley–Hamilton theorem, we can see that the degree of
is at least
!! 
Companion matrices
Let me go just one step further from here!
When does
turn straight into
?!

For this to happen, the matrix A has to be a bit special, and a special vector X that goes with it has to exist too, so let’s just assume for now that all of that~ holds.
![]()
We’ve assumed these n vectors are linearly independent. They’re linearly independent up to here, but the moment we fill in the element
!!! it becomes linearly dependent, so the coefficients in the linear combination don’t all have to be 0, and by the same logic as above, we can give birth to a polynomial like
![]()
this. So let’s call it β′: the basis set that becomes linearly dependent once we put
in. (It means adding one more to β′ makes it linearly dependent. β′ itself is linearly independent!!)
The matrix A was originally the linear map L written in β,
, and if we write the linear map L in the new basis β′,
, let’s call it the matrix A′. And to make the elements of that β′ easier to read, let’s not write them as
![]()
but as
![]()
(Note that the number in the subscript is 1 bigger than the exponent above.)
That means
![]()
right!?
That’s it for this part; now, if we plug A into the polynomial

![]()
it’s 0!! Shall we multiply both sides by X?
![]()
The red one isn’t one of our basis vectors, though?! In other words,

Let me say again what all of this has been about, by setting up the actual situation.
If we write it in the well-chosen basis β′,
, its shape

turns out like this weird thing. (The reason comes out in a moment.) The matrix A′ built this way is called a companion matrix, and if you look at the shape carefully, the rightmost column comes out negative, a(0) through a(n−1) in order from the top, and in the remaining columns the diagonal elements are allll 0, and the ones right below them are allll 1.
Uhhh.. T_T what is this T_T
Why would a matrix like this represent what we’ve been working with?!
Let me write out why.
![]()
in the basis β′ are unit vectors like

right? If we multiply each of these unit vectors by A′,

yep, it shows exactly what we wrote earlier!! Yo~!
Now let’s look at the characteristic polynomial of A and that of A′. A and A′ only differ in which basis they’re written in, so they’re similar,
holds, which means
![]()
Playing a bit with this formula using the relation above,
![]()
and since we can swap the order,
![]()
using
, let’s grow the size step by step, starting from n = 1 (we have to find the characteristic polynomial of the companion matrix!!)

Ahaaa!!
![]()
So,
.
Only now can we draw the conclusion: a companion matrix has the same characteristic polynomial and minimal polynomial!!
Gaaah!! (Also, as a bonus, we’ve proved the C–H theorem one more time, for matrices like this.)
Any vector X, and a third proof of Cayley–Hamilton
Now I’m going to change my way of thinking a bit. From now on, X is any nonzero vector!! (The zero vector already gives $\phi_A(A)X=0$, so that case is done.) Let’s go a bit more general. Let the minimal polynomial for that X be
![]()
like this. In this case,
![]()
let’s take this basis; these k(X) vectors are linearly independent, naturally. The moment we put in one extra element,
, it becomes linearly dependent, and we could write the polynomial
![]()
in the form above.
Now, in
, it’s possible that the
vectors fall short of n. So, let’s build one more set,
, and make the union of
and
,
.
![]()
Like we did above, I’ll write them with aliases (just for a moment).
![]()
OK, the linear map L written in β was
, and if I write out what A′ looks like in β′, write it out, write it out, write it out, write it out, just like before:

By the same principle, from
on it’s linearly dependent, so

Let’s look back slowly!! What we need to see, looking back, is that everything happened only among the vectors of
. We haven’t even glanced at
yet.
In other words, if we call the subspace spanned by
,
![]()
then since we can’t send
out of
using L, in that case
is called an “L-invariant subspace”!! (I’ll add a bit more on this shortly.)
So the shape of the matrix A′, up to this point,

gets a square block like this!! Looking at the matrix shape,
![]()
this makes sense too, doesn’t it?! The C and 0 (zero) parts are what matter here.

As we worked out above, the matrix C takes the shape of a companion matrix (the formulas are the same, too), so it’ll look like this:

This matrix can also be thought of as the companion matrix of
, huh!!
Let’s find the characteristic polynomial of

Since the matrix A and the matrix A′ are similar, their two characteristic polynomials will be the same. (We did this above!)
![]()
But!!

![]()
each of these is a characteristic polynomial, so

C is a companion matrix, and the characteristic polynomial of a companion matrix is the same as the polynomial that gave birth to it…!!

we can write that, right!?!
And on the right-hand side, the polynomial
is one that gives 0 when you plug in A and multiply by the vector X, so

the right-hand side equals zero!! Apparently it’s worth noticing that, for an arbitrary vector X,
holds.
Getting 0 no matter which vector X you hold up to it means
, so we’ve ended up proving the C–H theorem yet another way, a third time…..
About the degree of
: the elements in
are multiples of
, so if the degree of
is k, then since the degree of the characteristic polynomial is n, the dimension of the whole space, we’d better say
.
L-invariant subspaces and blocked matrices
A quick word on L-invariant subspaces. Let’s apply L-invariance to explain the blocking of matrices that we know (that is, decomposing a vector space, or decomposing a matrix).

The vector space V is built by spanning the elements of β, and let’s say it splits like this:

That means the basis of V₁ is the first piece, and the basis of V₂ is the second piece.
Now let’s think about some linear map L, and say L goes V → V.
If we pick β₁ and β₂ really, really well, can we make both V₁ and V₂ L-invariant subspaces?!
What that means is: an element of V₁ moved by L still belongs to V₁, and the same goes for V₂. In that case we can talk about L with its domain restricted,

so we can define it like this. If we call this linear map L the matrix A, looking only at V₁,

it’ll be a matrix like this. And now if we think only about V₂, the matrix of L is

In this matrix, the matrices B and C are, respectively,

like this, and so for A to satisfy both,

a matrix split like this will show up~
Let me sum up the old and new facts we’ve found so far about “blocked matrices”:




Keep these in your head, and… final summary!!
On the ‘polynomials’ that go with an n × n matrix A

This has gotten way too long…. I’ll cut it here and move on. T_T Sorry… my writing skills aren’t up to it….. T_T I’ll sort out just one more term and see you in the next post.
※ Terminology notice ※
![]()
![]()
A vector X that makes this a basis is called an L-cyclic vector, and the basis made from it is called an L-cyclic basis. And the vector space made that way is called an L-cyclic space.
※ Terminology notice ※
If
,
![]()
the space made from this (the span) is called an L-cyclic subspace.
Heads-up. The figures here are the original notes, slips and all. A few things to watch for:
- In the standard basis of $M_{2\times 2}(\mathbb{R})$, the third matrix is $\begin{pmatrix} 0 & 0 \\ 1 & 0 \end{pmatrix}$ (the picture repeats $\begin{pmatrix} 0 & 0 \\ 0 & 1 \end{pmatrix}$, which would leave only three dimensions), and in the dependence of $I, A, \ldots, A^{n^2}$ the last coefficient is $c_{n^2}$, not $c_{n_2}$.
- For $X_2 = (0, 1, 1)$, the minimal polynomial of $A$ for $X_2$ is $m_{A,X_2}(t) = (t - 2)(t - 3)$: $A^2X_2 - 5AX_2 + 6X_2 = 0$, while $(A - I)(A - 3I)X_2 = (0, -1, 0)$. The one for $X_3$ and the lcm $(t - 1)(t - 2)(t - 3)$ are right.
- The change of basis reads $A' = R^{-1}AR$ (the picture writes $A$ on the left), and for $n = 1$ the companion matrix gives $\phi_A(t) = t + a_0$, not $t + a$.
- The new basis is $\beta' = \{X, AX, \ldots, A^{k_X - 1}X, X'_{k_X + 1}, \ldots, X'_n\}$ (the first group ends in $A^{k_X - 1}X$, and the second starts at $X'_{k_X + 1}$), and the last column of the companion block $C$ reads $-a_0, -a_1, \ldots, -a_{k_X - 1}$ from top to bottom.
- For a block-diagonal $A$ with blocks $B$ and $C$, $\operatorname{tr}A = \operatorname{tr}B + \operatorname{tr}C$, not $(\operatorname{tr}B)(\operatorname{tr}C)$; $\det A = (\det B)(\det C)$ is right.
Comments
Discussion happens via GitHub Discussions. You'll need a GitHub account to comment.