様々な行列の分解

学習コース

1. 固有値分解

正方行列$A \in \mathbb{R}^{n \times n}$に$n$本の相異なる固有ベクトルが得られる場合、その固有ベクトルを並べた行列$P$と固有値を対角成分にもつ対角行列$\Lambda$を用いて$A=P\Lambda P^{-1}$と分解でき、これを固有値分解と呼びます。

詳しくは以下の記事の定理10.10を参照して下さい。

2. ジョルダン標準型を用いた分解

正方行列$A \in \mathbb{R}^{n \times n}$に$n$本の相異なる固有ベクトルが得られない場合でも、ジョルダン鎖を代わりに用いて並べた行列$P$とジョルダン標準形$J$を用いて$A=PJP^{-1}$と分解できます。

詳しくは以下の記事の定理10.13を参照して下さい。

3. 上三角行列を用いた分解

行列 $A \in \mathbb{F}^{n \times n}$の特性多項式が$\mathbb{F}$上で一次式の積に分解可能な場合、$A$についてある可逆行列$P$と上三角行列$T$が存在して$A=PTP^{-1}$と分解できます。

詳しくは以下の記事の定理10.16を参照して下さい。

4. 特異値分解

$A$が正方行列でない場合でも、左特異ベクトルを並べた$U$と右特異ベクトルを並べた$V$と特異値を対角成分上に並べた対角行列$\Sigma$を用いて$A=U\Sigma V^\ast$のように固有値分解と似た形で分解が可能で、これを特異値分解と呼びます。

詳しくは以下の記事の定理12.3を参照して下さい。

5. スペクトル分解

(1) 正方行列のスペクトル分解

行列$A$を射影作用素の線形結合で表すことをスペクトル分解と呼びます。

詳しくは以下の記事の定理12.1を参照して下さい。

(2) 正規行列のスペクトル分解

$A$が正規行列ならば、$A$の射影作用素は固有ベクトルによって簡潔に表すことができます。

詳しくは以下の記事の定理12.2を参照して下さい。

(3) 正方行列以外のスペクトル分解

特異値分解を利用することで、非正方行列に対してもスペクトル分解と似た分解ができます。

詳しくは以下の記事の定理12.6を参照して下さい。

6. LU分解

(1) 主小行列の定義

定理15.1: 主小行列
$A\in\mathbb{F}^{n\times n}$ に対し、上左の $k\times k$ ブロック $$ A_{1:k,\,1:k}= \begin{pmatrix} a_{11}&\cdots&a_{1k}\\ \vdots&\ddots&\vdots\\ a_{k1}&\cdots&a_{kk} \end{pmatrix} $$ を先頭主小行列と呼び、その行列式 $\Delta_k:=\det A_{1:k,\,1:k}$ を 先頭主小行列式と呼びます。
例:$n=4$ なら $\Delta_1=a_{11}$, $\Delta_2=\det\begin{pmatrix}a_{11}&a_{12}\\ a_{21}&a_{22}\end{pmatrix}$, …。

(2) 行交換なしのLU分解

定理15.2: LU分解①
すべての先頭主小行列式が 0 でない($\Delta_k\neq0$ for $k=1,\dots,n$)行列 $A$ については、
行交換を一切せず に $$A=LU$$ ($L$ 単位下三角、$U$ 上三角)が存在し、さらに 一意 である。

証明をみる

ガウス消去(前進消去)を行交換なしで進めるには、各段階のピボットが 0 でない必要があります。$\Delta_k\neq0$ は「その段階までの左上 $k\times k$ ブロックが可逆」を意味し、ピボットが常に非零=消去を行交換なしで最後まで進められることを保証します。

(1) 十分性($\Delta_k\neq0\Rightarrow LU$ が存在)

帰納法(分割とシュール補行列)で示します。$A$ を $$ A=\begin{pmatrix} a_{11} & a^\top\\[2pt] b & B \end{pmatrix},\qquad a_{11}=\Delta_1\neq0 $$ と分け、$\ell:=b/a_{11}$、シュール補行列 $$ S:=B-\frac{1}{a_{11}}\,b\,a^\top $$ を定義すると $$ A= \underbrace{\begin{pmatrix}1&0\\ \ell&I\end{pmatrix}}_{L_1} \underbrace{\begin{pmatrix}a_{11}&a^\top\\ 0&S\end{pmatrix}}_{U_1}. $$ ここで重要なのは、仮定 $\Delta_k\neq0$ から $S$ の先頭主小行列式もすべて非零になること($\det S_{1:(k-1),1:(k-1)}=\Delta_k/\Delta_1\neq0$)。よって帰納法の仮定により $S=L_SU_S$($L_S$ 単位下三角、$U_S$ 上三角)。まとめると $$ A=\underbrace{L_1\begin{pmatrix}1&0\\ 0&L_S\end{pmatrix}}_{L\ \text{単位下三角}} \underbrace{\begin{pmatrix}a_{11}&a^\top\\ 0&U_S\end{pmatrix}}_{U\ \text{上三角}}, $$ つまり $A=LU$ が構成できます。

直観:各段階で「列の下側をピボットで割って係数を作る→その列を消去→右下ブロックに進む」を、行交換せず最後まで続けられる、ということです。

(2) 必要性($A=LU\Rightarrow \Delta_k\neq0$)

もし $A=LU$($L$ 単位下三角、$U$ 上三角)なら、 $$ A_{1:k,1:k}=L_{1:k,1:k}\,U_{1:k,1:k}. $$ よって $$ \Delta_k=\det(L_{1:k,1:k})\det(U_{1:k,1:k})=1\cdot \prod_{i=1}^k u_{ii}, $$ 上三角の対角の積なので $\Delta_k\neq0$。
(逆に $\Delta_k=0$ なら、行交換なしの消去はどこかで止まります。)

(3) 一意性($L$ を単位下三角に固定した場合)

$A=L_1U_1=L_2U_2$ とすると $$ L_2^{-1}L_1 = U_2U_1^{-1}. $$ 左辺は単位下三角、右辺は上三角。両者が等しい行列は恒等行列しかありえないため、$L_1=L_2$, $U_1=U_2$。一意性が従います。


具体例をみる LU分解は、証明の流れとは別に以下のように進めることで得られます。
  • 第 $k$ 列のピボット $a_{kk}$ を用い、$i=k+1,\dots,n$ について消去係数 $m_{ik}=a_{ik}/a_{kk}$ を求め、行 $i$ から $m_{ik}$ 倍の行 $k$ を引く。
  • 得られる上三角が $U$、係数 $m_{ik}$ を下三角に並べ、対角を $1$ としたものが $L$。

以下では具体的な例を挙げてLU分解を示します。

具体例として,次の $3\times3$ 行列 $A$ を扱います(先頭主小行列式がすべて非零なので,定理Aにより行交換なしで LU 分解できます):

$$ A=\begin{pmatrix} 2&1&1\\ 4&-6&0\\ -2&7&2 \end{pmatrix}. $$

1. 先頭主小行列($\Delta_k$)の確認

$$\Delta_1=a_{11}=2\ne0.$$

$$ \Delta_2=\det\begin{pmatrix}2&1\\4&-6\end{pmatrix} =2(-6)-1\cdot4=-12-4=-16\ne0. $$

$$ \Delta_3=\det A =2\det\!\begin{pmatrix}-6&0\\7&2\end{pmatrix} -1\det\!\begin{pmatrix}4&0\\-2&2\end{pmatrix} +1\det\!\begin{pmatrix}4&-6\\-2&7\end{pmatrix} =-24-8+16=-16\ne0. $$

よって各段階のピボットは非零で,行交換なしで消去を進められます。

2. ガウス消去(Doolittle;$L$ 単位下三角)

(i) 第1列の消去(ピボット $a_{11}=2$)

乗数(multiplier)

$$ \ell_{21}=a_{21}/a_{11}=4/2=2,\qquad \ell_{31}=a_{31}/a_{11}=-2/2=-1. $$

