Unit 8, lesson 45

Computing Jordan Form and Its Limitations

How successive kernel dimensions count the Jordan blocks of each size, how to compute and check a Jordan basis, why the block sizes are unique, and why a tiny perturbation can change the Jordan form.

  • Video 45
  • Jordan Form Construction and Computation

A nilpotent operator on a four-dimensional space has kernels of dimensions 22, 33 and 44 for its first three powers. Those three numbers already force one Jordan block of size 33 and one of size 11, before a single chain is chosen. This lesson turns kernel dimensions into block counts, computes and checks a Jordan basis, and uses the same counts to prove that the block sizes are unique. It also shows the limits of exact Jordan form, since an arbitrarily small change in the entries can change it. Throughout, F\mathbb{F} is R\mathbb{R} or C\mathbb{C}, spaces are finite-dimensional, and characteristic polynomials split over F\mathbb{F} unless a statement says otherwise.

Key terms

Successive kernel dimensions

Definition Let T ⁣:V→VT \colon V \to V be linear with dim⁡V=n\dim V = n, and let λ∈F\lambda \in \mathbb{F} be an eigenvalue of TT. The successive kernel dimensions of TT at λ\lambda are

dk=dim⁡ker⁡(T−λI)k,k=0,1,2,…,\begin{gathered} d_k = \dim \ker (T - \lambda I)^k, \\[0.4em] k = 0, 1, 2, \dots, \end{gathered}

so d0=0d_0 = 0, and for a matrix A∈Fn×nA \in \mathbb{F}^{n \times n} they are dk=n−rank⁡(A−λI)kd_k = n - \operatorname{rank}(A - \lambda I)^k. They strictly increase up to an index ss and stay constant from then on,

0=d0<d1<⋯<ds,ds=ds+1=⋯=dim⁡Gλ,\begin{gathered} 0 = d_0 < d_1 < \cdots < d_s, \\[0.4em] d_s = d_{s+1} = \cdots = \dim G_\lambda, \end{gathered}

where GλG_\lambda is the generalized eigenspace of λ\lambda, whose dimension is the algebraic multiplicity of λ\lambda, and ss is the exponent of t−λt - \lambda in the minimal polynomial. All these kernels lie inside GλG_\lambda, because T−λIT - \lambda I is invertible on the generalized eigenspaces of the other eigenvalues, so the computation may use the whole space. In a Jordan basis of TT, a block Jℓ(λ)J_\ell(\lambda) contributes min⁡(k,ℓ)\min(k, \ell) to dkd_k, since the kernel of Jℓ(0)kJ_\ell(0)^k is spanned by the first min⁡(k,ℓ)\min(k, \ell) vectors of its chain. A block Jℓ(μ)J_\ell(\mu) with μ≠λ\mu \ne \lambda contributes 00, since Jℓ(μ)−λIJ_\ell(\mu) - \lambda I is triangular with nonzero diagonal entries μ−λ\mu - \lambda. Hence

dk=∑blocks Jℓ(λ)min⁡(k,ℓ).d_k = \sum_{\text{blocks } J_\ell(\lambda)} \min(k, \ell).

In plain words The number dkd_k counts the independent directions in the λ\lambda part that are wiped out by at most kk applications of T−λIT - \lambda I. Each chain adds one more wiped out vector at every step until the whole chain is gone.

Example Let A=2I+NA = 2I + N with

N=[0100000100010000].N = \begin{bmatrix} 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 1 \\ 0 & 0 & 0 & 0 \end{bmatrix}.

For x=(x1,x2,x3,x4)x = (x_1, x_2, x_3, x_4) we get Nx=(x2,x4,x4,0)Nx = (x_2, x_4, x_4, 0), so ker⁡N\ker N is cut out by x2=x4=0x_2 = x_4 = 0 and d1=2d_1 = 2. Next N2x=(x4,0,0,0)N^2 x = (x_4, 0, 0, 0), so d2=3d_2 = 3, and N3=0N^3 = 0, so d3=d4=4d_3 = d_4 = 4. In the Jordan basis (e1,e2+e3,e4,e3)(e_1, e_2 + e_3, e_4, e_3) the matrix AA has the blocks J3(2)J_3(2) and J1(2)J_1(2), and indeed min⁡(k,3)+min⁡(k,1)\min(k, 3) + \min(k, 1) equals 22, 33 and 44 for k=1,2,3k = 1, 2, 3.

Counting Jordan blocks

