正規行列の対角化可能性 のバックアップソース(No.5)

更新

[[線形代数Ⅱ]]

* 正規行列 [#ua361752]

正規行列とは &math(A^\dagger A=A A^\dagger); を満たす行列 &math(A);

ユニタリ行列により対角化可能であることと、正規行列であることとは同値である。

すなわち、

- ユニタリ行列により対角化可能であれば正規行列である
- 正規行列であればユニタリ行列により対角化可能である

の両方が証明可能。

** 復習 [#x1856935]

エルミート共役(随伴行列) &math(A^\dagger); は &math(\overline{{}^t\! A}); のことで、
転置行列の複素共役。転置行列 &math({}^t\!A); の複素数版と考えると良い。

同様に、ユニタリ行列 &math(A^\dagger=A^{-1}); は直交行列 &math({}^t\!A=A^{-1}); の複素数版。

* ユニタリ行列により対角化可能であれば正規行列である [#p2b1755b]

&math(U); をユニタリ行列 (&math(U^\dagger=U^{-1});)、
&math(\Lambda); を対角行列として(&math(\Lambda); は &math(\lambda); の大文字)、

>&math(
U^\dagger A U=\Lambda=
\begin{pmatrix}
\lambda_1\\ 
&\lambda_2\\
&&\ddots\\
&&&\lambda_n
\end{pmatrix});

が成り立つとき、&math(A=U\Lambda U^\dagger); と書けるから、

>&math(
A^\dagger=(U\Lambda U^\dagger)^\dagger=U\Lambda^\dagger U^\dagger=U\overline{\Lambda}U^\dagger
);  (対角行列なので &math({}^t\!\Lambda=\Lambda);)

したがって、

>&math(AA^\dagger=U\Lambda U^\dagger U\overline{\Lambda} U^\dagger=U\Lambda \overline{\Lambda} U^\dagger);

>&math(A^\dagger A=U\overline{\Lambda} U^\dagger U\Lambda U^\dagger=U\overline{\Lambda} \Lambda U^\dagger);

ここで、

>&math(
\Lambda \overline{\Lambda}=\overline{\Lambda}\Lambda=
\begin{pmatrix}
|\lambda_1|^2\\ 
&|\lambda_2|^2\\
&&\ddots\\
&&&|\lambda_n|^2
\end{pmatrix}
);

であるから、&math(AA^\dagger=A^\dagger A); が証明された。

* 正規行列であればユニタリ行列により対角化可能である [#hbdaa52d]

&math(A); を &math(n); 次元行列として、&math(n); に対する数学的帰納法を用いる。

(1) &math(n=1); のとき

&math(A); は始めから対角行列なので、
&math(U=E); (単位行列)と取れば &math(U^\dagger A U); は対角行列である。

(2) &math(n-1); 次元で成り立つとすれば &math(n); 次元でも成り立つことを証明する。

&math(A\bm x_1=\lambda\bm x_1); を満たす &math(\lambda,\bm x_1); を、
任意の &math(A); に対して最低限1組は見つけられる。

この &math(\bm x_1); に対して、&math(\bm x_1,\bm x_2,\dots,\bm x_n); が正規直交系となるように
&math(\bm x_2,\dots,\bm x_n); を定めれば、

>&math(U=\Big(\bm x_1\ \bm x_2\ \dots\ \bm x_n\Big));

はユニタリ行列となる。~
(ユニタリ行列の列ベクトルは正規直交系であった)

>&math(
U^\dagger AU&=U^\dagger \Bigg(
A\bm x_1\ A\bm x_2\ \dots\ A\bm x_n
\Bigg)\\
&= \begin{pmatrix}
\bm x_1^\dagger\\\bm x_2^\dagger\\\vdots\\\ \ \bm x_n^\dagger\ \ 
\end{pmatrix} \Bigg(
\lambda\bm x_1\ A\bm x_2\ \dots\ A\bm x_n
\Bigg)=\begin{pmatrix}
\ \lambda & \bm b^\dagger \\
\ \bm 0   & \ \rule{20pt}{0pt}\rule[-25pt]{0pt}{50pt}A'\rule[-25pt]{0pt}{50pt}\rule{20pt}{0pt}
\end{pmatrix}
);

ここで、
- &math(\bm b^\dagger); は &math(n-1); 次元の横ベクトル
- &math(A'); は &math(n-1); 次元の正方ベクトル

で、中身は &math(A); や &math(U); によって決まる。

ここまでは任意の行列 &math(A); に対して成り立つ話。~
ここで &math(A); が正規行列であるという条件を使う。

>&math(
(U^\dagger AU)^\dagger=U^\dagger A^\dagger U = \begin{pmatrix}
\ \overline \lambda & {}^t\bm 0 \\
\ \bm b   & \ \rule{20pt}{0pt}\rule[-25pt]{0pt}{50pt}{A'}^\dagger\rule[-25pt]{0pt}{50pt}\rule{20pt}{0pt}
\end{pmatrix}
);

であるから、

>&math(
(U^\dagger A U)(U^\dagger A^\dagger U)=U^\dagger AA^\dagger U=\begin{pmatrix}
\ \lambda & \bm b^\dagger \\
\ \bm 0   & \ \rule{20pt}{0pt}\rule[-25pt]{0pt}{50pt}{A'}\rule[-25pt]{0pt}{50pt}\rule{20pt}{0pt}
\end{pmatrix}\begin{pmatrix}
\ \overline \lambda & {}^t\bm 0 \\
\ \bm b   & \ \rule{20pt}{0pt}\rule[-25pt]{0pt}{50pt}{A'}^\dagger\rule[-25pt]{0pt}{50pt}\rule{20pt}{0pt}
\end{pmatrix}
);

>&math(
U^\dagger AA^\dagger U=\begin{pmatrix}
\ |\lambda|^2+\|\bm b\|^2 & \bm b^\dagger {A'}^\dagger \\
\ A'\bm b & \ \rule{20pt}{0pt}\rule[-25pt]{0pt}{50pt}{A'}{A'}^\dagger\rule[-25pt]{0pt}{50pt}\rule{20pt}{0pt}
\end{pmatrix}
);

同様に、

>&math(
U^\dagger A^\dagger A U=\begin{pmatrix}
\ |\lambda|^2 & \overline\lambda\bm b^\dagger \\
\ \lambda\bm b & \ \rule{20pt}{0pt}\rule[-25pt]{0pt}{50pt}{A'}^\dagger{A'}\rule[-25pt]{0pt}{50pt}\rule{20pt}{0pt}
\end{pmatrix}
);

これらが等しくなるためには、
- &math(\bm b=\bm 0);
- &math(A'{A'}^\dagger={A'}^\dagger A');

すなわち、

>&math(
U^\dagger AU=\begin{pmatrix}
\ \lambda & {}^t\bm 0 \\
\ \bm 0   & \rule{20pt}{0pt}\rule[-25pt]{0pt}{50pt}A'\rule[-25pt]{0pt}{50pt}\rule{20pt}{0pt}
\end{pmatrix}
);

かつ &math(A'); は &math(n-1); 次の正規行列でなければならない。

すると仮定より &math(A'); は &math(n-1); 次ユニタリ行列 &math(U'); を用いて、

>&math({U'}^\dagger A'U'=\Lambda');

のように対角化可能である。

この &math(U'); を用いて、&math(n); 次正方行列

>&math(U''=\begin{pmatrix}
1&{}^t\bm 0\\
\bm 0&\rule{10pt}{0pt}\rule[-15pt]{0pt}{30pt}U'\rule[-15pt]{0pt}{30pt}\rule{10pt}{0pt}
\end{pmatrix}
);

を作るとこれはユニタリ行列で、

>&math(
{U''}^\dagger (U^\dagger AU)U''=\begin{pmatrix}
\ \lambda & {}^t\bm 0 \\
\ \bm 0   & \rule{20pt}{0pt}\rule[-25pt]{0pt}{50pt}{U'}^\dagger A'U'\rule[-25pt]{0pt}{50pt}\rule{20pt}{0pt}
\end{pmatrix}
=\begin{pmatrix}
\ \lambda & {}^t\bm 0 \\
\ \bm 0   & \rule{20pt}{0pt}\rule[-25pt]{0pt}{50pt}\Lambda'\rule[-25pt]{0pt}{50pt}\rule{20pt}{0pt}
\end{pmatrix}
);

右辺は対角行列になっており、
左辺は &math(UU''=U'''); と置けば &math({U'''}^\dagger AU'''); と書ける。

さらに、ユニタリ行列は積について閉じているから &math(U'''); はユニタリ行列である。

すなわち、&math(n); 次元正規行列 &math(A); をユニタリ行列 &math(U'''); 
を用いて対角化できることが証明された。

* 質問・コメント [#nd96801f]

#article_kcaptcha

Counter: 41088 (from 2010/06/03), today: 10, yesterday: 0