行基本変形(行2 $\leftarrow$ 行2 − $\ell_{21}$ 行1,行3 $\leftarrow$ 行3 − $\ell_{31}$ 行1):

$$ \begin{aligned} \text{行2}&:[4,-6,0]-2[2,1,1]=[0,-8,-2],\\ \text{行3}&:[-2,7,2]-(-1)[2,1,1]=[0,8,3]. \end{aligned} $$

ここまでで

$$ \begin{pmatrix} 2&1&1\\ 0&-8&-2\\ 0&8&3 \end{pmatrix}. $$

(ii) 第2列の消去(ピボット $-8$)

乗数

$$\ell_{32}=\frac{8}{-8}=-1.$$

行基本変形(行3 $\leftarrow$ 行3 − $\ell_{32}$ 行2 = 行3 + 行2):

$$[0,8,3]+[0,-8,-2]=[0,0,1].$$

したがって,上三角係数行列(=最終形)は

$$ U= \begin{pmatrix} 2&1&1\\ 0&-8&-2\\ 0&0&1 \end{pmatrix}. $$

乗数を下三角に並べ,対角を 1 にすれば

$$ L= \begin{pmatrix} 1&0&0\\ \ell_{21}&1&0\\ \ell_{31}&\ell_{32}&1 \end{pmatrix} = \begin{pmatrix} 1&0&0\\ 2&1&0\\ -1&-1&1 \end{pmatrix}. $$

3. 検算($A=LU$ の確認)

$$ LU= \begin{pmatrix} 1&0&0\\ 2&1&0\\ -1&-1&1 \end{pmatrix} \begin{pmatrix} 2&1&1\\ 0&-8&-2\\ 0&0&1 \end{pmatrix} = \begin{pmatrix} 2&1&1\\ 4&-6&0\\ -2&7&2 \end{pmatrix} =A. $$

4. まとめ

  • 先頭主小行列式 $\Delta_1,\Delta_2,\Delta_3$ がすべて非零なので,行交換なしで Doolittle 形式の LU 分解が可能。
  • 得られた分解は $$ A=\underbrace{\begin{pmatrix} 1&0&0\\ 2&1&0\\ -1&-1&1 \end{pmatrix}}_{L} \underbrace{\begin{pmatrix} 2&1&1\\ 0&-8&-2\\ 0&0&1 \end{pmatrix}}_{U}. $$ ここで $L$ は単位下三角,$U$ は上三角。
  • この条件下では($L$ を単位下三角に固定すれば)分解は一意です。

(3) 行交換ありのLU分解

行交換を許せば、主小行列に関する制限なしに任意の行列に対してLU分解が可能です。

定理15.3: LU分解②

任意の正方行列 $A\in\mathbb{F}^{n\times n}$ に対して、
ある置換行列 $P$(行入れ替えを表す行列)、単位下三角行列 $L$(対角がすべて 1 の下三角)、上三角行列 $U$ が存在して

$$\boxed{\,PA=LU\,}$$

が成り立つ。$A$ が特異でもよく、その場合は $U$ の対角に 0 が現れることがある。
(一般には $P$ は一意ではありません。$P$ を固定すれば $L,U$ は一意になります。)

証明をみる 直観(なぜ行交換が要るのか)

ガウス消去では、各ステップでピボット(現在の先頭位置の対角要素)が 0 でないことが必要です。
行交換を許せば、現在の列の中から非零の成分を上に持ってくることができ、消去を必ず進められます(その列がすべて 0 の場合は、そもそも消去不要で次の列へ進める)。

証明(構成的・帰納法)

$n=1$ は自明。$n>1$ について示す。行列を

$$ A=\begin{pmatrix} a_{11} & a^\top\\[2pt] b & B \end{pmatrix}, \quad a^\top\in\mathbb{F}^{1\times(n-1)},\ b\in\mathbb{F}^{(n-1)\times 1},\ B\in\mathbb{F}^{(n-1)\times(n-1)} $$

の形に分けて議論する(1 行 1 列を“現在の位置”とみなす)。

ケース1:第1列に非零がある(標準的な場合)

第1列のどこかに非零成分があるので、置換行列 $P_1$ を選び、その非零成分を先頭(行1)に持ってくる。$\tilde A:=P_1A$ とおくと、$\tilde a_{11}\neq0$ で

$$ \tilde A=\begin{pmatrix} \tilde a_{11} & \tilde a^\top\\ \tilde b & \tilde B \end{pmatrix}. $$

このとき、乗数(multiplier) $\ell:=\tilde b/\tilde a_{11}$ と シュール補行列

$$S:=\tilde B-\ell\,\tilde a^\top$$

を定めると、ブロック三角分解

$$ \tilde A = \underbrace{\begin{pmatrix}1&0\\ \ell & I\end{pmatrix}}_{=:L_1\ \text{単位下三角}} \underbrace{\begin{pmatrix}\tilde a_{11} & \tilde a^\top\\ 0 & S\end{pmatrix}}_{=:U_1\ \text{上三角ブロック}} \tag{1} $$

が成り立つ(1 列目の消去を行った形)。

ここで帰納法の仮定を $S$ に適用:ある置換行列 $P_2$、単位下三角 $L_S$、上三角 $U_S$ が存在して

$$P_2 S=L_S U_S.$$

(1) に代入し、左から $\mathrm{diag}(1,P_2)$ を掛けると

$$ \underbrace{\begin{pmatrix}1&0\\ 0&P_2\end{pmatrix}}_{=:P’} \tilde A = \begin{pmatrix}1&0\\ 0&P_2\end{pmatrix} L_1 \begin{pmatrix}\tilde a_{11} & \tilde a^\top\\ 0 & S\end{pmatrix} = \underbrace{\Bigl(\begin{pmatrix}1&0\\ 0&P_2\end{pmatrix}L_1\begin{pmatrix}1&0\\ 0&P_2^\top\end{pmatrix}\Bigr)}_{=:L\ \text{単位下三角}} \underbrace{\begin{pmatrix}\tilde a_{11} & \tilde a^\top\\ 0 & L_S U_S\end{pmatrix}}_{=:U’}. $$

ここで $L$ は単位下三角、$U’=\begin{pmatrix}\tilde a_{11} & \tilde a^\top\\ 0 & L_S U_S\end{pmatrix}$ は下ブロックをさらに $U_S$ に吸収すれば上三角(の形)になる。結局

$$ (P’P_1)A=L\,U,\qquad \text{すなわち}\quad PA=LU $$

が得られる($P:=P’P_1$ は置換行列)。

要するに:
1) その列に非零があれば行を入れ替えて非零を先頭へ($P_1$)、
2) 乗数 $\ell$ で下を消してシュール補 $S$ を作る、
3) 右下の $S$ に同じことを再帰(帰納)適用、
4) 全体をまとめると $PA=LU$。

ケース2:第1列がすべて 0

この場合は行交換すら不要(どの行を先頭にしてもピボットは 0)。第1列はすでに上三角の形になっているので、そのまま

$$ A=\underbrace{\begin{pmatrix}1&0\\ 0&I\end{pmatrix}}_{L_1} \underbrace{\begin{pmatrix}0 & a^\top\\ 0 & B\end{pmatrix}}_{U_1} $$

とみなせる。右下ブロック $B$ に帰納法を適用し、$P_2 B=L_S U_S$。すると

$$ \begin{pmatrix}1&0\\ 0&P_2\end{pmatrix}A = \underbrace{\begin{pmatrix}1&0\\ 0&P_2\end{pmatrix}L_1}_{L} \underbrace{\begin{pmatrix}0 & a^\top\\ 0 & L_SU_S\end{pmatrix}}_{U}, $$

でやはり $PA=LU$($P=\mathrm{diag}(1,P_2)$)が得られる。
この場合は $U$ の対角(第1対角)に 0 が立つだけで、分解自体は問題なく成立する。