Definition With dkd_k as above, let ck=dk−dk−1c_k = d_k - d_{k-1} for k≥1k \ge 1. Then ckc_k is the number of Jordan blocks for λ\lambda of size at least kk, because min⁡(k,ℓ)−min⁡(k−1,ℓ)\min(k, \ell) - \min(k - 1, \ell) is 11 when ℓ≥k\ell \ge k and 00 otherwise. With N=T−λIN = T - \lambda I, the increment also equals rank⁡Nk−1−rank⁡Nk\operatorname{rank} N^{k-1} - \operatorname{rank} N^{k}, which is dim⁡(ker⁡N∩im⁡Nk−1)\dim(\ker N \cap \operatorname{im} N^{k-1}) by rank-nullity for NN restricted to im⁡Nk−1\operatorname{im} N^{k-1}. So the spaces Ek=ker⁡N∩im⁡Nk−1E_k = \ker N \cap \operatorname{im} N^{k-1} of the top-down construction have dimensions ckc_k, not dkd_k. The number of blocks for λ\lambda of size exactly kk is therefore

bk=ck−ck+1=2dk−dk−1−dk+1.\begin{aligned} b_k &= c_k - c_{k+1} \\[0.4em] &= 2d_k - d_{k-1} - d_{k+1}. \end{aligned}

Several checks come with this rule. The increments satisfy c1≥c2≥⋯≥0c_1 \ge c_2 \ge \cdots \ge 0. The number of blocks is c1=d1=dim⁡ker⁡(T−λI)c_1 = d_1 = \dim \ker(T - \lambda I), the geometric multiplicity of λ\lambda. The block sizes add up to dsd_s, the algebraic multiplicity. The largest block has size ss, the first index with ds=ds+1d_s = d_{s+1}, which is also the exponent of t−λt - \lambda in μT\mu_T.

In plain words The increment ckc_k counts the chains that are still alive at height kk. Take away the chains that reach height k+1k + 1, and you are left with the chains that stop exactly at height kk.

Example For the matrix A=2I+NA = 2I + N above, the table lists the kernel dimensions, the increments and the exact counts.

kk11223344
dkd_k22334444
ckc_k22111100
bkb_k11001100

So there is one block of size 11 and one of size 33. The two blocks match d1=2d_1 = 2, the sizes add up to 44, and the largest size 33 gives μA(t)=(t−2)3\mu_A(t) = (t - 2)^3, while χA(t)=(t−2)4\chi_A(t) = (t - 2)^4.

Computing a Jordan basis

Definition Let A∈Fn×nA \in \mathbb{F}^{n \times n} have a characteristic polynomial that splits over F\mathbb{F}. Work one eigenvalue at a time. For each eigenvalue λ\lambda, with N=A−λIN = A - \lambda I,

  1. compute dk=n−rank⁡Nkd_k = n - \operatorname{rank} N^k until it stops growing, and read off the block sizes,
  2. find the spaces Ek=ker⁡N∩im⁡Nk−1E_k = \ker N \cap \operatorname{im} N^{k-1}, choose a basis of the top nonzero level and extend it level by level down to E1E_1, keeping the vectors already chosen, and for each vector bb first added at level kk solve Nk−1w=bN^{k-1}w = b,
  3. list each chain (Nk−1w,…,Nw,w)(N^{k-1}w, \dots, Nw, w) bottom first as consecutive columns of PP.

Every step may use A−λIA - \lambda I on all of Fn\mathbb{F}^n, because it is invertible on the generalized eigenspaces of the other eigenvalues, so the kernels, the spaces EkE_k and the tops ww automatically lie in GλG_\lambda. With the chains of all eigenvalues placed side by side, PP is invertible and P−1AP=JP^{-1}AP = J. To check a proposed answer without computing P−1P^{-1}, verify that det⁡P≠0\det P \ne 0 and that AP=PJAP = PJ column by column. That means Ap=λpAp = \lambda p for the first column pp of each chain and Apj=λpj+pj−1Ap_j = \lambda p_j + p_{j-1} for each later column pjp_j of a chain.

In plain words The kernel table says which chains to build, the lifts build them, and the column check confirms the result without inverting anything.

Example Let

A=[3−11111002],N=A−2I=[1−111−11000].\begin{gathered} A = \begin{bmatrix} 3 & -1 & 1 \\ 1 & 1 & 1 \\ 0 & 0 & 2 \end{bmatrix}, \\[0.4em] N = A - 2I = \begin{bmatrix} 1 & -1 & 1 \\ 1 & -1 & 1 \\ 0 & 0 & 0 \end{bmatrix}. \end{gathered}

