8 正規行列の対角化 
f-denshi.com    [目次] 最終更新日:07/11/01
サイト検索

ここでは,正方行列 (線形演算子) Tユニタリ演算子によって対角化可能であるための条件(答え=正規行列であること)を示します。

1.正規行列

[1] 線形演算子(またはその表現行列) T とその随伴演算子(随伴行列) T* との間に,

TT*=T*T         [ 正規演算子 (正規行列)]

が成り立つとき,T を正規演算子(または正規行列)といいます。もっと細かく分類すると,次の3種類があります。

行列要素が→ 複素数のとき 実数のとき
正規行列
TT*=T*T
名称 特徴 名称 特徴
ユニタリ行列 U U*U-1 直交行列 R tRR-1
エルミート行列 H H*H 対称行列 S tSS
歪エルミート行列 A A*=-A 交代行列 A tA=-A

この中でユニタリ行列についてはすでに詳しく述べています [#] が,ここでは正規行列に共通の性質について説明します。また,エルミート行列については別のページ [#] で後述します。

[2] 正規行列の主な性質をまとめておきます。

補題  [正規行列 T の性質]

(1) (Tx,Ty)=(T*x,T*y )        ← ここでの( , )はもちろん内積の意味
(2)  Tx =λx  ⇒ T*x =λ*x 
(3) 異なる固有値の固有ベクトルは直交する。

証明

(1) (Tx,Ty ) = (x,T*Ty ) = (x,TT*y ) = (T*x,T*y )   ←公式[#] を使っています。

(2) 簡単な計算から T が正規行列ならば,(T−λE )も正規行列となることはすぐにわかります。ここで,T の固有値を λ,固有ベクトルを x とすれば,

(T−λE )x0

であり,(1)から,

0 = ((T−λE )x,(T−λE )x ) = ((T−λE )*x,(T−λE )*x )

すなわち,

(T−λE)*x=0  ⇔ T*x =λ*x

(3) 異なる固有空間に属する2つのベクトルを,xjEj),xkEk)とします( λj≠λk )。すると,

(Txj,xk ) = (λjxj,xk ) = λj(xj,xk )

一方,(2)を用いて,

(Txj,xk ) = (xj,T*xk ) = (xj*kxk ) = λk(xj,xk )

と計算できます[#]。 これら辺々引くと,

0 = (λj−λk )(xj,xk )

いま,λj−λk ≠ 0  なので,(xj,xk ) = 0 でなければなりません。

2.正規行列の対角化

一般の正方行列はユニタリ行列によって三角行列に変換できることをすでに示しました [#] が,正方行列が正規行列である場合は,さらに対角行列に変換することができます。


定理2: [正規行列の対角化]

 複素数を成分とする n次正方行列 T が適当なユニタリ行列U によって, 対角行列Dに,

           U-1TUD

と変換できるための必要十分条件は,Tが正規行列であることである
正規行列={エルミート行列,対称行列,歪エルミート行列,交代行列,・・・}

[1] [必要性] T が正規行列 ⇒ T が対角化可能

 まず,任意の正方行列は適当なユニタリ行列Uで三角行列B にできる[#] ので,T

U*TU λ1 t12 ・・ t1n B
0 λ2 ・・ t2n
・・ ・・
0 ・・ 0 λn

のように変換可能です。この随伴行列[#]は,

B* = U*T*U λ1* 0 ・・ 0
t12* λ2* ・・ 0
・・ ・・ 0
t1n* t2n* ・・ λn*

となります。

[2] さて,Tが正規行列,すなわち,

T*TTT* ならば,B*BBB*   ←上三角行列と下三角行列が可換!

が成り立ちます。なぜならば,

B*B=(U*T*U )(U*TU )=U*T*(UU*)TU
  =U*T*TUU*TT*U 
  =(U*TU )(U*T*U )=BB*

と計算できるからです。この結果より三角行列 B,B* は実は対角行列でなければならないことが分かります。

実際,行列成分で表して確かめてみましょう。

B*B= λ1* 0 ・・ 0 λ1 t12 ・・ t1n
t12* λ2* ・・ 0 0 λ2 ・・ t2n
・・ ・・ 0
t1n* t2n* ・・ λn* 0 ・・ 0 λn
         = λ1 t12 ・・ t1n λ1* 0 ・・ 0 BB*
0 λ2 ・・ t2n t12* λ2* ・・ 0
・・ ・・ ・・ 0
0 ・・ 0 λn t1n* t2n* ・・ λn*

この両辺の(1行1列)の対角成分を比較すると,

     λ1*λ1 = λ1*λ1+t12t12*+・・・+t1nt1n*
⇔ 
    |λ1|2 = |λ1|2+|t12|2+・・・+|t1n|2

すなわち,

t12=・・・=t1n=0

これはBの1行目の2列目以降の成分が0でなければならないことを意味しています。次に,両辺の(2行2列)対角成分を比較すると,

|t12|2+|λ2|2 = |λ2|2+|t23|2+|t24|2+・・・+|t2n|2

すぐ前の結果より,t12=0 であったことも思い出せば,上式は,

t23=t24=・・・=t2n=0

これは2行目の3列目以降の成分が0でなければなければならないことを意味しています。同様に,(k行k列)の成分を比較することで,

tkk+1=tkk+2=・・・=tkn=0

がいえるので,k行目のk+1列目以降の成分が0であることを示しています。

以上より,B の上三角成分について,tjk=0 (j<k)であることがわかります。すなわち,適当なユニタリ変換によって,任意のTは,「ただの三角行列Bではなく,対角行列に変換」 されることがわかりました。

[3]

[十分性]   T が対角化可能   ⇒   T が正規行列 

 もし,T があるユニタリ行列で,

U-1TUD   (つまり,  TUDU-1UDU*, T*UD*U*UD*U-1) [#]

と対角化されるならば,

TT* = (UDU-1)(UD*U-1) = UDD*U-1
T*T = (UD*U-1)(UDU-1) = UD*DU-1

となります。ここで対角行列は,DD*D*D なので結局,TT*T*T  (証明終)

正規行列の直交分解を経由した別証明がこちらにあります ⇒ [#]

[4] 成分を実数に制限した定理は次のようになります。

定理3:  [対称行列の対角化]

  成分を実数とする正方行列A が,

「直交行列R で対角化可能である」

ための必要十分条件は,A が対称行列であることである。

証明はいらないでしょう?




[目次へ]