Skip to main content

Section 5.7 Jordan Canonical Form

The results of Theorem 5.6.1 and Theorem 5.6.3 tell us that for an eigenvalue λ of T:VV with multiplicity m, we have a sequence of subspace inclusions
Eλ(T)=ker(TλI)ker(TλI)2ker(TλI)m=Gλ(T).
Not all subspaces in this sequence are necessarily distinct. Indeed, it is entirely possible that dimEλ(T)=m, in which case Eλ(T)=Gλ(T). In geeral there will be some lm such that ker(TλI)l=Gλ(T).
Our goal in this section is to determine a basis for Gλ(T) in a standard way. We begin with a couple of important results, which we state without proof. The first can be found in Axler’s book; the second in Nicholson’s.
A few remarks are called for here.
  • One of the ways to see that dimGλj(T)=mj is to consider (MB(T)λjIn)mj. This will have the form diag(U1mj,U2mj,,Ukmj), where Ui is the matrix of (Tλj)mj, restricted to Gλi(T). If ij, TλjI restricts to an invertible operator on Gλi(T), but its restriction to Gλj(T) is nilpotent, by Theorem 5.7.1. So Uj is nilpotent (with Ujmj=0), and has size mj×mj, while Ui is invertible if ij. The matrix (MB(T)λjI)mj thus ends up with a mj×mj block of zeros, so dimker(TλjI)mj=mj.
  • If the previous point wasn’t clear, note that with an appropriate choice of basis, the block Ai in Theorem 5.7.2 has the form
    Ai=[λi0λi00λi].
    Thus, MB(T)λjI will have blocks that are upper triangular, with diagonal entries λiλj0 when ij, but when i=j we get a matrix that is strictly upper triangular, and therefore nilpotent, since its diagonal entries will be λjλj=0.
  • if lj is the least integer such that ker(AλjI)lj=Gλj(T), then it is possible to choose the basis of Gλj(T) so that Aj is itself block-diagonal, with the largest block having size lj×lj. The remainder of this section is devoted to determining how to choose such a basis.
The basic principle for choosing a basis for each generalized eigenspace is as follows. We know that Eλ(T)Gλ(T) for each eigenvalue λ. So we start with a basis for Eλ(T), by finding eigenvectors as usual. If ker(TλI)2=ker(TλI), then we’re done: Eλ(T)=Gλ(T). Otherwise, we enlarge the basis for Eλ(T) to a basis of kerT(λI)2. If ker(TλI)3=ker(TλI)2, then we’re done, and Gλ(T)=ker(TλI)2. If not, we enlarge our existing basis to a basis of ker(TλI)3. We continue this process until we reach some power l such that ker(TλI)l=ker(TλI)l+1. (This is guaranteed to happen by Theorem 5.6.1.) We then conclude that Gλ(T)=ker(TλI)l.
The above produces a basis for Gλ(T), but we want what is, in some sense, the “best” basis. For our purposes, the best basis is the one in which the matrix of T restricted to each generalized eigenspace is block diagonal, where each block is a Jordan block.

Definition 5.7.3.

Let λ be a scalar. A Jordan block is an m×m matrix of the form
J(m,λ)=[λ1000λ1000λ1000λ].
That is J(m,λ) has each diagonal entry equal to λ, and each “superdiagonal” entry (those just above the diagonal) equal to 1, with all other entries equal to zero.

Example 5.7.4.

The following are examples of Jordan blocks:
J(2,4)=[4104],J(3,2)=[210021002],J(4,2i)=[2i10002i10002i10002i].

Insight 5.7.5. Finding a chain basis.

A Jordan block corresponds to basis vectors v1,v2,,vm with the following properties:
T(v1)=λv1T(v2)=v1+λv2T(v3)=v2+λv3,
and so on. Notice that v1 is an eigenvector, and for each j=2,,m,
(TλI)vj=vj1.
Notice also that if we set N=TλI, then
v1=Nv2,v2=Nv3,,vm1=Nvm
so our basis for Gλ(T) is of the form
v,Nv,N2v,,Nm1v,
where v=vm, and v1=Nm1v is an eigenvector. (Note that Nmv=(TλI)v1=0, and indeed Nmvj=0 for each j=1,,m.) Such a basis is known as a chain basis.
If dimEλ(T)>1 we might have to repeat this process for each eigenvector in a basis for the eigenspace. The full matrix of T might have several Jordan blocks of possibly different sizes for each eigenvalue.

Example 5.7.6.