Every row of NN is a multiple of (1,−1,1)(1, -1, 1), so Nx=(x1−x2+x3) uNx = (x_1 - x_2 + x_3)\,u with u=(1,1,0)u = (1, 1, 0). Since Nu=0Nu = 0, we get N2=0N^2 = 0. So the only eigenvalue of AA is 22, χA(t)=(t−2)3\chi_A(t) = (t - 2)^3, d1=3−rank⁡N=2d_1 = 3 - \operatorname{rank} N = 2 and d2=3d_2 = 3. The increments are 22 and 11, so the blocks are J2(2)J_2(2) and J1(2)J_1(2). The image im⁡N=span⁡(u)\operatorname{im} N = \operatorname{span}(u) lies in ker⁡N\ker N, so the top level is E2=span⁡(u)E_2 = \operatorname{span}(u), and Nw=uNw = u is solved by w=e1w = e_1. Extend uu to a basis of ker⁡N\ker N, the plane x1−x2+x3=0x_1 - x_2 + x_3 = 0, with the vector (0,1,1)(0, 1, 1). Then

P=[110101001],det⁡P=−1.\begin{gathered} P = \begin{bmatrix} 1 & 1 & 0 \\ 1 & 0 & 1 \\ 0 & 0 & 1 \end{bmatrix}, \\[0.4em] \det P = -1. \end{gathered}

The column check reads Au=(2,2,0)=2uAu = (2, 2, 0) = 2u, Ae1=(3,1,0)=2e1+uAe_1 = (3, 1, 0) = 2e_1 + u and A(0,1,1)=(0,2,2)=2(0,1,1)A(0, 1, 1) = (0, 2, 2) = 2(0, 1, 1), so

P−1AP=[210020002].P^{-1}AP = \begin{bmatrix} 2 & 1 & 0 \\ 0 & 2 & 0 \\ 0 & 0 & 2 \end{bmatrix}.

The inverse P−1P^{-1} has rows (0,1,−1)(0, 1, -1), (1,−1,1)(1, -1, 1) and (0,0,1)(0, 0, 1), so the coordinates of xx in this Jordan basis are (x2−x3,  x1−x2+x3,  x3)(x_2 - x_3, \; x_1 - x_2 + x_3, \; x_3). For example (5,2,3)=−u+6e1+3(0,1,1)(5, 2, 3) = -u + 6e_1 + 3(0, 1, 1). Watch for this. The vector (0,1,1)(0, 1, 1) lies in ker⁡N\ker N but not in im⁡N\operatorname{im} N, so it cannot be the bottom of a chain of length 22.

Uniqueness of block sizes

Definition Let T ⁣:V→VT \colon V \to V be linear on a finite-dimensional space over F\mathbb{F} with split characteristic polynomial. Then all Jordan forms of TT contain the same blocks, counted with multiplicity, and differ only in the order of the blocks. Precisely, for every eigenvalue λ\lambda and every k≥1k \ge 1, each Jordan form of TT has exactly

2dk−dk−1−dk+12d_k - d_{k-1} - d_{k+1}

blocks equal to Jk(λ)J_k(\lambda), where dk=dim⁡ker⁡(T−λI)kd_k = \dim \ker(T - \lambda I)^k. To prove it, let AA be a matrix of TT and J=P−1APJ = P^{-1}AP any Jordan form. For every kk,

(J−λI)k=P−1(A−λI)kP,(J - \lambda I)^k = P^{-1}(A - \lambda I)^k P,

and x↦Pxx \mapsto Px maps ker⁡(J−λI)k\ker(J - \lambda I)^k one-to-one onto ker⁡(A−λI)k\ker(A - \lambda I)^k, so JJ and AA have the same numbers dkd_k. Applied to the Jordan matrix JJ, the counting rule turns these numbers into the block counts of JJ, and the numbers depend only on TT. Consequently two matrices in Fn×n\mathbb{F}^{n \times n} with split characteristic polynomials are similar over F\mathbb{F} exactly when their Jordan forms have the same blocks, since reordering the blocks is itself a similarity by a permutation matrix. When V≠0V \ne 0 the Jordan basis is not unique. Scaling a whole chain by a scalar c∉{0,1}c \notin \{0, 1\}, lifting the bottom of a chain of length at least 22 to a different top, or reordering two or more chains gives another Jordan basis.