以上より存在が示せた

両ケースを併せると、任意の $A$ に対して帰納的に $P,L,U$ を構成できるため、

$$PA=LU$$

が常に成立する。

一意性について
  • 一般に $P$ は一意ではありません(同じ列に複数の非零があれば、どれをピボットに選ぶかで $P$ が変わる)。
  • ただし $P$ を固定し、かつ $L$ の対角を 1 に固定すれば、 $$PA=L_1U_1=L_2U_2 \;\Rightarrow\; L_2^{-1}L_1=U_2U_1^{-1}$$ で左辺は単位下三角、右辺は上三角。両方を満たすのは恒等行列のみなので $L_1=L_2, U_1=U_2$。つまり 与えられた $P$ のもとで $L,U$ は一意です。
付記(数値計算の実務)
  • 実装では安定性のため 部分ピボット(その列で絶対値最大の行を選ぶ)を用いるのが標準。
  • 長方行列にも拡張でき、$PA=LU$ で $U$ を上台形にする形が使われます。

具体例をみる

具体例として,行交換が必要になる

$$ A=\begin{pmatrix} 0&2&1\\ 1&1&0\\ 2&3&4 \end{pmatrix} $$

を扱います。第1対角要素が 0 なので,行交換つきLUが必要な状況です。最終的に

$$ PA=LU\quad(P:\ \text{置換行列},\ L:\ \text{単位下三角},\ U:\ \text{上三角}) $$

を得ます。以下,部分ピボットの手順で詳しく示します。

ステップ1:第1列でのピボット選択と消去

第1列の非零の中で $|2|$ が最大なので,行3↔行1 を交換(置換行列 $P_1$)。

$$ P_1=\begin{pmatrix}0&0&1\\0&1&0\\1&0&0\end{pmatrix},\quad P_1A= \begin{pmatrix} 2&3&4\\ 1&1&0\\ 0&2&1 \end{pmatrix}. $$

この列の乗数(multiplier)は

$$ \ell_{21}=\frac{1}{2},\qquad \ell_{31}=\frac{0}{2}=0. $$

行2 ← 行2 − $\ell_{21}$ 行1,行3 ← 行3 − $\ell_{31}$ 行1 を行うと

$$ \begin{pmatrix} 2&3&4\\ 0&-\tfrac12&-2\\ 0&2&1 \end{pmatrix}. $$

(この段階での「暫定」下三角は,対角1で第1列下に $(\ell_{21},\ell_{31})=(\tfrac12,0)$ を持つ形。)

ステップ2:第2列でのピボット選択と消去

第2列の候補 $|-\tfrac12|$ と $|2|$ を比べて 行3↔行2 を交換(置換行列 $P_2$)。

$$ P_2=\begin{pmatrix}1&0&0\\0&0&1\\0&1&0\end{pmatrix},\quad P_2\!\begin{pmatrix} 2&3&4\\ 0&-\tfrac12&-2\\ 0&2&1 \end{pmatrix} = \begin{pmatrix} 2&3&4\\ 0&2&1\\ 0&-\tfrac12&-2 \end{pmatrix}. $$

第2列の乗数は

$$ \ell_{32}=\frac{-\tfrac12}{2}=-\tfrac14. $$

行3 ← 行3 − $\ell_{32}$ 行2(= 行3 + $\tfrac14$ 行2)で

$$ \begin{pmatrix} 2&3&4\\ 0&2&1\\ 0&0&-\tfrac74 \end{pmatrix} =:U $$

が得られ,上三角になりました。

注意(L の更新):ステップ2の行入替(行3↔行2)は,すでに確定していた第1列の乗数 $(\ell_{21},\ell_{31})=(\tfrac12,0)$ の位置も同じように入れ替えます。したがって最終的な第1列の下三角成分は $(0,\tfrac12)$ になります。

まとめ:$P,L,U$ の構成と検算

置換の合成 $P=P_2P_1$ は

$$ P=P_2P_1= \begin{pmatrix}0&0&1\\1&0&0\\0&1&0\end{pmatrix}, \qquad PA= \begin{pmatrix} 2&3&4\\ 0&2&1\\ 1&1&0 \end{pmatrix}. $$

下三角 $L$ は,対角 1,その下に最終的な乗数を配置して

$$ L=\begin{pmatrix} 1&0&0\\ 0&1&0\\ \tfrac12&-\tfrac14&1 \end{pmatrix}. $$

(第1列:$(2,1)=0,(3,1)=\tfrac12$/第2列:$(3,2)=-\tfrac14$)

上三角 $U$ は前節のとおり

$$ U=\begin{pmatrix} 2&3&4\\ 0&2&1\\ 0&0&-\tfrac74 \end{pmatrix}. $$

検算

$$ LU= \begin{pmatrix} 2&3&4\\ 0&2&1\\ 1&1&0 \end{pmatrix} =PA, $$

すなわち

$$ \boxed{\,PA=LU\,} $$

が成立しました。

ポイントのおさらい

  • 任意の行列に対し,列ごとに非零(あるいは大きい)成分を上へ持ってくる行交換 $P_k$ を入れると,必ず消去を進められる。
  • 途中で行を入れ替えたときは,それ以前の列で確定済みの乗数(= $L$ の下三角成分)も同じ並び替えを行う。
  • 以上を繰り返すことで,必ず $PA=LU$ を得る(定理B)。

7. QR分解

定理15.4: QR分解

$A\in\mathbb{R}^{m\times n}$($m\ge n$)が列フルランク($\operatorname{rank}A=n$)なら,
QR分解が存在する:

$$A=QR,$$

ここで

  • $Q\in\mathbb{R}^{m\times n}$ は 列が正規直交($Q^{\top}Q=I_n$),
  • $R\in\mathbb{R}^{n\times n}$ は 上三角 かつ対角成分を正に取れる。
さらに 対角 $r_{ii}>0$ と規約すれば,この分解は 一意 である。
(平方の場合 $m=n$ なら $Q$ は直交行列($Q^{\top}Q=QQ^{\top}=I$)になる。)

証明をみる

$A=[a_1\ \cdots\ a_n]$ と列で書く。列フルランクより $\{a_1,\dots,a_n\}$ は一次独立で,以下の手続きで直交化・正規化ができる。

ステップ1
$r_{11}:=\|a_1\|>0$, $q_1:=a_1/r_{11}$。
各 $j\ge2$ について $r_{1j}:=q_1^{\top}a_j$, 残差 $a_j^{(2)}:=a_j-r_{1j}q_1$。

ステップk ($2\le k\le n$)
(すでに $q_1,\dots,q_{k-1}$ 構成済みとする)
$r_{kk}:=\bigl\|a_k^{(k)}\bigr\|>0$, $q_k:=a_k^{(k)}/r_{kk}$。
各 $j\ge k+1$ について $r_{kj}:=q_k^{\top}a_j^{(k)}$, $a_j^{(k+1)}:=a_j^{(k)}-r_{kj}q_k$。

すると各列 $a_j$ は

$$a_j=\sum_{i=1}^{j} q_i\, r_{ij}\qquad (j=1,\dots,n)$$

と展開される。列を並べると

$$ A = [q_1\ \cdots\ q_n]\, \begin{pmatrix} r_{11} & r_{12} & \cdots & r_{1n}\\ 0 & r_{22} & \cdots & r_{2n}\\ \vdots & \ddots & \ddots & \vdots\\ 0 & \cdots & 0 & r_{nn} \end{pmatrix} =: QR, $$

ここで $Q^{\top}Q=I_n$, $R$ は上三角,対角 $r_{ii}>0$。よって存在が示された。■

一意性(対角を正に規約した場合)

$A=Q_1R_1=Q_2R_2$($Q_i^{\top}Q_i=I,\ R_i$ 上三角,$\operatorname{diag}(R_i)>0$)とすると

$$Q_1^{\top}Q_2 = R_1 R_2^{-1}.$$

