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

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

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

来补了。

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

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

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

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

考虑对k阶方阵A,先取其中一个特征值λ1和对应的特征向量x1,从x1扩张出一组基x1,x2,,xn,令X1=[x1x2xn]=[x1X2],由于X1可逆,存在M=X11AX1,即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=X11[10T0X~]1[λ1vTX~10U~][10T0X~]X1

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

证毕。

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

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

命题3:若A=X1UX如命题1所述,则pA(λ)=pU(λ)

证明:

pU(λ)=det(λIXAX1)=det(XλIX1XAX1)=det(X)det(λIA)det(X1)=det(λIA)=pA(λ)

证毕。

命题4:若A=X1UX如命题1所述,则pA(A)=X1pA(U)X

证明:Ak=(X1UX)k=X1(UXX1)k1UX=X1UkX

对于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(kn1kn)的贡献总和,可以将其中一条路径抽象为k0k1kn,只要证明每一条路径贡献为0即可。

考虑Bi都是上三角矩阵,因此若i>jij的贡献就是0,因此k0k1kn若想有贡献,其必须是非减的,即k0k1kn,而knk1n1,不等号有n个,因此不可能全取小于,必有至少一个不等号取等。

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

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

2.ki1i1,此时n>1。考虑序列k0k1ki1,有ki1k0i2,却有i1个转移,和总体的情况类似,必有等号,可以递归考虑。

3.ki1i+1,与情况2类似。

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

命题6pA(A)=0

证明:若A=X1UX如命题1所述,则pA(A)=X1pA(U)X=X1pU(U)X=0

证毕。