logo

ブロック行列 📂行列代数

ブロック行列

定義

$A$を行列$m \times n$とする。

$$ A = \begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mn} \\ \end{bmatrix} $$

この時、行列を切る任意の垂直線、水平線を考えよう。

$$ A = \left[ \begin{array}{cc|ccc|c|} a_{11} & a_{12} & a_{13} & a_{14} & a_{15} & \cdots & a_{1n-1} & a_{1n} \\ a_{21} & a_{22} & a_{23} & a_{24} & a_{25} & \cdots & a_{2n-1} & a_{2n} \\ \hline a_{31} & a_{32} & a_{33} & a_{34} & a_{35} & \cdots & a_{3n-1} & a_{3n} \\ a_{41} & a_{42} & a_{43} & a_{44} & a_{45} & \cdots & a_{4n-1} & a_{4n} \\ \hline \vdots & \vdots & \vdots & \vdots & \vdots & \ddots & \vdots & \vdots & \\ \hline a_{m1} & a_{m2} & a_{m3} & a_{m4} & a_{m5} & \cdots & a_{m-1n} & a_{mn} \end{array} \right] $$

それぞれの線で切られた部分を$A$のブロックという。

$$ A_{11} = \begin{bmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{bmatrix},\quad A_{12} = \begin{bmatrix} a_{13} & a_{14} & a_{15}\\ a_{23} & a_{24} & a_{25} \end{bmatrix},\quad \cdots,\quad A_{kl} = \begin{bmatrix} a_{m-1n} & a_{mn}\end{bmatrix} $$

行列$A$を次のようにブロックで表したものをブロック行列という。

$$ A = \begin{bmatrix} A_{11} & A_{12} & \cdots & A_{1l} \\ A_{21} & A_{22} & \cdots & A_{2l} \\ \vdots & \vdots & \ddots & \vdots \\ A_{k1} & A_{k2} & \cdots & A_{kl} \\ \end{bmatrix} $$

説明

行列をブロック行列として扱うことは、行列の計算を容易にする。実際、ブロック行列の計算も行列の計算と同じように行えばいい。

$$ A = \begin{bmatrix} A_{11} & A_{12} \\ A_{21} & A_{22} \end{bmatrix}\quad \text{and} \quad B = \begin{bmatrix} B_{11} & B_{12} \\ B_{21} & B_{22} \end{bmatrix} \\[1em] \implies AB = \begin{bmatrix} A_{11}B_{11} + A_{12}B_{21} & A_{11}B_{12} + A_{12}B_{22} \\ A_{21}B_{11} + A_{22}B_{21} & A_{21}B_{12} + A_{22}B_{22} \end{bmatrix} $$

従って、行列をゼロ行列単位行列が含まれるブロック行列形に変えれば、行列の乗算を簡単に計算できる。

$$ A = \begin{bmatrix} A_{11} & I \\ O & A_{22} \end{bmatrix}\quad \text{and} \quad B = \begin{bmatrix} B_{11} & B_{12} \\ B_{21} & B_{22} \end{bmatrix} \\[1em] \implies AB = \begin{bmatrix} A_{11}B_{11} + B_{21} & A_{11}B_{12} + B_{22} \\ A_{22}B_{21} & A_{22}B_{22} \end{bmatrix} $$

行列を行ベクトルと列ベクトルに分けたものもブロック行列である。

$$ \begin{align*} A =& \begin{bmatrix} a_{11} & a_{12} & \cdots & a_{1n} \\ a_{21} & a_{22} & \cdots & a_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1} & a_{m2} & \cdots & a_{mn} \end{bmatrix} = \begin{bmatrix} \mathbf{r}_{1} \\ \mathbf{r}_{2} \\ \vdots \\ \mathbf{r}_{m} \end{bmatrix} \\ =& \begin{bmatrix} \mathbf{c}_{1} & \mathbf{c}_{2} & \cdots & \mathbf{c}_{n} \end{bmatrix} \end{align*} $$

従って、$A \mathbf{x}$を次のように表せる。

$$ \begin{align*} A \mathbf{x} &= \begin{bmatrix} \mathbf{c}_{1} & \mathbf{c}_{2} & \cdots & \mathbf{c}_{n} \end{bmatrix} \begin{bmatrix} x_{1} \\ x_{2} \\ \vdots \\ x_{n} \end{bmatrix} \\ &= \sum_{i}^{n} x_{i}\mathbf{c}_{i} \end{align*} $$