左辺は直交行列,右辺は上三角行列。直交かつ上三角で対角正な行列は恒等行列しかないので, $Q_1^{\top}Q_2=I\Rightarrow Q_1=Q_2,\ R_1=R_2$。■

複素数体の場合

$\mathbb{C}$ 上では $Q^\ast Q=I$(ユニタリ),$R$ 上三角,対角 $\operatorname{diag}(R)$ を正の実数に取れば同様に存在・一意。

参考:ランク落ちや列ピボット

列が一次独立でない場合でも,列ピボット付き QR

$$ AP = Q \begin{pmatrix} R_{11} & R_{12}\\ 0 & 0 \end{pmatrix} $$

($P$ 置換,$\operatorname{rank}A=r=\dim R_{11}$)が取れる。


まとめ

  • 列フルランクの $A$ は必ず $A=QR$($Q$ 直交/ユニタリ,$R$ 上三角)。
  • 対角を正に取れば一意。
  • 構成法はグラム–シュミット(理論・概念),ハウスホルダー(実装・数値安定)の二本柱。

具体例をみる

具体例として、次の $4\times3$ 行列を扱います(列は一次独立):

$$ A=\begin{pmatrix} 1&\;\;1&\;\;1\\ 1&-1&\;\;0\\ 0&\;\;0&\;\;1\\ 0&\;\;0&\;\;0 \end{pmatrix} =\bigl[a_1\ a_2\ a_3\bigr],\quad a_1=\begin{pmatrix}1\\1\\0\\0\end{pmatrix},\ a_2=\begin{pmatrix}1\\-1\\0\\0\end{pmatrix},\ a_3=\begin{pmatrix}1\\0\\1\\0\end{pmatrix}. $$

目標(QR)

列直交な $Q\in\mathbb{R}^{4\times3}$($Q^\top Q=I_3$)と上三角 $R\in\mathbb{R}^{3\times3}$ を作って $$A=QR$$ とする。以下、古典的グラム–シュミット法で進めます。

ステップ1:1列目の直交化

$$ r_{11}=\|a_1\|=\sqrt{1^2+1^2}=\sqrt2,\qquad q_1=\frac{a_1}{r_{11}}=\frac{1}{\sqrt2}\begin{pmatrix}1\\[2pt]1\\[2pt]0\\[2pt]0\end{pmatrix}. $$

他列への係数: $$r_{12}=q_1^\top a_2=\frac{1}{\sqrt2}(1-1)=0,\qquad r_{13}=q_1^\top a_3=\frac{1}{\sqrt2}(1+0)=\frac{1}{\sqrt2}.$$

2列目の残差(直交成分): $$a_2^{(2)}=a_2-r_{12}q_1=a_2=\begin{pmatrix}1\\-1\\0\\0\end{pmatrix}.$$

ステップ2:2列目の直交化

$$ r_{22}=\|a_2^{(2)}\|=\sqrt{1^2+(-1)^2}=\sqrt2,\qquad q_2=\frac{a_2^{(2)}}{r_{22}}=\frac{1}{\sqrt2}\begin{pmatrix}1\\[2pt]-1\\[2pt]0\\[2pt]0\end{pmatrix}. $$

3列目への係数: $$r_{23}=q_2^\top a_3=\frac{1}{\sqrt2}(1+0)=\frac{1}{\sqrt2}.$$

3列目の残差: $$ a_3^{(3)}=a_3-r_{13}q_1-r_{23}q_2 =\begin{pmatrix}1\\0\\1\\0\end{pmatrix} -\frac{1}{\sqrt2}\!\cdot\!\frac{1}{\sqrt2}\!\begin{pmatrix}1\\1\\0\\0\end{pmatrix} -\frac{1}{\sqrt2}\!\cdot\!\frac{1}{\sqrt2}\!\begin{pmatrix}1\\-1\\0\\0\end{pmatrix} =\begin{pmatrix}0\\0\\1\\0\end{pmatrix}. $$

ステップ3:3列目の直交化

$$ r_{33}=\|a_3^{(3)}\|=1,\qquad q_3=\frac{a_3^{(3)}}{r_{33}}=\begin{pmatrix}0\\0\\1\\0\end{pmatrix}. $$

まとめ:$Q$ と $R$

$$ Q=\bigl[q_1\ q_2\ q_3\bigr] = \begin{pmatrix} \frac{1}{\sqrt2}&\frac{1}{\sqrt2}&0\\[4pt] \frac{1}{\sqrt2}&-\frac{1}{\sqrt2}&0\\[4pt] 0&0&1\\[2pt] 0&0&0 \end{pmatrix}, \qquad R=\begin{pmatrix} \sqrt2&0&\frac{1}{\sqrt2}\\[2pt] 0&\sqrt2&\frac{1}{\sqrt2}\\[2pt] 0&0&1 \end{pmatrix}. $$

検算:各列について $$ \begin{aligned} QR\,e_1&=\sqrt2\,q_1=a_1,\\ QR\,e_2&=\sqrt2\,q_2=a_2,\\ QR\,e_3&=\tfrac{1}{\sqrt2}q_1+\tfrac{1}{\sqrt2}q_2+1\cdot q_3=a_3, \end{aligned} $$ よって $A=QR$。また $Q^\top Q=I_3$、$R$ は上三角、対角 $(\sqrt2,\sqrt2,1)>0$ を満たしています。


8. 極分解(Polar decomposition)

(1) 部分等長の定義

定義15.5: 部分等長

線形写像 $U:\mathbb{C}^n\to\mathbb{C}^m$ が部分等長であるとは,ある部分空間 $M\subset\mathbb{C}^n$ について

$$\|Ux\|=\|x\|\quad(\forall x\in M),\qquad Ux=0\quad(\forall x\perp M)$$

が成り立つことを言います。このとき $$U^\ast U=P_M,\qquad UU^\ast=P_N$$ が成り,$P_M,P_N$ は直交射影です(下の「初期空間」「終域」に対応)。

(2) 初期空間の定義

定義15.6: 初期空間

部分等長 $U$ に付随する「等長に保つ側の空間」で, $$\mathcal{I}(U):=\overline{\operatorname{Im}(U^\ast)}=(\ker U)^\perp.$$ 極分解 $A=UH$(左極分解,$H=(A^\ast A)^{1/2}\succeq0$)では $$\mathcal{I}(U)=\overline{\operatorname{Im}(A^\ast)}=\overline{\operatorname{Im}(H)},\qquad U^\ast U=P_{\mathcal{I}(U)}.$$

(3) 終域の定義

定義15.7: 終域

部分等長 $U$ の像側の空間で, $$\mathcal{F}(U):=\overline{\operatorname{Im}(U)}.$$ 極分解では $$\mathcal{F}(U)=\overline{\operatorname{Im}(A)},\qquad UU^\ast=P_{\mathcal{F}(U)}.$$

直感:$U$ は「初期空間 $\mathcal{I}(U)$ 上では等長(長さ保存)に働き,その直交補は 0 に落とす」。像は終域 $\mathcal{F}(U)$ になります。

(4) 左極分解

定理15.8: 左極分解

任意の行列 $A\in\mathbb{C}^{m\times n}$ に対して,次を満たす行列 $U$ と $H$ が存在する:

$$A=UH,$$

  • $H$ はエルミート半正定値で $$H=\bigl(A^\ast A\bigr)^{1/2}\in\mathbb{C}^{n\times n}$$ (特異値の非負平方根)であり,一意に定まる。
  • $U\in\mathbb{C}^{m\times n}$ は部分等長(partial isometry)で、
    初期空間が $\overline{\operatorname{Im}(A^\ast)}$、終域が $\overline{\operatorname{Im}(A)}$。
    直感的には「向きだけを与える回転(+埋め込み)」の役割で、 $$U^\ast U=P_{\operatorname{Im}(A^\ast)},\qquad UU^\ast=P_{\operatorname{Im}(A)}$$ が成り立ちます($P$ は直交射影)。
