回顾我们上一章里面提到的Schur定理, 我们可以把一个矩阵分解成A=QPQ∗的形式. 其中P为主对角线是A的特征值的上三角矩阵, Q为正交矩阵(或酉矩阵). Schur分解的优点是其保留了基底的正交性,但所得到的上三角矩阵一般不是最简单的形式. 在本节中, 我们放弃基底的正交性, 只要求基变换矩阵可逆. 这样一来我们希望通过选取一组特定的基底, 使得上三角矩阵的形式更为简单. 通过这种变换得到的上三角矩阵即被称为Jordan标准形 (Jordan Canonical Form).
定理 5.2
设线性变换T:V→V,dim(V)=n有k个不同的特征值λ1,⋯,λk∈R, 记λi的代数重数为mi. 那么存在V的一组基底β, 使得[T]β=diag(U1⋯Uk), 其中Ui∈Mmi(R)为上三角矩阵, 主对角线上的元素为λi. 也就是说, 若矩阵A∈Mn(R)有k个不同的实数特征值, 那么存在可逆矩阵Q与上三角矩阵P, 使得A=QPQ−1.
该定理的证明与Schur定理的证明十分类似:
证明
我们将采用数学归纳法. 当A∈M1(R)时原式显然成立. 假设定理对所有的A∈Mn−1(R)成立, 我们只需要证明该定理对A∈Mn(R)成立即可. 设λ1为A的一个特征值, v1为其特征向量. 那么我们构造出一组Rn的基底β0:={v1,w1,⋯,wn−1}. 记[T]β0为线性变换在基底β0下的矩阵形式, 不难发现
[T]β0=(λ10XA1),A1∈Mn−1(R).由于A,[T]β0相似, 因此二者的特征多项式相同. 那么
CA(x)=(x−λ1)⋅CA1(x),CA1(x)=(x−λ1)m1−1(x−λ2)m2⋯(x−λk)mk.根据数学归纳法的假设, 存在可逆矩阵Q与上三角矩阵P, 使得
QPQ−1=A1,其中记P=diag(Z1U2⋯Uk), Z1∈Mm1−1(R),Ui∈Mmi(R)为上三角矩阵, 主对角线上的元素均为λ1,λi. 记S=(100⊤Q), 那么
A′:=S−1[T]β0S=(100⊤Q−1)(λ10XA1)(100⊤Q)=(λ10XQQ−1A1Q),即A′,[T]β0,A三者两两相似.
∎
我们在本节学习的Jordan标准形便是矩阵三角化的一种体现. 定理 5.2 只说明我们可以得到上三角矩阵, 但它并没有说明主对角线以上的元素应该具有什么结构.
Jordan 标准形的目标就是进一步将这些上三角块整理成若干个标准的 Jordan 块. 我们再次给出Jordan块的定义:
定义 5.5
若n≥1, 定义Jordan 块Jn(λ)为主对角线为λ, 主对角线上一个位置为1, 其余位置全部为0的矩阵. 即
J1(λ)=(λ),J2(λ)=(λ01λ),J3(λ)=λ001λ001λ,J4(λ)=λ0001λ0001λ0001λ,⋯
值得注意的是Jordan 块的形式并不是任意规定的. 它来自上一节中我们所定义的的广义特征向量链. 我们还假设A∈Mn(R), λ为代数重数为m的特征值. 若向量组
v1,v2,⋯,vm
满足 (A−λI)v1=0,以及(A−λI)vj=vj−1,j=2,…,m,则有
Av1=λv1,Avj=λvj+vj−1,j=2,…,m.
因此在基底β={v1,v2,…,vm}下A的矩阵形式正是一个Jordan块:
Jm(λ)=λ00⋮01λ0⋮001λ⋮0⋯⋯⋯⋱⋯0001λ.
接下来, 我们不禁要问: 定理5.2中的上三角矩阵P能否写成Jordan块的形式呢? 我们首先注意到
Jm(λ)=λIm+Jm(0).
而Jm(0)便是一个特征值为零的Jordan块. 我们知道幂零变换的所有特征值为零(见5.1练习3), 因此研究幂零变换对理解Jordan块将至关重要.
定理 5.3
设线性变换T:V→V,dim(V)=n, 且T为幂零变换. 那么存在V的一组基底β,
[T]β=diag(Jr1(0)Jr2(0)⋯Jrs(0)),r1+⋯+rs=n.换言之, 任何幂零变换都可以在某基底下表示成若干个零特征值Jordan块的直和.
我将不作过于技术化的证明. 下面我给出一个大致的思路:
证明
设 T 的幂零指数为m, 即
Tm=0,Tm−1=0,
因此根据上一节的推论, 我们可以得到一列递增的子空间:
{0}⊆KerT⊆KerT2⊆⋯⊆KerTm=V.我们的目标是在V中选出若干条广义特征向量链
vr↦vr−1↦⋯↦v1↦0,
使得在每一条链中
Tv1=0,Tvj=vj−1,j=2,…,r.
这样一来每一条这样的链都对应一个 Jordan 块Jr(0). 首先, 我们从KerTm 开始. 选取若干个向量使得它们构成KerTm∖KerTm−1的一组基底. 对于每个这样的向量v, 由于Tmv=0,Tm−1v=0, 由上一节的结论可知{v,Tv,⋯,Tm−1v}
线性无关. 因此这些向量一起构成了一条长度为m的广义特征向量链.
随后我们在KerTm−1∖KerTm−2 中选取新的向量, 并对每个新向量重复同样的过程. 这样一来我们得到长度为m−1的广义特征向量链. 我们随后重复这个步骤, 依次在KerTj∖KerTj−1,j=m,m−1,…,1中选取尚未被前面链覆盖的向量,并生成相应的链. 这样以来, 我们得到的所有链中的向量线性无关, 并且它们的个数恰好为n, 因此这些向量构成V的一组基底.
在每一条链v1,⋯,vr中, 由于我们有
Tv1=0,Tvj=vj−1,
所以在这条链对应的基底下T的矩阵形式即为Jr(0).
Jr(0)=000⋮0100⋮0010⋮0⋯⋯⋯⋱⋯00010.我们如果把把所有链合并起来便可以得到
[T]β=diag(Jr1(0)Jr2(0)⋯Jrs(0)).∎
我们可以将递增的核空间链
{0}⊆KerT⊆KerT2⊆⋯⊆KerTm=V
理解为一层一层像洋葱一样的结构. 在构造 Jordan 链时,我们并不是在每个KerTj 中重新选取一组完整基底, 而是只在新增的部分中选取代表元. 换言之, 我们只选择
KerTj
中相对于
KerTj−1
新出现的“方向”(线性无关的向量). 每当我们在某一层选出一个向量v时, 它会通过
v, Tv, T2v,⋯
向较低层生成一整条链. 因此, 在较低层继续选取向量时, 我们需要避开已经由较长链生成出的方向. 通过这种方式可以确保最终得到的所有链中的向量彼此线性无关, 并且总数恰好等于dim(V)=n.
因此由定理5.3可知, 幂零变换可以分解为若干个关于特征值0的Jordan块. 接下来我们将说明一般的线性变换也可以在其广义特征空间上转化为幂零变换. 设λ是T的特征值, 其代数重数为m, 其对应的广义特征空间我们记作Gλ, 满足Gλ=Ker(A−λI)m, 根据上一节的推论, dim(Gλ)=m, 且在Gλ上, 线性变换
Nλ:=(T−λI)Gλ
为幂零变换(Nλ表示将线性变换T−λI)限制在Gλ上). 这是因为对于任意的v∈Gλ,(A−λI)mv=0, 因此Nλmv=(T−λI)mv=0. 因此定理5.3同样适用于Nλ=(T−λI). 这样一来我们便会得到
形如diag(Jr1(λ)⋯Jrs(λ)).
定理 5.4
设线性变换T:V→V,dim(V)=n的特征多项式在R中可完全分解. 若T存在k个不同的特征值λ1,⋯,λk∈R, 那么存在V的一组基底β, 使得
[T]β=diag(U1⋯Uk),其中Ui=diag(Jri1(λi)⋯Jrisi(λi)).
回顾本章的例题5.1,5.2, 矩阵A=00101−2110−1001−101. 我们求出其广义特征向量构成的基底为
β=⎩⎨⎧v1=1−111,v2=1001,v3=−11−20,v4=1−211⎭⎬⎫,
且
[T]β=000010000100000−1=(J3(0)00J1(−1)).
那么我们便知道
A=00101−2110−1001−101=1−1111001−11−201−211⋅000010000100000−1⋅1−1111001−11−201−211−1.
{5.2练习}
1. 设向量v1,v2,v3∈R3 满足
(A−λI)v1=0,(A−λI)v2=v1,(A−λI)v3=v2.
证明: 在基底β:={v1,v2,v3}下满足
[T]β=J3(λ)=λ001λ001λ.
2. 设矩阵J2(λ)=(λ01λ).
(i) 证明: J2(λ)不可对角化;
(ii) 证明: J2n(λ)=(λn0nλn−1λn).
(iii) 设f(λ)=λn, 我们发现
J2n(λ)=(f(λ)0f′(λ)f(λ)).
证明
(Jn(λ))k=f(λ)00⋮0f′(λ)f(λ)0⋮02f′′(λ)f′(λ)f(λ)⋮0⋯⋯⋯⋱⋯(k−1)!f(k−1)(λ)(k−2)!f(k−2)(λ)(k−3)!f(k−3)(λ)⋮fn(λ).