(补充)证明线性递推相关的Hamilton-Cayley定理

我很久以前曾经写过一篇关于线性递推的矩阵分析的文章 (opens new window),不过在特征多项式有重根的情况下的证明却没有具体描述,只是推锅给极小扰动。~~其实是我当时自己也一知半解。~~在大学系统接触线性代数后,我学到了完整的证明pA(A)=0的方法,其中pA(λ)表示A的特征多项式,放在这里供大家参考。

手机写公式太麻烦了,等网线寄到了在电脑上补。

来补了。

首先规定一个常用的矩阵表示方法。可以将一个矩阵纵横切割分为若干方块。例如A=[A11A12A21A22],矩阵内的四部分也是矩阵,相当于拼合在了一起。当然,同一列的矩阵必须等宽,同一行的矩阵必须等高。运算时,可以将每个小矩阵视作独立元素,按照矩阵乘法规则运算,可以验证这一算法的正确性。不过要使用这种方式,左矩阵的列分割情况和右矩阵行分割情况要相同。

令pA(λ)表示A的特征多项式,λ1,λ2,…,λn表示该多项式的根。

命题1:对于n×n的方阵A,则存在可逆矩阵X和上三角矩阵U,使得A=X−1UX。

证明:利用数学归纳法,n=1时,令X=I即得。假设n=k−1时,命题成立。

考虑对k阶方阵A,先取其中一个特征值λ1和对应的特征向量x1,从x1扩张出一组基x1,x2,…,xn,令X1=[x1x2…xn]=[x1X2],由于X1可逆,存在M=X1−1AX1,即AX1=X1M。那么:

AX1=[Ax1AX2]=[λ1x1AX2]=[x1X2][λ1vT0A~]

因此M=[λ1vT0A~],由归纳假设,存在可逆矩阵X~,上三角矩阵U~,使得A~=X~−1U~X~,则:

M=[λ1vT0X~−1U~X~]=[10T0X~−1][λ1vTX~−10U~][10T0X~]

注意到[10T0X~]−1=[10T0X~−1],于是可以有:

A=X1−1[10T0X~]−1[λ1vTX~−10U~][10T0X~]X1

令X=[10T0X~]X1,U=[λ1vTX~−10U~],显然符合条件。

证毕。

命题2:对于上三角矩阵U,其对角元素恰是其特征多项式的n个根。

证明:只需利用行列式的展开式即可,对于det(λI−U),其严格下三角元素都为0,因此贡献非0的排列只有1,2,…,n,贡献为∏i=1n(λ−Uii)。证毕。

命题3:若A=X−1UX如命题1所述,则pA(λ)=pU(λ)。

证明:

pU(λ)=det(λI−XAX−1)=det(XλIX−1−XAX−1)=det(X)det(λI−A)det(X−1)=det(λI−A)=pA(λ)

证毕。

命题4:若A=X−1UX如命题1所述,则pA(A)=X−1pA(U)X。

证明:Ak=(X−1UX)k=X−1(UXX−1)k−1UX=X−1UkX

对于pA(A)的每一项都是如此,即得。证毕。

命题5:若U为上三角矩阵,则pU(U)=0。

证明:考虑pU(λ)=∏i=1n(λ−λi),由命题2,可以调换相乘顺序使λi=Uii,则pU(U)=∏i=1n(U−λiI)。其中,第i个矩阵的(i,i)号元素为0。

记Bi=U−λiI。考虑矩阵乘法的定义,对于矩阵∏i=1nBi,其(k0,kn)号元素是若干B1(k0k1)∗B2(k1k2)∗⋯∗Bn(kn−1kn)的贡献总和,可以将其中一条路径抽象为k0→k1→⋯→kn,只要证明每一条路径贡献为0即可。

考虑Bi都是上三角矩阵,因此若i>j,i→j的贡献就是0,因此k0→k1→⋯→kn若想有贡献,其必须是非减的,即k0≤k1≤⋯≤kn,而kn−k1≤n−1,不等号有n个,因此不可能全取小于,必有至少一个不等号取等。

假设其中一个为ki−1=ki,分三种情况:

1.ki−1=i,则ki−1→ki的转移在第i个矩阵Bi上,而Bi的(i,i)号元素为0。则路径的贡献是0。

2.ki−1≤i−1,此时n>1。考虑序列k0→k1→⋯→ki−1,有ki−1−k0≤i−2,却有i−1个转移,和总体的情况类似,必有等号,可以递归考虑。

3.ki−1≥i+1,与情况2类似。

2,3发生时n>1,必不可能一直发生下去,一定会出现情况1。因此任意路径贡献为0,也就证明了命题。证毕。

命题6:pA(A)=0

证明:若A=X−1UX如命题1所述,则pA(A)=X−1pA(U)X=X−1pU(U)X=0。

证毕。