Determine a Jordan basis for the operator T:R5R5 whose matrix with respect to the standard basis is given by
A=[7132162422013118160340311]
Solution.
First, we need the characteristic polynomial.
The characteristic polynomial of A is given by
cA(x)=(x2)2(x3)3.
We thus have two eigenvalues: 2, of multiplicity 2, and 3, of multiplicity 3. We next find the E2(A) eigenspace.
The computer gives us
E2(A)=null(A2I)=span{x1}, where x1=[10110],
so we have only one independent eigenvector, which means that G2(A)=null(A2I)2.
Following Insight 5.7.5, we extend {x1} to a basis of G2(A) by solving the system
(A2I)x=x1.
Using the results above from the computer (or Gaussian elimination), we find a general solution
x=[t1tt0]=t[10110]+[01000].
Note that our solution is of the form x=tx1+x2. We set t=0, and get x2=[01000]T.
Next, we consider the eigenvalue λ=3. The computer gives us the following:
Rescaling to remove fractions, we find
E3(A)=null(A3I)=span{y1,y2}, where y1=[12220],y2=[12002].
Again, we’re one eigenvector short of the multiplicity, so we need to consider G3(A)=null(A3I)3.
In the next cell, note that we doubled the eigenvectors in E3 to avoid fractions. To follow the solution in our example, we append 2*E3[0], and reduce the resulting matrix. You should find that using the eigenvector y1 corresponding to E3[0] leads to an inconsistent system. Once you confirm this, replace E3[0] with E3[1] and re-run the cell to see that we get an inconsistent system using y2 as well!
The systems (A3I)y=y1 and (A3I)y=y2 are both inconsistent, but we can salvage the situation by replacing the eigenvector y2 by some linear combination z2=ay1+by2. We row-reduce, and look for values of a and b that give a consistent system.
The rref command takes things a bit farther than we’d like, so we use the command echelon_form() instead. Note that if a=b, the system is inconsistent.
We find that a=b does the job, so we set
z2=y1+y2=[00222].
Solving the system (A3I)z=y1+y2, using the code above, we find
z=[12+12s12t1s+t1+sst]=[121100]+s[121110]+t[121001]=[121100]s2y1+t2y2.
We let z3=[12200], and check that
Az3=3z3+z2,
as required:
This gives us the basis B={x1,x2,y1,z2,z3} for R5, and with respect to this basis, we have the Jordan canonical form
MB(T)=[2100002000003000003100003].
Now that we’ve done all the work required for Example 5.7.6, we should confess that there was an easier way all along:
The jordan_form() command returns a pair P,J, where J is the Jordan canonical form of A, and P is an invertible matrix such that P1AP=J. You might find that the computer’s answer is not quite the same as ours. This is because the Jordan canonical form is only unique up to permutation of the Jordan blocks. Changing the order of the blocks amounts to changing the order of the columns of P, which are given by a basis of (generalized eigenvectors).

Exercise 5.7.7.

Determine a Jordan basis for the linear operator T:R4R4 given by
T(w,x,y,z)=(w+x,x,x+2y,wx+y+z).
A code cell is given below in case you want to try performing the operations demonstrated in Example 5.7.6.
One final note: we mentioned above that the minimal polynomial of an operator has the form
mT(x)=(xλ1)l1(xλ2)l2(xλk)lk,
where for each j=1,2,,k, lj is the size of the largest Jordan block corresponding to λj. Knowing the minimal polynomial therefore tells as a lot about the Jordan canonical form, but not everything. Of course, if lj=1 for all j, then our operator can be diagaonalized. If dimV4, the minimal polynomial tells us everything, except for the order of the Jordan blocks.
In Exercise 5.7.7, the minimal polynomial is mT(x)=(x1)3(x2), the same as the characteristic polynomial. If we knew this in advance, then the only possible Jordan canonical forms would be
[1100011000100002] or [2000011000110001].
If instead the minimal polynomial had turned out to be (x1)2(x2) (with the same characteristic polynomial), then, up to permutation of the Jordan blocks, our Jordan canonical form would be
[1000011000100002].
However, once we hit matrices of size 5×5 or larger, some ambiguity creeps in. For example, suppose cA(x)=(x2)5 with mA(x)=(x2)2. Then the largest Jordan block is 2×2, but we could have two 2×2 blocks and a 1×1, or three 1×1 blocks and one 2×2.

Exercises Exercises

1.

Find the minimal polynomial m(x) of [60613416820161020].

2.

Let
A=[18201681338320821164184939].
Find a matrix P such that D=P1AP is the Jordan canonical form of A.

3.

Let
A=[4024155183030634601431730].
Find a matrix P such that D=P1AP is the Jordan canonical form of A.
You have attempted 1 of 4 activities on this page.