対角化

**対角化**（たいかくか、diagonalization）とは、正方行列を適当な線形変換によりもとの行列と相似な対角行列に変形することを言う。あるいは、ベクトル空間の線形写像に対し、空間の基底を取り替え、その作用が常にある方向（固有空間）へのスカラー倍（固有値）として現れるようにすること。対角化により変換において本質的には無駄な計算を省くことで計算量を大幅に減らすことができる。

## 概要
*n* 次正方行列 *A* に対して、*n* 次対角行列 *D* と *n* 次正則行列 *P* が存在して、
: P^{-1} A P = D
とできるとき、行列 *A* は**[[:en:Diagonalizable_matrix|対角化可能]]**（）であるという。

## 対角化可能であるための必要十分条件
定義式を成分で表示すると、
: P^{-1}AP = \begin{bmatrix}
  \lambda_1 &0         &\dots  &0 \\
  0         &\lambda_2 &\dots  &0 \\
  \vdots    &\vdots    &\ddots &\vdots \\
  0         &0         &\dots  &\lambda_n
\end{bmatrix}

両辺に左から *P* を掛けると:
: AP = P\begin{bmatrix}
  \lambda_1 &0         &\dots  &0 \\
  0         &\lambda_2 &\dots  &0 \\
  \vdots    &\vdots    &\ddots &\vdots \\
  0         &0         &\dots  &\lambda_n
\end{bmatrix}
ここで、*P* を列ベクトル \vec{\alpha}_i を並べて表記すると
:P = \begin{bmatrix}
\vec{\alpha}_1 &\vec{\alpha}_2 &\cdots &\vec{\alpha}_n
\end{bmatrix}
上式は、次のように書き直せる：
:A\vec{\alpha}_i = \lambda_i\vec{\alpha}_i\qquad(i=1,2,\dots,n)
つまり、*P* の構成する各列ベクトルは *A*の固有ベクトルであり、対応する対角成分はその固有ベクトルに対応する固有値になっている。行列 *P* が正則であることは、これらの固有ベクトルが線形独立である（= *n*次元ベクトル空間の基底になっている）ことを意味する。

ここまでの議論は完全に逆向きにたどることができる。つまり、**行列''A''の固有ベクトルだけで ''n'' 次元ベクトル空間の基底が構成できる**ならば、それら縦ベクトルを横に並べた行列 *P* は正則行列となり、
: P^{-1} A P = D
が成り立ち、*D* の対角成分には *A* の固有値が並ぶ。

以上が行列が対角化できるための必要十分条件である。またこれは、実際に対角化を行うための手順にもなっている。

他にも同値な条件がいくつか知られている。
* 
:*A* の固有値を \lambda_i, i=1,\cdots,r, とするとき、*A* が対角化可能であるための必要十分条件は、次の等式が成り立つことである：
: \textstyle\sum\limits_{i=1}^r \dim\ker(\lambda_i I_n - A) = n,
:ここで、 は *n* 次単位行列を表す。\ker(\lambda_i I_n -A) は固有値 \lambda_i の固有空間であるから、この条件はベクトル空間の基底として *A* の固有ベクトルが取れることを意味している。
* 上の条件は、\textstyle\sum\limits_{i=1}^r \dim\ker(\lambda_i I_n - A) の各項が \lambda_i の重複度と一致する、とも言い換えられる。一致しない場合はその固有空間の次元は \lambda_i を下回り、総計が *n* には成り得ないからである。詳しくは固有空間の次元を参照。
* **行列 ''A'' の[[最小多項式 (線型代数学)|最小多項式]]が重根をもたないこと**も対角化可能であるための必要十分条件である。

*A* が実対称行列のとき、*A* は常に対角化可能であり、*P* として直交行列を取ることができる。また *A* がユニタリー行列 *U* を用いて対角化できるためには、*A* が正規行列であることが必要十分である。正規行列の中で応用上重要なクラスとして、対称行列とエルミート行列がある。

## 例
次の 2 次実正方行列 *A* は固有値 *a* &minus; *bi* と *a* + *bi* をもち、たとえば以下の正則行列 *P* で対角化される。
: A = \begin{bmatrix}
  a &-b \\
  b &a  
\end{bmatrix}, \quad P = \begin{bmatrix}
  i  &1 \\
  -i &1 
\end{bmatrix}, \quad P^{-1}AP = \begin{bmatrix}
  a-bi & \\
       &a+bi 
\end{bmatrix} 
一方、次の行列 *B* は対角化可能ではない。
:B = \begin{bmatrix}
 \lambda &1 \\
         &\lambda 
\end{bmatrix}

3次正方行列について、具体的な数値で計算を行ってみる。

次の行列は対角化可能かどうか判断し、可能な場合は対角化せよ：
:A=\begin{bmatrix}
1 &2  &0 \\
0 &3  &0 \\
2 &-4 &2
\end{bmatrix}
固有値と固有ベクトルを計算すると、
:\lambda_1 = 3, \quad \lambda_2 = 2, \quad \lambda_3= 1
:v_1 = \begin{bmatrix} -1 \\ -1 \\ 2 \end{bmatrix}, \quad v_2 = \begin{bmatrix} 0 \\ 0 \\ 1 \end{bmatrix}, \quad v_3 = \begin{bmatrix}
-1 \\
0 \\
2
\end{bmatrix}

固有ベクトルを並べた
:P= \begin{bmatrix}
-1 &0 &-1 \\
-1 &0 &0 \\
2  &1 &2
\end{bmatrix}
の行列式は0でないため、これを使って対角化できる。
:P^{-1}AP = \begin{bmatrix}
0  &-1 &0 \\
2  &0  &1 \\
-1 &1  &0
\end{bmatrix} \begin{bmatrix}
1 &2  &0 \\
0 &3  &0 \\
2 &-4 &2 \end{bmatrix} \begin{bmatrix}
-1 &0 &-1 \\
-1 &0 &0 \\
2  &1 &2
\end{bmatrix} = \begin{bmatrix}
3 &0 &0 \\
0 &2 &0 \\
0 &0 &1
\end{bmatrix}

## 脚注

## 参考文献
### 和書
* 
* 
* 

### 洋書
* Strang, G. (2003). Introduction to linear algebra. Cambridge (MA): Wellesley-Cambridge Press.
* Franklin, Joel N. (1968). Matrix Theory. :en:Dover Publications. ISBN 978-0-486-41179-8.
* Golub, Gene H.; Van Loan, Charles F. (1996), Matrix Computations (3rd ed.), Baltimore: Johns Hopkins University Press, ISBN 978-0-8018-5414-9
* Horn, Roger A.; Johnson, Charles R. (1985). Matrix Analysis. :en:Cambridge University Press. ISBN 978-0-521-38632-6.
* Horn, Roger A.; Johnson, Charles R. (1991). Topics in Matrix Analysis. :en:Cambridge University Press. ISBN 978-0-521-46713-1.
* Nering, Evar D. (1970), Linear Algebra and Matrix Theory (2nd ed.), New York: Wiley, LCCN 76091646

## 関連項目

* 線型写像
* 対角行列
* 固有値
* ジョルダン標準形
* ランチョス法

## 外部リンク
*