線形代数 – シュール分解・三角化

投稿者: | 2024年12月10日

定理1

すべての複素正方行列は、これを\(A\)とすると、\(P^{-1}AP\)が三角行列となるユニタリ行列\(P\)が存在する。

補足

定理1は「\(A=PTP^{-1}\)と表すことができる三角行列\(T\)とユニタリ行列\(P\)が存在する」としても同じことです。これらをシュール分解(Schur decomposition)またはシュール三角化(Schur triangularization または Schur triangulation)とよびます。

証明

\(A=A_n \in \mathbb{C}^{n\times n},\ P=P_n \in \mathbb{C}^{n\times n}\ ※1\)とする。

1.  \(P_n^{-1}A_nP_n\)が三角行列となる\(P_n\)が存在することの証明

\(A_n\)の固有値の\(1\)つを\(\lambda \in \mathbb{C}\)、\(\lambda\)に属するノルム\(1\)の固有ベクトルを\(\boldsymbol{v}_1\)とする。正規直交ベクトル\(\boldsymbol{v}_1,\boldsymbol{v}’_2,\cdots,\boldsymbol{v}’_n\)を求め、これらを列ベクトルとして並べた\(V_n \in \mathbb{C}^{n\times n}\ ※1\)を定義すると、

$$V_{n}^{-1}A_{n}V_{n}=\begin{pmatrix}\lambda &\large{*}\\ \large{0}&\large{*}\end{pmatrix} \ ※2$$

と表すことができる(補題1)。

そこで以下のように\(A_{n-1}\)を定義し、

$$V_n^{-1}A_nV_n=\begin{pmatrix}\lambda &\large{*}\\ \large{0}&A_{n-1}\end{pmatrix} \ ※3$$

\(P_n^{-1} A_n P_n\)が上三角行列となる\(P_n\)が存在することを数学的帰納法により示す。

\(n=1\)のとき、\(P_1^{-1} A_1 P_1\)は上三角行列である。

\(n \ge 2\)のとき、\(P_{n-1}^{-1} A_{n-1} P_{n-1} \)が上三角行列となる\(P_{n-1}\)が存在するものとし、\(P_n^{-1} A_n P_n \)が上三角行列となる\(P_n\)が存在することを示す。

その条件が以下であると仮定し、

\begin{align}
P_n &=V_n\begin{pmatrix}1 &\large{0}\\ \large{0}&P_{n-1}\end{pmatrix}\ ※3
\end{align}

\(P_n^{-1} A_n P_n\)を計算すると、

\begin{align}
&P_n^{-1} A_n P_n \\
&=\begin{pmatrix}1 &\large{0}\\ \large{0}&P_{n-1}^{-1}\end{pmatrix}
V_n^{-1} A_n V_n
\begin{pmatrix}1 &\large{0}\\ \large{0}&P_{n-1}\end{pmatrix}\ ※4\\
&=\begin{pmatrix}1 &\large{0}\\ \large{0}&P_{n-1}^{-1}\end{pmatrix}
\begin{pmatrix}\lambda & \large{*} \\ \large{0} & A_{n-1} \end{pmatrix}
\begin{pmatrix}1 &\large{0}\\ \large{0}&P_{n-1}\end{pmatrix}\\
&=\begin{pmatrix}\lambda &\large{*}\\ \large{0}&P_{n-1}^{-1}A_{n-1}\end{pmatrix}
\begin{pmatrix}1 &\large{0}\\ \large{0}&P_{n-1}\end{pmatrix}\\
&=\begin{pmatrix}\lambda &\large{*}\\ \large{0}&P_{n-1}^{-1}A_{n-1}P_{n-1}\end{pmatrix}
\end{align}

これは上三角行列であるので、数学的帰納法により\(P_n^{-1} A_n P_n\)が上三角行列となる\(P_n\)が存在するた。

2.  \(P_n\)がユニタリであることの証明

同様に数学的帰納法により示す。

\(n=1\)のとき、\(P_1\)はユニタリである。

\(n \ge 2\)のとき、\(P_{n-1}\)がユニタリであると仮定する。

\(V_n\)の列ベクトルを正規直交ベクトルとしたので\(V_n\)はユニタリである。

\(P_{n-1}\)をユニタリであるとしたので以下もユニタリである。

\begin{align}
\begin{pmatrix}1 &\large{0}\\ \large{0}&P_{n-1}\end{pmatrix}\\
\end{align}

したがってそれらの積である\(P_n\)はユニタリである。

補足

\(※1\ \)\(A,\ P,\ V\)の添え字は行列のサイズ(行・列)を示しています。

\(※2\ \)ブロック行列で表しています。以降も同様です。

\(※3\ \)ここでの目的は、「必ず\(P_n^{-1} A_n P_n \)が上三角行列になること」ではなく「上三角行列となる条件が存在すること」を証明することです。そこで、推測により条件を仮定し、その時に上三角行列となることを確かめています。

\(※4\ \)ブロック行列で表しています。以降も同様です。

補題1

\(A_n \in \mathbb{C}^{n \times n}\)の固有値の\(1\)つを\(\lambda \in \mathbb{C}\)、これに属する固有ベクトルを\(\boldsymbol{v}_1 \)として線形独立な列ベクトル \(\boldsymbol{v}_1,\boldsymbol{v}’_2,\cdots,\boldsymbol{v}’_n\)を決め、

$$V_n=\begin{pmatrix}\boldsymbol{v}_1&\boldsymbol{v}’_2&\cdots&\boldsymbol{v}’_{n}\end{pmatrix}\in \mathbb{C}^{n \times n}$$

と定義すると、

$$V_{n}^{-1}A_nV_n=\begin{pmatrix}\lambda &\large{*}\\ \large{0}&\large{*}\end{pmatrix} $$

と表すことができる。

証明

\(\boldsymbol{e}_1=(1,0,\cdots,0)^T\)に\(V_n\)を左から掛けると、

\begin{align}
V_n \boldsymbol{e}_1 &= \begin{pmatrix}\boldsymbol{v}_1&\large{*}\end{pmatrix}\begin{pmatrix}1\\ \large{0}\end{pmatrix}\\
&=\boldsymbol{v}_1
\end{align}

さらに\(V_n\)を移動し、

$$V_n^{-1}\boldsymbol{v}_1=\boldsymbol{e}_1$$

\(V_n^{-1}AV_n\boldsymbol{e}_1\)にこれらを代入し、

\begin{align}
V_n^{-1} A_n V_n \boldsymbol{e}_1&= V_n^{-1} A_n \boldsymbol{v}_1\\
&=\lambda V_n^{-1} \boldsymbol{v}_1\\
&= \lambda \boldsymbol{e}_1\\
&=\begin{pmatrix}\lambda &\large{*}\\ \large{0}&\large{*}\end{pmatrix}
\begin{pmatrix}1\\ \large{0}\end{pmatrix}
\end{align}

したがって、

$$V_n^{-1} A_n V_n =\begin{pmatrix}\lambda & \large{*}\\ \large{0} & \large{*} \end{pmatrix}$$

と表すことができる。