In plain words The basis is a choice, but the block sizes are not. Kernel dimensions do not depend on the basis, and they determine how many blocks of each size there are.

Example The nilpotent Jordan matrices with blocks of sizes 3,3,13, 3, 1 and 3,2,23, 2, 2 are both 7×77 \times 7, with characteristic polynomial t7t^7, minimal polynomial t3t^3 and a kernel of dimension 33. Yet their second kernel dimensions differ,

d2=2+2+1=5  for 3,3,1,d2=2+2+2=6  for 3,2,2,\begin{gathered} d_2 = 2 + 2 + 1 = 5 \ \text{ for } 3, 3, 1, \\[0.4em] d_2 = 2 + 2 + 2 = 6 \ \text{ for } 3, 2, 2, \end{gathered}

so they are not similar. The characteristic polynomial, the minimal polynomial and the geometric multiplicity together still do not determine the Jordan form, while the kernel dimensions dkd_k at every eigenvalue and for every kk do.

Sensitivity of Jordan form to perturbation

Definition The Jordan form is not a continuous function of the entries. An arbitrarily small change in a matrix can change its block sizes, and when that happens the eigenvalues can move much farther than the entries did. A standard example is the real family

Aε=[11ε1],χAε(t)=(t−1)2−ε.\begin{gathered} A_\varepsilon = \begin{bmatrix} 1 & 1 \\ \varepsilon & 1 \end{bmatrix}, \\[0.4em] \chi_{A_\varepsilon}(t) = (t - 1)^2 - \varepsilon. \end{gathered}

For ε=0\varepsilon = 0 the Jordan form is the single block J2(1)J_2(1). For ε>0\varepsilon > 0 the eigenvalues 1±ε1 \pm \sqrt{\varepsilon} are distinct, with eigenvectors (1,ε)(1, \sqrt{\varepsilon}) and (1,−ε)(1, -\sqrt{\varepsilon}), so AεA_\varepsilon is diagonalizable over R\mathbb{R}, with two blocks of size 11. For ε<0\varepsilon < 0 the characteristic polynomial has no real roots, so AεA_\varepsilon is not similar over R\mathbb{R} to any Jordan matrix, while over C\mathbb{C} the eigenvalues 1±i−ε1 \pm i\sqrt{-\varepsilon} are distinct and AεA_\varepsilon is diagonalizable. The entries move by ∣ε∣\lvert \varepsilon \rvert but the eigenvalues move by ∣ε∣\sqrt{\lvert \varepsilon \rvert}. For ε>0\varepsilon > 0 the angle between the two eigenvectors above is 2arctan⁡ε2\arctan\sqrt{\varepsilon}, which tends to 00 as ε→0\varepsilon \to 0, so the diagonalizing basis becomes nearly dependent.

Exact Jordan structure rests on exact zero tests, such as whether Aε−IA_\varepsilon - I has a nonzero kernel, which happens only for ε=0\varepsilon = 0. The singular values of Aε−IA_\varepsilon - I are 11 and ∣ε∣\lvert \varepsilon \rvert. A tiny computed singular value is consistent with a kernel of dimension 00 and with a kernel of dimension 11, so a rank decision from rounded or measured data needs a stated tolerance and an error model. For numerical work a unitary Schur form A=QRQ∗A = QRQ^{*}, with QQ unitary and RR upper triangular, is usually a better starting point than a Jordan basis or a nearly dependent eigenvector basis, because a unitary change of basis preserves lengths and so does not magnify errors.

In plain words Jordan form answers exact questions, such as whether two eigenvalues are exactly equal, and an arbitrarily small change of the entries can flip the answer. That is no contradiction. It means the exact form cannot be read reliably from data that are known only approximately.

Example Take ε=10−6\varepsilon = 10^{-6}. One entry changes by 10−610^{-6}, yet the double eigenvalue 11 splits into 1.0011.001 and 0.9990.999, and the angle between the two eigenvectors is about 0.0020.002 radians. With ε=10−16\varepsilon = 10^{-16}, about the size of rounding errors in double precision arithmetic, the eigenvalues still move by 10−810^{-8}. The jump goes the other way too. The identity I2I_2 has two blocks of size 11, but for every δ≠0\delta \ne 0 the matrix with rows (1,δ)(1, \delta) and (0,1)(0, 1) is similar to J2(1)J_2(1) through S=diag⁡(δ,1)S = \operatorname{diag}(\delta, 1), so it has a single block.