$U$の与え方は複数ありますが、ここでは特異値分解を利用した与え方を紹介します。

$A=\tilde U\,\Sigma\,V^\ast$($\tilde U\in\mathbb{C}^{m\times m}$ ユニタリ,$V\in\mathbb{C}^{n\times n}$ ユニタリ,$\Sigma=\operatorname{diag}(\sigma_1,\dots,\sigma_r,0,\dots)$)とすると

$$U=\tilde U\,V^\ast\,$$


$U$は,$A$ がそれぞれ列(または行)フルランクのとき一意。

証明をみる
  1. $A^\ast A\succeq0$ なので,唯一の正の平方根 $$H=(A^\ast A)^{1/2}\succeq0$$ が存在する。
  2. 線形写像 $U$ を $$U(Hy):=Ay\quad(\forall\,y),\qquad U|_{\ker H}:=0$$ で定義する。よく定まること:もし $Hy_1=Hy_2$ なら $H(y_1-y_2)=0\Rightarrow y_1-y_2\in\ker H=\ker(A^\ast A)\subseteq\ker A$,ゆえに $Ay_1=Ay_2$。
  3. 等長性:任意の $y$ に対し $$\|Hy\|^2=\langle y,A^\ast Ay\rangle=\|Ay\|^2=\|U(Hy)\|^2.$$ よって $U$ は $\operatorname{Im}H$ 上でノルム保存,$(\operatorname{Im}H)^\perp=\ker H$ では 0。すなわち部分等長で $$U^\ast U=P_{\operatorname{Im}H},\quad UU^\ast=P_{\overline{\operatorname{Im}A}}.$$
  4. 定義より $$(U H)y=U(Hy)=Ay\quad(\forall y)\ \Rightarrow\ UH=A.$$
  5. 一意性:$H$ は $A^\ast A$ の正の平方根として一意。$A=U_1H=U_2H$ なら $(U_1-U_2)$ は $\operatorname{Im}H$ 上で 0 なので,$\operatorname{Im}H$ 上では $U_1=U_2$(通常 $U|_{\ker H}=0$ を採用する)。
以下では$U$が$A$の特異値分解により得られる行列で与えられることを示す。

薄い SVD を $$A=U_r\,\Sigma_r\,V_r^\ast,\quad U_r\in\mathbb{C}^{m\times r},\ \Sigma_r=\mathrm{diag}(\sigma_1,\dots,\sigma_r)>0,\ V_r\in\mathbb{C}^{n\times r}$$ ($r=\operatorname{rank}A$)とする。このとき $$H=(A^\ast A)^{1/2}=V_r\,\Sigma_r\,V_r^\ast\ (+\ 0\ \text{on }(\operatorname{Im}V_r)^\perp),$$ $$\boxed{\,U=U_r\,V_r^\ast\,}$$ と置けば $$U\,H=(U_rV_r^\ast)\,(V_r\Sigma_rV_r^\ast)=U_r\Sigma_rV_r^\ast=A.$$

さらに $$U^\ast U=V_rV_r^\ast=P_{\operatorname{Im}(A^\ast)},\qquad UU^\ast=U_rU_r^\ast=P_{\operatorname{Im}(A)}$$ で,$U$ が部分等長であることも一目瞭然。

まとめ

  • $H=(A^\ast A)^{1/2}$ を取り,$U$ を「$\operatorname{Im}H$ 上で $Hy\mapsto Ay$,$\ker H$ を 0」によって定めると $A=U H$。
  • 計算には $U=A\,H^{+}$(列フルなら $U=A\,(A^\ast A)^{-1/2}$)。
  • 幾何学的には SVD $A=U_r\Sigma_rV_r^\ast$ から $U=U_rV_r^\ast$ を使うと分かりやすい。

具体例をみる

具体例として、次の $4\times3$ 行列 $$ A=\begin{pmatrix} 1&1&1\\ 1&-1&0\\ 0&0&1\\ 0&0&0 \end{pmatrix} \quad(\operatorname{rank}A=3) $$ の左極分解 $A=U\,H$を、SVD を用いて具体的に求めます(実数体。随伴 $^{\ast}$ は転置 $^{\top}$ と同じ)。

下準備:SVD

$A$ の(薄い)SVD は $$A=U_r\,\Sigma_r\,V_r^{\top}$$ で、(小数は約6桁) $$ U_r= \begin{pmatrix} -0.923880&\;\;0&-0.382683\\ \;\;0&-1&\;\;0\\ -0.382683&\;\;0&\;\;0.923880\\ \;\;0&\;\;0&\;\;0 \end{pmatrix}, \quad \Sigma_r=\operatorname{diag}(1.847759,\;1.414214,\;0.765367), $$ $$ V_r= \begin{pmatrix} -0.500000&-0.707107&-0.500000\\ -0.500000&\;\;0.707107&-0.500000\\ -0.707107&\;\;0&\;\;0.707107 \end{pmatrix}. $$ 特異値は $\sigma_1\approx1.847759,\ \sigma_2=\sqrt2,\ \sigma_3\approx0.765367$。

参考のための行列: $$ A^{\top}A=\begin{pmatrix}2&0&1\\0&2&1\\1&1&2\end{pmatrix},\qquad AA^{\top}=\begin{pmatrix}3&0&1&0\\0&2&0&0\\1&0&1&0\\0&0&0&0\end{pmatrix}. $$

左極分解 $A=U\,H$($H=(A^{\top}A)^{1/2}$)

SVD の性質から $$H=(A^{\top}A)^{1/2}=V_r\,\Sigma_r\,V_r^{\top},\qquad U=U_r\,V_r^{\top}.$$

計算結果

$$ H\approx \begin{pmatrix} \;1.360388&-0.053825&\;0.382683\\ -0.053825&\;1.360388&\;0.382683\\ \;0.382683&\;0.382683&\;1.306563 \end{pmatrix} \quad(\text{対称・半正定値},\ H^2=A^{\top}A), $$ $$ U\approx \begin{pmatrix} \;0.653281&\;0.653281&\;0.382683\\ \;0.707107&-0.707107&\;0\\ -0.270598&-0.270598&\;0.923880\\ \;0&\;0&\;0 \end{pmatrix}. $$

検算

$$UH=A\quad(\text{数値的に一致}),\qquad U^{\top}U=I_3\ \ (\text{本例は列フルランクなので }U\text{は等長}).$$

まとめ(この例の極分解)

  • 左極分解:$A=U\,H$、 $U=U_rV_r^{\top}$(等長)、$H=V_r\Sigma_rV_r^{\top}=(A^{\top}A)^{1/2}$。
  • 本例は列フルランクなので $U^{\top}U=I_3$($U$ は等長)。正方可逆なら $U$ はユニタリになります。

(5) 右極分解

定理15.9: 右極分解
任意の行列 $A\in\mathbb{C}^{m\times n}$ に対して,次を満たす行列 $V$ と $K$ が存在する:

$$A=KV,$$

  • $K$ はエルミート半正定値で $$K=\bigl(AA^\ast\bigr)^{1/2}\in\mathbb{C}^{n\times n}$$ (特異値の非負平方根)であり,一意に定まる。
  • $V\in\mathbb{C}^{m\times n}$ は部分等長(partial isometry)で、
    初期空間が $\overline{\operatorname{Im}(A^\ast)}$、終域が $\overline{\operatorname{Im}(A)}$。
    直感的には「向きだけを与える回転(+埋め込み)」の役割で、 $$V^\ast V=P_{\operatorname{Im}(A^\ast)},\qquad VV^\ast=P_{\operatorname{Im}(A)}$$ が成り立ちます($P$ は直交射影)。
    なお、上記から分かるように、実は左・右の分解で現れる部分等長は同一で、$V=U$ と見なせます。
 $V=U$なので、以下のように与えられます。

