対称行列の直交行列による対角化

対称行列の直交行列による対角化#

定理

n 次実正方行列 A について、次の2つの条件は同値である

(1) A は対称行列である。

(2) A は適当な直交行列 P によって対角化できる。すなわち

P1AP=(λ1OOλn)
証明

(1)(2)について:

Aは複素数の範囲では重複をふくめてn個の固有値をもつという定理があり、また実対称行列の固有値はすべて実数であるという定理も存在するため、Aの固有値はすべて実数である。

三角化に関する定理より、直交行列Pが存在し、

P1AP=(λ1Oλn)

と三角化できる。

仮定よりPT=P1であり、AT=Aであるから、

(P1AP)T=(PTAP)T=PTAT(PT)T=P1AP

すなわち、三角行列P1APも対称行列であるため、非対角要素はすべて0であることがわかる

(2)(1)について

Aは直交行列Pによって

P1AP=(λ1OOλn)

と対角化できるとする。

対角行列であるから、(P1AP)T=P1APを満たす。

P1=PTであるから、

(P1AP)T=(PTAP)T=PTATP=P1ATP

であり、(P1AP)T=P1ATPに左からP、右からP1を掛けることでA=ATが得られ、Aは対称行列であることがわかる

例題

次の実対称行列を直交行列によって対角化せよ

A=(001010100)
解答
|AtE|=|t0101t010t|=(t1)(t+1)2

ゆえに固有値は 1,1 (重複度2) である. 次に固有値 1,1 に属する固有空間 V(1),V(1) を求める。固有値1のとき,

(1010110101)(xyz)=(x+z2yxz)=(000)

すなわち, x=z,y=0 であるから

V(1)={c(101)|c は任意 }

となる. 固有値 -1 のとき,

((1)0101(1)010(1))(xyz)=(x+z0x+z)=(000)

すなわち, x+z=0,y は任意, であるから

V(1)={c1(010)+c2(101)|c1,c2 は任意 }

となる. 以上の固有ベクトルの集合のうちから正規直交基底を選んで並べると対角化を与える直交行列になる。 そこで

a1=(101),a2=(010),a3=(101)

と おいてシュミットの方法で正規直交化を行う。

定理より V(1)V(1) の元は互いに直交しているから、それぞれで正規直交化を行えばよい。今回の場合、 a2a3 はたまたま直交しているので長さのみ調節すればよい。こうして次の正規直交基底を得る。

v1=12(101),v2=(010),v3=12(101)

これらを列ベクトルにもつ行列

P=(1/201/20101/201/2)

は定理より直交行列であり、 行列 A の対角化

P1AP=(100010001)

が得られる。