Check yourself

  1. A nilpotent operator NN on a six-dimensional space has dim⁡ker⁡N=3\dim \ker N = 3, dim⁡ker⁡N2=5\dim \ker N^2 = 5 and dim⁡ker⁡N3=6\dim \ker N^3 = 6. Find its Jordan block sizes, the rank of NN and the minimal polynomial.
Show the answer

The increments are c1=3c_1 = 3, c2=2c_2 = 2, c3=1c_3 = 1 and c4=0c_4 = 0, so there is 3−2=13 - 2 = 1 block of size 11, 2−1=12 - 1 = 1 block of size 22 and 1−0=11 - 0 = 1 block of size 33. The sizes 1+2+3=61 + 2 + 3 = 6 fill the space. The rank is 6−dim⁡ker⁡N=36 - \dim \ker N = 3. Since dim⁡ker⁡N2=5<6\dim \ker N^2 = 5 < 6, the power N2N^2 is not zero, while N3=0N^3 = 0, so the minimal polynomial is t3t^3.

  1. A matrix A∈C4×4A \in \mathbb{C}^{4 \times 4} has χA(t)=(t−5)4\chi_A(t) = (t - 5)^4 and dim⁡ker⁡(A−5I)=2\dim \ker(A - 5I) = 2. Do these facts determine its Jordan form? If not, which single number settles it?
Show the answer

No. There are two blocks for the eigenvalue 55 with sizes adding up to 44, so the sizes are 3,13, 1 or 2,22, 2, and both options have d1=2d_1 = 2. Choosing 2,22, 2 because it looks balanced is a common mistake. The second kernel dimension decides. A block of size ℓ\ell contributes min⁡(2,ℓ)\min(2, \ell) to d2d_2, so

d2=2+1=3for 3,1,d2=2+2=4for 2,2.\begin{gathered} d_2 = 2 + 1 = 3 \quad \text{for } 3, 1, \\[0.4em] d_2 = 2 + 2 = 4 \quad \text{for } 2, 2. \end{gathered}

Equivalently, (A−5I)2=0(A - 5I)^2 = 0 exactly in the case 2,22, 2, so the minimal polynomial is (t−5)2(t - 5)^2 for the blocks 2,22, 2 and (t−5)3(t - 5)^3 for the blocks 3,13, 1.

  1. Let NεN_\varepsilon be J3(0)J_3(0) with a real entry ε\varepsilon placed in position (3,1)(3, 1),
Nε=[010001ε00].N_\varepsilon = \begin{bmatrix} 0 & 1 & 0 \\ 0 & 0 & 1 \\ \varepsilon & 0 & 0 \end{bmatrix}.

Find its characteristic polynomial. What is its Jordan form over C\mathbb{C} for ε≠0\varepsilon \ne 0, how far are its eigenvalues from 00 when ε=10−9\varepsilon = 10^{-9}, and does it have a Jordan form over R\mathbb{R}?

Show the answer

Expanding det⁡(tI−Nε)\det(tI - N_\varepsilon) along the first row gives

χNε(t)=t⋅t2+1⋅(0⋅t−ε)=t3−ε.\begin{aligned} \chi_{N_\varepsilon}(t) &= t \cdot t^2 + 1 \cdot (0 \cdot t - \varepsilon) \\[0.4em] &= t^3 - \varepsilon. \end{aligned}

For ε≠0\varepsilon \ne 0 the roots are the three distinct complex cube roots rr, rωr\omega and rω2r\omega^2 of ε\varepsilon, where rr is the real cube root and ω=e2πi/3\omega = e^{2\pi i/3}. Three distinct eigenvalues make NεN_\varepsilon diagonalizable over C\mathbb{C}, with Jordan form diag⁡(r,rω,rω2)\operatorname{diag}(r, r\omega, r\omega^2), while N0=J3(0)N_0 = J_3(0) is a single block. For ε=10−9\varepsilon = 10^{-9} all three eigenvalues have modulus 10−310^{-3}, a million times the change in the entry. Over R\mathbb{R} the polynomial t3−εt^3 - \varepsilon has only the real root rr when ε≠0\varepsilon \ne 0, so it does not split and NεN_\varepsilon is not similar over R\mathbb{R} to any Jordan matrix. In general the same corner entry in a block of size kk gives tk−εt^k - \varepsilon, with eigenvalues of modulus ∣ε∣1/k\lvert \varepsilon \rvert^{1/k}, so for 0<∣ε∣<10 < \lvert \varepsilon \rvert < 1 longer blocks are more sensitive.

How this lesson connects