$A=\tilde U\,\Sigma\,V^\ast$($\tilde U\in\mathbb{C}^{m\times m}$ ユニタリ,$V\in\mathbb{C}^{n\times n}$ ユニタリ,$\Sigma=\operatorname{diag}(\sigma_1,\dots,\sigma_r,0,\dots)$)とすると

$$U=\tilde U\,V^\ast\,$$

$V$は,$A$ がそれぞれ列(または行)フルランクのとき一意です。

証明は左極分解と倣えばできますので省略します。

具体例をみる

具体例として、次の $4\times3$ 行列 $$ A=\begin{pmatrix} 1&1&1\\ 1&-1&0\\ 0&0&1\\ 0&0&0 \end{pmatrix} \quad(\operatorname{rank}A=3) $$ の右極分解 $A=K\,V$ を、SVD を用いて具体的に求めます(実数体。随伴 $^{\ast}$ は転置 $^{\top}$ と同じ)。

下準備:SVD

$A$ の(薄い)SVD は $$A=U_r\,\Sigma_r\,V_r^{\top}$$ で、(小数は約6桁) $$ U_r= \begin{pmatrix} -0.923880&\;\;0&-0.382683\\ \;\;0&-1&\;\;0\\ -0.382683&\;\;0&\;\;0.923880\\ \;\;0&\;\;0&\;\;0 \end{pmatrix}, \quad \Sigma_r=\operatorname{diag}(1.847759,\;1.414214,\;0.765367), $$ $$ V_r= \begin{pmatrix} -0.500000&-0.707107&-0.500000\\ -0.500000&\;\;0.707107&-0.500000\\ -0.707107&\;\;0&\;\;0.707107 \end{pmatrix}. $$ 特異値は $\sigma_1\approx1.847759,\ \sigma_2=\sqrt2,\ \sigma_3\approx0.765367$。

参考のための行列: $$ A^{\top}A=\begin{pmatrix}2&0&1\\0&2&1\\1&1&2\end{pmatrix},\qquad AA^{\top}=\begin{pmatrix}3&0&1&0\\0&2&0&0\\1&0&1&0\\0&0&0&0\end{pmatrix}. $$

右極分解 $A=K\,V$($K=(AA^{\top})^{1/2}$)

同様に $$K=(AA^{\top})^{1/2}=U_r\,\Sigma_r\,U_r^{\top},\qquad V=U_r\,V_r^{\top}.$$ (実は $V=U$。左・右極分解は同じ部分等長を共有します。)

計算結果

$$ K\approx \begin{pmatrix} \;1.689246&\;0&\;0.382683&\;0\\ \;0&\;1.414214&\;0&\;0\\ \;0.382683&\;0&\;0.923880&\;0\\ \;0&\;0&\;0&\;0 \end{pmatrix} \quad(\text{対称・半正定値},\ K^2=AA^{\top}), $$ $$V=U\ \ (\text{上と同じ行列}).$$

検算

$$KV=A\quad(\text{数値的に一致}).$$

まとめ(この例の極分解)

  • 右極分解:$A=K\,V$、 $K=U_r\Sigma_rU_r^{\top}=(AA^{\top})^{1/2}$、$V=U_rV_r^{\top}=U$。
  • 本例は列フルランクなので $U^{\top}U=I_3$($U$ は等長)。正方可逆なら $U$ はユニタリになります。

(6) 可逆行列の極分解

定理15.10: 可逆行列の極分解

$A\in\mathbb{C}^{n\times n}$ が可逆なら,極分解は

$$A=QH,\qquad Q^\ast Q=QQ^\ast=I,\quad H=H^\ast\succ0,$$

と書け,$Q$(ユニタリ)も $H$(正定値)も一意に定まる。具体的に $$H=(A^\ast A)^{1/2},\qquad Q=AH^{-1}.$$

証明をみる

証明

1) $H$ の存在・性質
  • $A^{*}A$ はエルミート半正定値($\langle x,(A^{*}A)x\rangle=\|Ax\|^{2}\ge0$)。
  • $A$ が可逆なら $A^{*}A$ は正定値($\|Ax\|=0\Rightarrow x=0$)。
  • スペクトル定理より,あるユニタリ $U$ と正の固有値 $\sigma_1^2,\dots,\sigma_n^2$ を用いて $$A^{*}A=U\,\mathrm{diag}(\sigma_1^2,\dots,\sigma_n^2)\,U^{*}.$$ 主平方根を $$H:=(A^{*}A)^{1/2}:=U\,\mathrm{diag}(\sigma_1,\dots,\sigma_n)\,U^{*}$$ と定めると,$H$ はエルミート正定値で $H^{2}=A^{*}A$。これは一意である。
2) $Q:=AH^{-1}$ がユニタリ

$H\succ0$ なので $H^{-1}$ が存在する。すると $$Q^{*}Q=(H^{-1})^{*}A^{*}A\,H^{-1} =H^{-1}(A^{*}A)H^{-1} =H^{-1}H^{2}H^{-1}=I.$$ よって $Q$ は等長で,正方ゆえ $QQ^{*}=I$ も成り,$Q$ はユニタリ。

3) 分解式

定義からただちに $$QH=(AH^{-1})H=A.$$

4) 一意性

もし $A=Q_1H_1$ が別の極分解($Q_1$ ユニタリ,$H_1$ 正定値エルミート)なら $$A^{*}A=H_1Q_1^{*}Q_1H_1=H_1^{2}.$$ 正の平方根は一意なので $H_1=(A^{*}A)^{1/2}=H$,したがって $$Q_1=AH_1^{-1}=AH^{-1}=Q.$$

まとめ

可逆 $A$ に対し, $$H=(A^{*}A)^{1/2}\ \ (\text{正定値}),\qquad Q=AH^{-1}\ \ (\text{ユニタリ})$$ とおけば,$A=QH$ が成り立ち,しかもこの $Q,H$ は一意である。これが極分解(polar decomposition)の標準形である。


具体例をみる

具体例で、極分解 $A=QH$ を「$H=(A^\top A)^{1/2}$、$Q=AH^{-1}$」から計算してみます(実数行列なので $^\ast\!=^\top$)。

例に使う可逆行列

$$ A=\begin{pmatrix} 0 & -1 & 0\\ 1 & \ \ 0 & 0\\ 0 & \ \ 0 & 2 \end{pmatrix}. $$ これは $(x,y)$-平面での $90^\circ$ 回転と、$z$ 方向の伸縮(倍率 2)を合わせた行列で、$\det A=2\neq0$ なので可逆です。

ステップ1:$H=(A^\top A)^{1/2}$ を求める