また、$A$を$m \times p$行列とし、$\mathbf{a}_{i}$を$A$の行ベクトルとし、$B$を$p \times n$行列とし、$\mathbf{b}_{i}$を$B$の列ベクトルとする。そうすると、二つの行列の積は次のようになる。

$$ AB = \begin{bmatrix} \mathbf{a}_{1} \\ \mathbf{a}_{2} \\ \vdots \\ \mathbf{a}_{m} \end{bmatrix} \begin{bmatrix} \mathbf{b}_{1} & \mathbf{b}_{2} & \cdots & \mathbf{b}_{n} \end{bmatrix} = \begin{bmatrix} \mathbf{a}_{1} \mathbf{b}_{1} & \mathbf{a}_{1} \mathbf{b}_{2} & \cdots & \mathbf{a}_{1} \mathbf{b}_{n} \\ \mathbf{a}_{2} \mathbf{b}_{1} & \mathbf{a}_{2} \mathbf{b}_{2} & \cdots & \mathbf{a}_{2} \mathbf{b}_{n} \\ \vdots & \vdots & \ddots & \vdots \\ \mathbf{a}_{m} \mathbf{b}_{1} & \mathbf{a}_{m} \mathbf{b}_{2} & \cdots & \mathbf{a}_{m} \mathbf{b}_{n} \\ \end{bmatrix} $$

定理

$A = \begin{bmatrix} A_{1} & A_{2} \\ O & A_{3} \end{bmatrix}$をブロック行列とする。その行列式に対して次が成り立つ。

$$ \det A = \det A_{1} \det A_{3} $$

結論

  • ブロック行列$A = \begin{bmatrix} A_{1} & A_{2} \\ O & I \end{bmatrix}$の行列式は$\det A_{1}$と同じである。
  • 行と列に順列をとって次のような形に表せる行列$A$を簡約可能行列と呼び、その行列式$\det A$は$\det B \det D$か$-\det B \det D$のどちらかである。 $$ \widetilde{A} = \begin{bmatrix} B & O \\ C & D \end{bmatrix} $$

証明

ブロック行列$A$を次のように3つのブロック行列の積に分解できる。

$$ \begin{align*} A &= \begin{bmatrix} A_{1} & A_{2} \\ O & A_{3} \end{bmatrix} \\ &= \begin{bmatrix} IA_{1} + OO & IA_{2} + OI \\ OA_{1} + A_{3}O & OA_{2} + A_{3}I \end{bmatrix} \\ &= \begin{bmatrix} I & O \\ O & A_{3} \end{bmatrix} \begin{bmatrix} A_{1} & A_{2} \\ O & I \end{bmatrix} \\ &= \begin{bmatrix} I & O \\ O & A_{3} \end{bmatrix} \begin{bmatrix} IA_{1} + A_{2}O & IO + A_{2}I \\ OA_{1} + IO & OO + II \end{bmatrix} \\ &= \begin{bmatrix} I & O \\ O & A_{3} \end{bmatrix} \begin{bmatrix} I & A_{2} \\ O & I \end{bmatrix} \begin{bmatrix} A_{1} & O \\ O & I \end{bmatrix} \end{align*} $$

積の行列式は行列式の積と同じであるから

$$ \begin{align*} \det A &= \det \left( \begin{bmatrix} I & O \\ O & A_{3} \end{bmatrix} \begin{bmatrix} I & A_{2} \\ O & I \end{bmatrix} \begin{bmatrix} A_{1} & O \\ O & I \end{bmatrix} \right) \\ &= \det \left( \begin{bmatrix} I & O \\ O & A_{3} \end{bmatrix} \right) \det \left( \begin{bmatrix} I & A_{2} \\ O & I \end{bmatrix} \right) \det \left( \begin{bmatrix} A_{1} & O \\ O & I \end{bmatrix} \right) \end{align*} $$

行列式のラプラス展開を考えると、

$$ \det \left( \begin{bmatrix} I & O \\ O & A_{3} \end{bmatrix} \right) = \det A_{3},\quad \det \left( \begin{bmatrix} A_{1} & O \\ O & I \end{bmatrix} \right) = \det A_{1}, $$

$$ \text{and} \quad \det \left( \begin{bmatrix} I & A_{2} \\ O & I \end{bmatrix} \right)=1 $$

これにより、

$$ \det A = \det A_{1} \det A_{3} $$