LU 分解(後編)

一般の行列の LDU 分解

一般の m\times n 行列 A に対して、正則行列 S と 置換行列 P_2 があって
SAP_2=\left(\begin{array}B&C\\O&O\end{array}\right)
と出来ることは周知の事実である。ただし B は次数が r (= rank A) で対角成分が全て 1 である上三角行列である。今、S^{-1} に対して LDU 分解
P_1S^{-1}=LDU
を行うと
P_1AP_2=LDU\left(\begin{array}B&C\\O&O\end{array}\right)
となる。
U=\left(\begin{array}U_{11}&U_{12}\\O&U_{22}\end{array}\right)
とおく。ただし U_{11},U_{22} はそれぞれ対角成分が 1 である r 次および (m - r) 次の上三角行列である。このとき
U\left(\begin{array}B&C\\O&O\end{array}\right)=\left(\begin{array}U_{11}B&U_{11}C\\O&O\end{array}\right)
である。U_{11}B はまた対角成分が 1 の上三角行列であるから、この式全体を改めて U と置き直し、U_{11}B,U_{11}C を B , C と置き直す。
L=\left(\begin{array}L_{11}&O\\L_{21}&L_{22}\end{array}\right)
とおく。ただし L_{11},L_{22} はそれぞれ対角成分が 1 である r 次および (m - r) 次の上三角行列である。このとき
LU=\left(\begin{array}L_{11}B&L_{11}C\\L_{12}B&L_{12}C\end{array}\right)
で、この式の右辺に L_{22} は現れないから、L_{22}E_{m-r} に取り換えても影響は無い。かくして、適当な置換行列 P_1,P_2 を A に左右から掛けて
P_1AP_2=LDU
と分解することができた。ここに

  • L=\left(\begin{array}L_{11}&O\\L_{21}&E_{m-r}\end{array}\right) は m 次の下三角行列で、L_{11} の対角成分は 1
  • U=\left(\begin{array}B&C\\O&O\end{array}\right) は上三角型の m\times n 行列で、B の対角成分は 1

である。これを一般の行列の LDU 分解という。
まったく同様の方法で
P_1AP_2=LDU
と分解することができる。ここに

  • U=\left(\begin{array}U_{11}&U_{12}\\O&E_{m-r}\end{array}\right) は n 次の上三角行列で、U_{11} の対角成分は 1
  • L=\left(\begin{array}B&O\\C&O\end{array}\right) は下三角型の m\times n 行列で、B の対角成分は 1

である。

Cholesky 分解

A が実対称行列(Hermite 行列の場合でもほぼ同様)のときには、特に
PAP^*=LDL^*
と分解することができる。これを Cholesky 分解という。手順は複雑なので、伊理正夫「一般線形代数」(岩波書店)を参考にすると良い。