$$ A^\top=\begin{pmatrix} 0 & 1 & 0\\ -1 & 0 & 0\\ 0 & 0 & 2 \end{pmatrix},\qquad A^\top A =\begin{pmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 4 \end{pmatrix}. $$ よって $$ H=(A^\top A)^{1/2} =\begin{pmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 2 \end{pmatrix}. $$ (本例では $A^\top A$ が対角なので、その平方根は各対角要素の平方根を取るだけです。)$H$ は対称正定値で、確かに $H^2=A^\top A$ を満たします。

ステップ2:$Q=AH^{-1}$ を求める

$$ H^{-1}=\begin{pmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & \tfrac12 \end{pmatrix}. $$ したがって $$ Q=AH^{-1} =\begin{pmatrix} 0 & -1 & 0\\ 1 & \ \ 0 & 0\\ 0 & \ \ 0 & 1 \end{pmatrix}. $$

ステップ3:性質のチェック

1) ユニタリ(直交)性(実行列なので直交性)

$$ Q^\top Q= \begin{pmatrix} 0 & 1 & 0\\ -1 & 0 & 0\\ 0 & 0 & 1 \end{pmatrix} \begin{pmatrix} 0 & -1 & 0\\ 1 & \ \ 0 & 0\\ 0 & \ \ 0 & 1 \end{pmatrix} =I_3. $$ よって $Q$ は直交行列。

2) 分解の確認

$$ QH= \begin{pmatrix} 0 & -1 & 0\\ 1 & \ \ 0 & 0\\ 0 & \ \ 0 & 1 \end{pmatrix} \begin{pmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 2 \end{pmatrix} = \begin{pmatrix} 0 & -1 & 0\\ 1 & \ \ 0 & 0\\ 0 & \ \ 0 & 2 \end{pmatrix} =A. $$

まとめ(極分解)

この具体例では

$$ \boxed{ \;A=QH,\quad Q=\begin{pmatrix} 0 & -1 & 0\\ 1 & \ \ 0 & 0\\ 0 & \ \ 0 & 1 \end{pmatrix}\ \text{(直交)},\quad H=\begin{pmatrix} 1 & 0 & 0\\ 0 & 1 & 0\\ 0 & 0 & 2 \end{pmatrix}\ \text{(対称正定値)}\; } $$

となり、 $$H=(A^\top A)^{1/2},\qquad Q=AH^{-1}$$ から素直に計算できました。幾何学的には「回転 $Q$」と「伸縮 $H$」に分かれています。


4. 同時対角化

ここでは可換な行列族の同時三角化・同時対角化について扱います。以下、体は $\mathbb{C}$ とします(固有値が必ず存在するため議論が簡潔)。

(1) 同時固有ベクトルの定理

定理15.11: 同時固有ベクトル
$A,B\in\mathbb{C}^{n\times n}$ が可換($AB=BA$)とする。このとき、$A$ の任意の固有値 $\lambda$ に対し、その固有空間 $$ E_\lambda(A)=\ker(A-\lambda I) $$ は $B$ によって不変($B(E_\lambda(A))\subseteq E_\lambda(A)$)である。したがって $E_\lambda(A)\ne{0}$ なら、その中に $A$ と $B$ の共通固有ベクトルが存在する($B$ を $E_\lambda(A)$ に制限して固有ベクトルを取ればよい)。

証明をみる $v\in E_\lambda(A)$、すなわち $(A-\lambda I)v=0$ とする。可換性 $AB=BA$ から $$ (A-\lambda I)(Bv)=ABv-\lambda Bv=BA v-\lambda Bv=B(Av-\lambda v)=B\cdot 0=0 $$ よって $Bv\in E_\lambda(A)$。すなわち $E_\lambda(A)$ は $B$-不変。$\mathbb{C}$ 上では $B|{E_\lambda(A)}$ は必ず固有ベクトルを持つので、それが $A$ と $B$ の共通固有ベクトルになる。

(2) 同時上三角化の定理

定理15.12: 同時上三角化
可換な行列族 $\mathcal{F}={A_1,\dots,A_m}\subset\mathbb{C}^{n\times n}$ は同時に上三角化できる。すなわち可逆行列 $S$ が存在して、全ての $j$ について $$ S^{-1}A_j S\ \text{が上三角} $$ となる。

証明をみる

定理より、$A_1,\cdots, A_m$が可換ならばそれらの全て対して共通の固有ベクトル$\mathbf{v}_1$とることができ、$A_i\mathbf{v}_1=\lambda_{i_1}\mathbf{v}_1$となる。

そこで、$A_i$の列空間を$\mathbf{v}_1$と適当に延長した$\mathcal B_1=\{v_1,\,w_2,\,\dots,\,w_m\}$による基底で張り直し、線形変換$A_i$を基底$\mathcal B_1$による座標で表し直した表現行列$[A_i]_{\mathcal B_1}$を考える。

$[A_i]_{\mathcal B_1}$は$\mathcal B_1$の基底を並べた行列を$B_1$とおくと$[A_i]_{\mathcal B_1}$ = $B_1^{-1}A_i B_1$である。

これは$[A_i]_{\mathcal B_1}$について、$\mathcal B_1$のある基底を$\mathbf{x}_i$と書き直すと、$A_i\mathbf{x}_i = \sum_{j=1}^{n}c_{ij}\mathbf{x}_j$と表した際の$c_{ij}$を並べた行列であることから、以下のように変形して示せる。

$$ \begin{align} A_i\mathbf{x}_i &= \sum_{j=1}^{n} c_{ij}\mathbf{x}_j = (\mathbf{b}_1, \cdots, \mathbf{b}_n)\begin{pmatrix}c_{i1} \\ \vdots \\ c_{in}\end{pmatrix} \\ \iff A_i(\mathbf{x}_1, \cdots, \mathbf{x}_n) &= B \begin{pmatrix} c_{11} & c_{21} & \cdots & c_{n1} \\ c_{12} & c_{22} & \cdots & c_{n2} \\ \vdots & \vdots & \ddots & \vdots \\ c_{1n} & c_{2n} & \cdots & c_{nn} \end{pmatrix} = B_1 [A_i]_{\mathcal B_1} \\ \iff [A_i]_{\mathcal B_1} = B_1^{-1}A_i B_1 \end{align} $$

$[A_i]_{\mathcal B_1}$の$j$列目は$A_i\mathbf{x}_j$の$\mathcal B_1$上での座標だから、$B_1$の$1$列目が共通の固有ベクトル$\mathbf{v}_1$であったことを考えると、$A_i\mathbf{v}_1 = \lambda_{i_1}\mathbf{v}_1$より$[A_i]_{\mathcal B_1}$の1列目は$(\lambda_{i_1}, 0, \cdots, 0)^T$と第1成分以外は$0$になることが分かる。従って、以下が分かる。

$$ \begin{align} [A_i]_{\mathcal B_1} &= B_1^{-1}A_i B_1 \\ &= \begin{pmatrix} \lambda_{i_1} & *\\ 0 & S_{i_1} \end{pmatrix}, \end{align} \quad (i=1, \cdots, m) $$

ここで$S_{i_1}$と$S_{j_1}$が可換であるか検討する。まず、以下から$[A_i]_{\mathcal B_1}$と$[A_j]_{\mathcal B}$が可換であることを示す。

$$ \begin{align} [A_i]_{\mathcal B_1}[A_j]_{\mathcal B_1} &= (B_1^{-1}A_i B_1)(B_1^{-1}A_j B_1) \\ &= B_1^{-1}A_i A_j B_1 \\ &= B_1^{-1}A_j A_i B_1 \\ &= (B_1^{-1}A_j B_1)(B_1^{-1}A_i B_1) \end{align} $$

続いて、成分同士を比較するためブロックのまま積を計算する。

$$ \begin{align} \begin{pmatrix} \lambda_{i_1} & *\\ 0 & S_{i_1} \end{pmatrix} \begin{pmatrix} \lambda_{j_1} & *\\ 0 & S_{j_1} \end{pmatrix} = \begin{pmatrix} \lambda_{j_1} & *\\ 0 & S_{j_1} \end{pmatrix} \begin{pmatrix} \lambda_{i_1} & *\\ 0 & S_{i_1} \end{pmatrix} \\ \iff \begin{pmatrix} \lambda_{i_1}\lambda_{j_1} & *\\ 0 & S_{i_1}S_{j_1} \end{pmatrix} = \begin{pmatrix} \lambda_{j_1}\lambda_{i_1} & *\\ 0 & S_{j_1}S_{i_1} \end{pmatrix} \end{align} $$

以上より、$S_{i_1}S_{j_1} = S_{j_1}S_{i_1}$となって可換であることが分かる。

次に$S_{i_1}\, (i=2, \cdots, m)$も互いに可換であることから、同様に同時固有ベクトル$\mathbf{v}_2$をとり、それを用いた基底$\mathcal B_2 = \{\mathbf{v}_2, \cdots\}$を並べた行列を$B_2$とすれば、

$$ \begin{align} [S_{i_1}]_{\mathcal B_2} &= B_2^{-1}S_{i_1} B_2 \\ &= \begin{pmatrix} \lambda_{i_2} & * \\ 0 & S_{i_2} \end{pmatrix} \end{align} $$

従って、

$$ B_2′ = \begin{pmatrix}1 & 0 \\ 0 & B_2\end{pmatrix} (B_2^{-1})’ = \begin{pmatrix}1 & 0 \\ 0 & B_2^{-1}\end{pmatrix} $$

とおけば、

$$ \begin{align} (B_2^{-1})’B_1^{-1}A_i B_1 B_2′ &=(B_2^{-1})’\begin{pmatrix}\lambda_{i_1}&*\\0&S_{i_1}\end{pmatrix} B_2′ \\ &= \begin{pmatrix}1&0\\0&B_2^{-1}\end{pmatrix} \begin{pmatrix}\lambda_{i_1}&*\\0&S_{i_1}\end{pmatrix} \begin{pmatrix}1&0\\0&B_2\end{pmatrix} \\ &= \begin{pmatrix}\lambda_{i_1}&*\\0&B_2^{-1}S_{i_1}\end{pmatrix} \begin{pmatrix}1&0\\0&B_2\end{pmatrix} \\ &= \begin{pmatrix}\lambda_{i_1}&*\\0&B_2^{-1}S_{i_1}B_2\end{pmatrix} \\ &= \begin{pmatrix}\lambda_{i_1}&*&*\\0&\lambda_{i_2}&*\\0&0&S_{i_2}\end{pmatrix} \\ \end{align} $$

のようにして適当な$B_*$で$A_i$を繰り返し挟み込むことで上三角化が可能であることが分かる。


(3) 同時対角化の定理

定理15.13: 同時対角化

$A_1,\dots,A_m$ が正規($A_iA_i^{*}=A_i^{*}A_i$)で、可換($A_iA_j=A_jA_i$)なら、あるユニタリ行列 $U$ が存在して

$$ U^{*}A_iU=\text{対角行列}\qquad(i=1,\dots,m) $$

となる(=同時にユニタリ対角化可能)。

証明をみる

「⇐」方向(同時対角化できれば正規かつ可換)は明らかです。すなわち、$U$をユニタリ行列、$D_1, D_2$を対角行列とすれば

$$ U^{*}P_1U =D_1 \, \quad U^{*}P_2 U=D_2 $$ このとき、 $$ \begin{align} &D_1D_2 = D_2D_1 \\ &\iff (U^{*}P_1U)(U^{*}P_2 U) = (U^{*}P_2U)(U^{*}P_1 U) \\ &\iff U^{*}P_1P_2U = U^{*}P_2P_1U \\ &\iff P_1P_2 \end{align} $$ となるから$P_1$と$P_2$は可換。また、対角行列のエルミート共役も対角行列で、かつ、対角行列同士は可換だから、 $$ \begin{align} &D_1D_1^{*} = D_1^{*}D_1 \\ &\iff (U^{*}P_1U)(U^{*}P_1^{*}U) = (U^{*}P_1^{*}U)(U^{*}P_1U) \\ &\iff U^{*}P_1P_1^{*}U = U^{*}P_1^{*}P_1U \\ &\iff P_1P_1^{*} = P_1^{*}P_1 \end{align} $$ となるから$P_1$は正規行列。

次に「⇒」方向を証明します。

  1. まず$A_1$ をあるユニタリ $U_1$ で対角化し$D$を得ます。

    $$ D:=U_1^{*}A_1U_1=\operatorname{diag}(\lambda_1,\dots,\lambda_n). $$

    $U_1$と$A_2, \cdots, A_m$について

    $$ B_j:=U_1^{*}A_jU_1\qquad(j=2,\dots,m) $$

    とおくと、$B_j$は正規行列でかつ$D$と可換です。正規行列であることは、

    $$ \begin{align} B_jB_j^{*} &= (U_1^{*}A_jU_1)(U_1^{*}A_jU_1)^{*} \\ &= (U_1^{*}A_jU_1)(U_1^{*}A_j^{*}U_1) \\ &= U_1^{*}A_jA_j^{*}U_1 \\ &= U_1^{*}A_j^{*}A_jU_1 \\ &= (U_1^{*}A_j^{*}U_1)(U_1^{*}A_jU_1) \\ &= (U_1^{*}A_jU_1)^{*}(U_1^{*}A_jU_1) \\ &= B_j^{*}B_j \end{align} $$ から分かります。可換であることは、 $$ \begin{align} B_jD &= (U_1^{*}A_jU_1)(U_1^{*}A_1U_1) \\ &= U_1^{*}A_jA_1U_1 \\ &= U_1^{*}A_1A_jU_1 \\ &= (U_1^{*}A_1U_1)(U_1^{*}A_jU_1) \\ &= DB_j \end{align} $$ から分かります。

  2. そこで$DB_j=B_jD$ の $(p,q)$ 成分を両辺で比較すると

    $$ (DB_j)_{pq}=(\lambda_p)b^{(j)}_{pq},\qquad (B_jD)_{pq}=b^{(j)}_{pq}(\lambda_q), $$

    従って

    $$ (\lambda_p-\lambda_q)\,b^{(j)}_{pq}=0\quad(\forall p,q). $$

    よって $\lambda_p\ne\lambda_q$ なら $b^{(j)}_{pq}=0$です。また、逆に$\lambda_p=\lambda_q$ならば$b^{(j)}_{p:q, p:q}$のブロックの要素は0とは限らないことになります。つまり $B_j$ は、$A_1$ の固有値$\mu_1, \cdots, \mu_k$に対応する添字だけで成るブロックに沿ってブロック対角になります。これは例えば、$A_1=\mathrm{diag}(2,2,3,3,5)$ならば$\mu_1=2$、$\mu_2=3$、$\mu_3=5$となり、$B_j$の成分の分布は

    $$ B_j= \begin{pmatrix} \color{gray}{\boxed{\begin{matrix}*&*\\ *&*\end{matrix}}} & 0 & 0\\[4pt] 0 & \color{gray}{\boxed{\begin{matrix}*&*\\ *&*\end{matrix}}} & 0\\[4pt] 0 & 0 & \color{gray}{\boxed{*}} \end{pmatrix} $$

    となることを主張しています。そこで、各ブロックを$B_{j,1}, B_{j,2}, B_{j,3}$として、

    $$ B_j = \underbrace{\begin{pmatrix}*&*\\ *&*\end{pmatrix}}_{\displaystyle B_{j,1}} \ \oplus\ \underbrace{\begin{pmatrix}*&*\\ *&*\end{pmatrix}}_{\displaystyle B_{j,2}} \ \oplus\ \underbrace{(\ *)}_{\displaystyle B_{j,3}}. $$

    と書くように定義します。ここで行列$P, Q$に対する直和$P\oplus Q$は$\begin{pmatrix}P&0\\0&Q\end{pmatrix}$と定義しておきます

  3. 続いて、固有値 $\mu_k$ に対応するブロック $B_{j,k}$($j=2,\dots,m$)の対角化を考えます。$B_j$が正規行列であるため、各$B_{j,k}$ も正規となり、$B_{j,k}$を対角化するユニタリ行列$U_{j}$が存在します。すなわち、 $$ U_k^{*}B_{j,k}U_k=\text{対角} \quad(j=2,\dots,m). $$ です。
  4. 従って、$U_2=\oplus_{k}U_k$と定義すれば、$(A \oplus B)(C \oplus D)=AC\oplus BD$が成り立つため、 $$ \begin{align} U_2^{*}B_jU_2 &= (\oplus_k U_k)^{*} (\oplus_k B_{j,k}) (\oplus_k U_k) \\ &= (\oplus_k U_k^{*}) (\oplus_k B_{j,k}) (\oplus_k U_k) \\ &= \oplus_k U_k^{*} B_{j,k} U_k \\ &= \text{対角行列} \end{align} $$ となります。一方、$U_2^{*} D\, U_2$はユニタリ行列の性質より$D$となります。以上より、$U=U_1U_2$とおくと$U$は$A_1, \cdots, A_m$を全て対角化することが分かります。