tkenichi の日記

毒舌皮肉系恥さらし日記

Schur Complement

f:id:tkenichi:20120303144031j:image

ブロック行列に関する Schur Complement について、日本語での説明は少ないので簡単にまとめておく。
(p+q)次正方行列 M をブロックに分けて
 M = \left[ \begin{array}{cc} A & B \\ C & D \\ \end{array} \right]
とする(Aはp次正方行列、Bはp行q列、Cはq行p列、Dはq次正方行列)。Aが非退化のとき、MにおけるAのSchur Complementとは  M/A = D - CA^{-1}B のこと、Dが非退化のとき、MにおけるDのSchur Complement とは  M/D = A - BD^{-1}C のことを言う。この記法を使うと、Mを次のように変形することができる。

 M = \left[ \begin{array}{cc}<br />
 I &  0 \\ <br />
 CA^{-1} & I \\ <br />
\end{array} \right] <br />
\left[ \begin{array}{cc}<br />
 A & 0 \\<br />
 0 & M/A \\<br />
\end{array} \right] \left[ \begin{array}{cc}<br />
 I & A^{-1}B \\<br />
 0 & I \\<br />
\end{array} \right]

 M = \left[ \begin{array}{cc}<br />
 I & BD^{-1}  \\<br />
 0 & I \\<br />
\end{array} \right] \left[ \begin{array}{cc}<br />
M/D & 0 \\<br />
 0 & D \\<br />
\end{array} \right] \left[ \begin{array}{cc}<br />
I & 0 \\<br />
 D^{-1}C & I \\<br />
\end{array} \right]

ここからすぐわかることは

  • M の行列式は A の行列式と A の Schur Complement の行列式の積  \det(M) = \det(A) \det(M/A)
  • M が正定値であることと、A と A の Schur Complement が正定値であることは同値

である。
また、簡単な計算で

 (M/A)D^{-1}C = CA^{-1}(M/D)
 BD^{-1}(M/A) = (M/D)A^{-1}B

が成り立つこともわかる。

この表示を使って、M の逆行列を書き下すと、

 M^{-1} = \left[ \begin{array}{cc} (M/D)^{-1} & -A^{-1}B(M/A)^{-1} \\ -D^{-1}C(M/D)^{-1} & (M/A)^{-1} \\ \end{array} \right]

または

 M^{-1} = \left[ \begin{array}{cc} (M/D)^{-1} & -(M/D)^{-1}BD^{-1} \\ -(M/A)^{-1}CA^{-1} & (M/A)^{-1} \\ \end{array} \right]

と表すことができる。また、

 (M/A)^{-1} = D^{-1} + D^{-1}C(M/D)^{-1}BD^{-1}
 (M/D)^{-1} = A^{-1} + A^{-1}B(M/A)^{-1}CA^{-1}

ともかけるので、

 M^{-1} = \left[ \begin{array}{cc} A^{-1} + A^{-1}B(M/A)^{-1}CA^{-1} & -A^{-1}B(M/A)^{-1} \\ -(M/A)^{-1}CA^{-1} & (M/A)^{-1} \\ \end{array} \right]

 M^{-1} = \left[ \begin{array}{cc} (M/D)^{-1} & -(M/D)^{-1}BD^{-1} \\ -D^{-1}C(M/D)^{-1} & D^{-1} + D^{-1}C(M/D)^{-1}BD^{-1} \\ \end{array} \right]

のように  (M/A)^{-1} または  (M/D)^{-1} だけで表すこともできる。

もう少し直感的な解釈としては、A の Schur Complement とは A をピボットとして、掃き出しをしたときに点対称にあるブロックに現れる成分と考えることができる。例えば、行で掃き出した場合は、行基本変形行列を使って

 M = \left[ \begin{array}{cc} I &  \\ CA^{-1} & I \\ \end{array} \right] \left[ \begin{array}{cc} A & B \\  & M/A \\ \end{array} \right]

と書くことができる。列で掃き出したときは

 M = \left[ \begin{array}{cc} A &  \\ C & M/A \\ \end{array} \right] \left[ \begin{array}{cc} I & A^{-1}B \\  & I \\ \end{array} \right]

と書くことができる。

p=q で、BまたはCが非退化のときは、これらをピボットとして掃き出すことができる。
そこで、上の定義を拡張して  M/B M/C を定める。

 M = \left[ \begin{array}{cc} I &  \\ DB^{-1} & I \\ \end{array} \right] \left[ \begin{array}{cc} A & B \\ M/B &  \\ \end{array} \right]
 M = \left[ \begin{array}{cc}  & B \\ M/B & D \\ \end{array} \right] \left[ \begin{array}{cc} I &  \\ B^{-1}A & I \\ \end{array} \right]
 M = \left[ \begin{array}{cc} I & AC^{-1} \\ & I \\ \end{array} \right] \left[ \begin{array}{cc}    & M/C \\ C & D \\ \end{array} \right]
 M = \left[ \begin{array}{cc} A & M/C \\ C &  \\ \end{array} \right] \left[ \begin{array}{cc} I &  C^{-1}D \\ & I \\ \end{array} \right]

具体的に書き下すと、他とあわせて

 M/A = D - CA^{-1}B
 M/B = C - DB^{-1}A
 M/C = B - AC^{-1}D
 M/D = A - BD^{-1}C

である。これらがすべて非退化のときは
 M^{-1} = \left[ \begin{array}{cc} (M/D)^{-1} & (M/B)^{-1} \\ (M/C)^{-1} & (M/A)^{-1} \\ \end{array} \right]
が成り立つ。