逆行列の計算

行列の基本変形によって、逆行列を計算する方法を示します。

具体的に与えられた行列 AA の逆行列は、AA と単位行列を結合させた (AEn)(\, A \mid E_{n} \,) を簡約階段行列に変形することにより計算できます。

基本変形による逆行列の計算方法

手順

AAnn 次の正方行列とすると、次の手順(11\sim33)により、逆行列 A1A^{-1} が得られます。

11AA が正則であることを確認する。
22AA と同じ次数の単位行列を結合させて (AEn)(\, A \mid E_{n} \,) を作る。
33(AEn)(\, A \mid E_{n} \,) を簡約階段行列に変形し、右側のブロックを取り出す。

(1)正則性の確認

(1-1)行列式の計算
(1-2)階数の計算

(2)単位行列との結合

  • AA と単位行列 EnE_{n} を結合して、(n,2n)(n, 2n) 型の行列 (AEn)(\, A \mid E_{n} \,) を作ります。
(AEn)=(a11a12a1na21a22a2nam1am2amn100010001) (\, A \mid E_{n} \,) = \left( \begin{array} {c|c} \begin{matrix} 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{matrix} & \begin{matrix} 1 & 0 & \cdots & 0 \\ 0 & 1 & \cdots & 0 \\ \vdots & \vdots & \ddots & \vdots \\ 0 & 0 & \cdots & 1 \\ \end{matrix} % & \begin{matrix} % 1 & & O & \\ % & 1 & & \\ % & & \ddots & \\ % & O & & 1 \\ % \end{matrix} \end{array}\right)

(3)簡約階段行列への変形

  • (AEn)(\, A \mid E_{n} \,) を簡約階段行列に変形します。
  • 変形により得られた簡約階段行列の右側のブロックを取り出せば、AA の逆行列 A1A^{-1} が得られます。
    (AEn)(EnA1) \begin{align*} (\, A \mid E_{n} \,) \longrightarrow (\, E_{n} \mid A^{-1} \,) \end{align*}
簡約階段行列へ変形する理由
  • AA は正則なので rankA=n\text{rank} \, A = n が成り立ちます(定理 4.62(正則行列と階数))。したがって、AA を簡約階段行列に変形させると EnE_{n} に等しくなります。

  • AA に行基本変形を施すことは AA に左から正則行列を掛けることに等しいので(定理 5.8(基本変形と基本行列の対応))、変形に対応する正則行列を PP とすれば PA=EnP A = E_{n} が成り立ちます。定義より、この正則行列 PP こそ AA の逆行列に他なりません。

  • したがって、(AEn)(\, A \mid E_{n} \,) を簡約階段行列に変形させると、左側の AAEnE_{n} に、右側の EnE_{n}P=A1P = A^{-1} にそれぞれ変形されます。

  • このことは、次のようにブロック行列の積として表すこともできます。

    P(AEn)=(i)(PAP)=(ii)(EnP)=(iii)(EnA1) \begin{split} P \, (\, A \mid E_{n} \,) &\overset{(\text{i})}{=} (\, P A \mid P \,) \\ &\overset{(\text{ii})}{=} (\, E_{n} \mid P \,) \\ &\overset{(\text{iii})}{=} (\, E_{n} \mid A^{-1} \,) \end{split}

    • i\text{i})区分けされた行列の積の演算規則(定理 2.6(ブロック行列の演算))によります。
    • ii\text{ii}PA=EnP A = E_{n} が成り立つことによります。
    • iii\text{iii}PA=EnP A = E_{n} が成り立つことより、P=A1P = A^{-1} となることによります。

以上のように、正則行列 AA と同じ次数の単位行列を結合させた (AEn)(\, A \mid E_{n} \,) を作り、これを簡約階段行列に変形することで、AA の逆行列を得ることができます。

考察

正則性を確認する方法

逆行列の計算する際、具体的に与えられた行列 AA が正則であることが前提となります。当然ながら、逆行列を計算する前に AA が正則である(逆行列をもつ)ことを確かめる必要があります。

正則であることと同値な条件

行列 AA が正則である(逆行列をもつ)ことと同値な条件はいくつかありますが、逆行列の計算において、実用的なものは次の 22 つになります。

正則性の確認方法の特徴と使い分け

行列 AA が正則であることを確認する方法は次の 22 つあります。それぞれ、上記の 22 つの条件に対応しており、具体的な手順は、上記の手順に示した通りです。それぞれの特徴は次の通りです。

(1-1)行列式の計算
  • 手順:AA の行列式を計算し、detA0\det A \neq 0 であることを確かめる。
  • 根拠: 「AA が正則 \Leftrightarrow detA0\det A \neq 0」(定理 3.22(逆行列を持つための条件))。
  • 特徴:
    • 次数が低い(232 \sim 3 程度)行列、または、要素に 00 が多い行列において効率的。
(1-2)階数の計算
  • 手順:AA の階数を求め rankA=n\text{rank} \, A = n であることを確かめる。
  • 根拠: 「AA が正則 \Leftrightarrow rankA=n\text{rank} \, A = n」(定理 4.62(正則行列と階数))。
  • 特徴:
    • 行列の基本変形による確認方法のため、22以降の手順と合わせて実施できる。
    • 次数が高い(  4\; \geqslant 4)行列でも(比較的)手計算が可能。
    • 手順が明確でコンピュータ向き。

どちらの確認方法が適しているかは与えられた行列によります。手計算を求められる練習問題などでは、次数が低い行列が与えられることが多いため、比較的11 - 11の方が有効な場合が多いと思います。一方で、実用において、より高次の行列を扱う場合は11 - 22が有効な場合が多いと思います。

行列式による逆行列の計算方法との違い

逆行列を計算する他の方法として行列式による方法があります。定理 3.22(逆行列を持つための条件)に既に示したものであり、行列 AA に対して、次の式により逆行列 A1A^{-1} が得られます。

A1=1detAA~ \begin{align*} \tag{3.6.8} A^{-1} = \dfrac{1}{\det A} \tilde{A} \end{align*}

ここで、A~\tilde{A}AA余因子行列であり、もとの行列 AA余因子を各成分とする行列です。また、AA が正則であることから detA0\det A \neq 0 が成り立っています。

定理 3.22および3.6.83.6.8)式が理論的に重要なものであることは確かですが、これを逆行列を計算する方法として用いるのは非現実的です。余因子行列 A~\tilde{A} の各成分である AA余因子に対して、1111 つ、それぞれ別の行列式を計算する必要があるためです。つまり、この方法を用いて nn 次の正方行列の逆行列を得るためには、それぞれ異なる n2n^{2} 個の行列式を計算する必要があります。2233 次の正方行列であれば、まだ手計算できなくも無いですが、より高次の正方行列に対してこの方法を用いるのはきわめて効率が悪いです。


逆行列の計算例

行列の基本変形による逆行列の計算例として、次の 22 つの正方行列の逆行列を計算してみます。


例題1(3次の正方行列)

次の行列の逆行列を求めよ。

(102010101) \left( \begin{array} {ccc} 1 & 0 & -2 \\ 0 & 1 & 0 \\ -1 & 0 & 1 \\ \end{array} \right)

解答(例題1)

与えられた行列を AA とすると、detA=1\det A = -1 であるから AA は正則である。

また、(AE3)(\, A \mid E_{3} \,) は、行基本変形により、次のような簡約階段行列に変形することができる。

(AE3)=(102100010010101001)(i)  (102100010010001101)(i)  (100102010010001101) \begin{split} (\, A \mid E_{3} \,) &= \left( \begin{array} {ccc|ccc} 1 & 0 & -2 & 1 & 0 & 0 \\ 0 & 1 & 0 & 0 & 1 & 0 \\ -1 & 0 & 1 & 0 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{i})}{\longrightarrow} \; \left( \begin{array} {ccc|c} 1 & 0 & -2 & 1 & 0 & 0 \\ 0 & 1 & 0 & 0 & 1 & 0 \\ 0 & 0 & -1 & 1 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{i})}{\longrightarrow} \; \left( \begin{array} {ccc|c} 1 & 0 & 0 & -1 & 0 & -2 \\ 0 & 1 & 0 & 0 & 1 & 0 \\ 0 & 0 & 1 & -1 & 0 & -1 \\ \end{array} \right) \\ \end{split}

PP を次のような行列とすると、AP=PA=E3AP = PA = E_{3} が成り立つ。

P=(102010101) P = \left( \begin{array} {ccc} -1 & 0 & -2 \\ 0 & 1 & 0 \\ -1 & 0 & -1 \\ \end{array} \right)

したがって、PPAA の逆行列である。



解答の考え方(例題1)

基本変形による逆行列の計算方法の手順に従います。(11AA が正則であることを確認した上で(22)単位行列と結合して (AE3)(\, A \mid E_{3} \,) を作り(33)簡約階段行列に変形します。

(1)正則性の確認

たすき掛けの規則(サラスの公式)により行列式を計算すると次のようになります。

detA=12=1  (  0) \begin{split} \det A &= 1 - 2 \\ &= -1 \; (\; \neq 0 \,) \end{split}

detA0\det A \neq 0 であることから、AA が正則である(逆行列を持つ)ことが確かめられます。

AA は比較的次数も低く(33 次の正方行列)要素に 00 が多いため、11 - 11)行列式の計算によって正則性を確認する方法が効率的です。

(2)単位行列との結合

AA33 次の単位行列を結合して、次のような行列 (AE3)(\, A \mid E_{3} \,) を作ります。

(AE3)=(102100010010101001) \begin{gather*} (\, A \mid E_{3} \,) = \left( \begin{array} {ccc|ccc} 1 & 0 & -2 & 1 & 0 & 0 \\ 0 & 1 & 0 & 0 & 1 & 0 \\ -1 & 0 & 1 & 0 & 0 & 1 \\ \end{array} \right) \end{gather*}

(3)簡約階段行列への変形

簡約階段行列への変形は次のような手順で行います。

(AE3)=(102100010010101001)(i)  (102100010010001101)(i)  (100102010010001101) \begin{split} (\, A \mid E_{3} \,) &= \left( \begin{array} {ccc|ccc} 1 & 0 & -2 & 1 & 0 & 0 \\ 0 & 1 & 0 & 0 & 1 & 0 \\ -1 & 0 & 1 & 0 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{i})}{\longrightarrow} \; \left( \begin{array} {ccc|c} 1 & 0 & -2 & 1 & 0 & 0 \\ 0 & 1 & 0 & 0 & 1 & 0 \\ 0 & 0 & -1 & 1 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{i})}{\longrightarrow} \; \left( \begin{array} {ccc|c} 1 & 0 & 0 & -1 & 0 & -2 \\ 0 & 1 & 0 & 0 & 1 & 0 \\ 0 & 0 & 1 & -1 & 0 & -1 \\ \end{array} \right) \\ \end{split}

変形の結果得られる簡約階段行列は次のようになります。

(100102010010001101) \left( \begin{array} {ccc|c} 1 & 0 & 0 & -1 & 0 & -2 \\ 0 & 1 & 0 & 0 & 1 & 0 \\ 0 & 0 & 1 & -1 & 0 & -1 \\ \end{array} \right)

変形により得られた簡約階段行列の右側のブロックを PP とすれば、上記の変形は次のように表せます。

(AE3)(E3P) \begin{align*} (\, A \mid E_{3} \,) \longrightarrow (\, E_{3} \mid P\,) \end{align*}

上記の手順33)簡約階段行列への変形に示した通り、ここで PA=E3P A = E_{3} が成り立っており、PPAA の逆行列に他なりません。

以上から AA の逆行列 PP (=A1)(\, = A^{-1}) が次のように求まりました。

P=(102010101) \begin{gather*} P = \left( \begin{array} {ccc} -1 & 0 & -2 \\ 0 & 1 & 0 \\ -1 & 0 & -1 \\ \end{array} \right) \end{gather*}



例題2(4次の正方行列)

次の行列の逆行列を求めよ。

(2010011210100113) \left( \begin{array} {cccc} 2 & 0 & 1 & 0 \\ 0 & -1 & 1 & -2 \\ 1 & 0 & 1 & 0 \\ 0 & 1 & -1 & 3 \\ \end{array} \right)


解答(例題2)

与えられた行列を AA とすると、detA=1\det A = -1 であるから AA は正則である。

また、(AE4)(\, A \mid E_{4} \,) は、行基本変形により、次のような簡約階段行列に変形することができる。

(AE4)=(20101000011201001010001001130001)(i)  (10100010011201000010102001130001)(ii)  (10100010011300010010102000010101)(iii)  (10001010010310210010102000010101)(iv)  (10001010010013220010102000010101) \begin{split} (\, A \mid E_{4} \,) &= \left( \begin{array} {cccc|cccc} 2 & 0 & 1 & 0 & 1 & 0 & 0 & 0 \\ 0 & -1 & 1 & -2 & 0 & 1 & 0 & 0 \\ 1 & 0 & 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & -1 & 3 & 0 & 0 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{i})}{\longrightarrow} \; \left( \begin{array} {cccc|cccc} 1 & 0 & 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & -1 & 1 & -2 & 0 & 1 & 0 & 0 \\ 0 & 0 & -1 & 0 & 1 & 0 & -2 & 0 \\ 0 & 1 & -1 & 3 & 0 & 0 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{ii})}{\longrightarrow} \; \left( \begin{array} {cccc|cccc} 1 & 0 & 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & -1 & 3 & 0 & 0 & 0 & 1 \\ 0 & 0 & -1 & 0 & 1 & 0 & -2 & 0 \\ 0 & 0 & 0 & 1 & 0 & 1 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{iii})}{\longrightarrow} \; \left( \begin{array} {cccc|cccc} 1 & 0 & 0 & 0 & 1 & 0 & -1 & 0 \\ 0 & 1 & 0 & 3 & -1 & 0 & 2 & 1 \\ 0 & 0 & 1 & 0 & -1 & 0 & 2 & 0 \\ 0 & 0 & 0 & 1 & 0 & 1 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{iv})}{\longrightarrow} \; \left( \begin{array} {cccc|cccc} 1 & 0 & 0 & 0 & 1 & 0 & -1 & 0 \\ 0 & 1 & 0 & 0 & -1 & -3 & 2 & -2 \\ 0 & 0 & 1 & 0 & -1 & 0 & 2 & 0 \\ 0 & 0 & 0 & 1 & 0 & 1 & 0 & 1 \\ \end{array} \right) \\ \end{split}

PP を次のような行列とすると、AP=PA=E4AP = PA = E_{4} が成り立つ。

P=(1010132210200101) P = \left( \begin{array} {cccc} 1 & 0 & -1 & 0 \\ -1 & -3 & 2 & -2 \\ -1 & 0 & 2 & 0 \\ 0 & 1 & 0 & 1 \\ \end{array} \right)

したがって、PPAA の逆行列である。



解答の考え方(例題2)

基本変形による逆行列の計算方法の手順に従います。(11AA が正則であることを確認した上で(22)単位行列と結合して (AE4)(\, A \mid E_{4} \,) を作り(33)簡約階段行列に変形します。

(1)正則性の確認

行列式の展開を用いて行列式を展開することで、AA の行列式の値を計算します。

  2010    0112    1010    0113  =()2  112    010    113  +1  012    100    013  =2{3(2)}+1{2(3)}=2+1=1  (  0) \begin{split} \begin{vmatrix} \; 2 & 0 & 1 & 0 \; \\ \; 0 & -1 & 1 & -2 \; \\ \; 1 & 0 & 1 & 0 \; \\ \; 0 & 1 & -1 & 3 \; \\ \end{vmatrix} &\overset{(\ast)}{=} 2 \begin{vmatrix} \; -1 & 1 & -2 \; \\ \; 0 & 1 & 0 \; \\ \; 1 & -1 & 3 \; \\ \end{vmatrix} \\ & \quad + 1 \begin{vmatrix} \; 0 & -1 & -2 \; \\ \; 1 & 0 & 0 \; \\ \; 0 & 1 & 3 \; \\ \end{vmatrix} \\ &= 2 \, \{ -3 - (-2) \} \\ & \quad + 1 \, \{ -2 - (-3) \} \\ &= -2 +1 \\ &= -1 \; (\; \neq 0 \,) \end{split}

  • \ast)では第 11 行に沿って行列式を展開しています。

detA=1  (0)\det A = -1 \; (\, \neq 0 \,) であることから、AA が正則である(逆行列を持つ)ことが確かめられます。

今回、AA44 次の正方行列です。例題1(33 次の正方行列)と比較して多少面倒ではあるものの、要素に 00 が多いため11 - 11)行列式の計算によって正則性を確認しています。この程度の計算量であれば11 - 22)階数の計算により正則性を確認してもよいかもしれません。

(2)単位行列との結合

AA44 次の単位行列を結合して、次のような行列 (AE4)(\, A \mid E_{4} \,) を作ります。

(AE4)=(20101000011201001010001001130001) \begin{gather*} (\, A \mid E_{4} \,) = \left( \begin{array} {cccc|cccc} 2 & 0 & 1 & 0 & 1 & 0 & 0 & 0 \\ 0 & -1 & 1 & -2 & 0 & 1 & 0 & 0 \\ 1 & 0 & 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & -1 & 3 & 0 & 0 & 0 & 1 \\ \end{array} \right) \end{gather*}

(3)簡約階段行列への変形

簡約階段行列への変形は次のような手順で行います。

(AE4)=(20101000011201001010001001130001)(i)  (10100010011201000010102001130001)(ii)  (10100010011300010010102000010101)(iii)  (10001010010310210010102000010101)(iv)  (10001010010013220010102000010101) \begin{split} (\, A \mid E_{4} \,) &= \left( \begin{array} {cccc|cccc} 2 & 0 & 1 & 0 & 1 & 0 & 0 & 0 \\ 0 & -1 & 1 & -2 & 0 & 1 & 0 & 0 \\ 1 & 0 & 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & -1 & 3 & 0 & 0 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{i})}{\longrightarrow} \; \left( \begin{array} {cccc|cccc} 1 & 0 & 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & -1 & 1 & -2 & 0 & 1 & 0 & 0 \\ 0 & 0 & -1 & 0 & 1 & 0 & -2 & 0 \\ 0 & 1 & -1 & 3 & 0 & 0 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{ii})}{\longrightarrow} \; \left( \begin{array} {cccc|cccc} 1 & 0 & 1 & 0 & 0 & 0 & 1 & 0 \\ 0 & 1 & -1 & 3 & 0 & 0 & 0 & 1 \\ 0 & 0 & -1 & 0 & 1 & 0 & -2 & 0 \\ 0 & 0 & 0 & 1 & 0 & 1 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{iii})}{\longrightarrow} \; \left( \begin{array} {cccc|cccc} 1 & 0 & 0 & 0 & 1 & 0 & -1 & 0 \\ 0 & 1 & 0 & 3 & -1 & 0 & 2 & 1 \\ 0 & 0 & 1 & 0 & -1 & 0 & 2 & 0 \\ 0 & 0 & 0 & 1 & 0 & 1 & 0 & 1 \\ \end{array} \right) \\ &\overset{(\text{iv})}{\longrightarrow} \; \left( \begin{array} {cccc|cccc} 1 & 0 & 0 & 0 & 1 & 0 & -1 & 0 \\ 0 & 1 & 0 & 0 & -1 & -3 & 2 & -2 \\ 0 & 0 & 1 & 0 & -1 & 0 & 2 & 0 \\ 0 & 0 & 0 & 1 & 0 & 1 & 0 & 1 \\ \end{array} \right) \\ \end{split}

変形の結果得られる簡約階段行列は次のようになります。

(10001010010013220010102000010101) \left( \begin{array} {cccc|cccc} 1 & 0 & 0 & 0 & 1 & 0 & -1 & 0 \\ 0 & 1 & 0 & 0 & -1 & -3 & 2 & -2 \\ 0 & 0 & 1 & 0 & -1 & 0 & 2 & 0 \\ 0 & 0 & 0 & 1 & 0 & 1 & 0 & 1 \\ \end{array} \right)

変形により得られた簡約階段行列の右側のブロックを PP とすれば、上記の変形は次のように表せます。

(AE4)(E4P) \begin{align*} (\, A \mid E_{4} \,) \longrightarrow (\, E_{4} \mid P\,) \end{align*}

上記の手順33)簡約階段行列への変形に示した通り、ここで PA=E4P A = E_{4} が成り立っており、PPAA の逆行列に他なりません。

以上から AA の逆行列 PP (=A1)(\, = A^{-1}) が次のように求まりました。

P=(1010132210200101) \begin{gather*} P = \left( \begin{array} {cccc} 1 & 0 & -1 & 0 \\ -1 & -3 & 2 & -2 \\ -1 & 0 & 2 & 0 \\ 0 & 1 & 0 & 1 \\ \end{array} \right) \end{gather*}


まとめ

  • 与えられた行列 AA の逆行列は、同じ次数の単位行列を結合させた (AEn)(\, A \mid E_{n} \,) を簡約階段行列に変形することにより計算できる。

  • 逆行列の計算手順は次の通り。

    11AA が正則であることを確認する。
    22AA と同じ次数の単位行列を結合させて (AEn)(\, A \mid E_{n} \,) を作る。
    33(AEn)(\, A \mid E_{n} \,) を簡約階段行列に変形し、右側のブロックを取り出す。

  • 手順(11)正則性の確認は、次のいずれかの方法によって行う。

    • AA の行列式の値を求め、detA0\det A \neq 0 であることを確かめる。
    • AA の階数を求め、rankA=n\text{rank} \, A = n であることを確かめる。

参考文献

[1] 齋藤正彦. 線型代数入門. 東京大学出版会. 1966.
[2] 永田雅宣 他. 理系のための線型代数の基礎. 紀伊國屋書店. 1986.
[3] 川久保勝夫. 線形代数学 [新装版]. 日本評論社. 2010.
[4] 松坂和夫. 線型代数入門 [新装版]. 岩波書店. 2018.
[5] 三宅敏恒. 線形代数学 初歩からジョルダン標準形へ. 培風館. 2008.
[6] S. Lang. Linear Algebra Third Edition. Springer. 1987.
[7] T. Miyake. Linear Algebra From the Beginnings to the Jordan Normal. Springer. 2022.
[8] 雪江明彦. 代数学 11 群論入門. 日本評論社. 2010.
[9] 雪江明彦. 代数学 22 環と体とガロア理論. 日本評論社. 2010.
[10] 桂利行. 代数学 I\text{I} 群と環. 東京大学出版会. 2004.
[11] 松坂和夫. 代数系入門. 岩波書店. 1976.
[12] 高木貞治. 代数学講義 [改訂新版]. 共立出版. 1965.
[13] S. Lang. Algebra Revised Third Edition. Springer. 2002.
[14] M. Artin. Algebra Second Edition. Pearson Education Limited. 2014.
[15] 青本和彦 他. 数学入門辞典. 岩波書店. 2005.


初版:2023-07-31   |   改訂:2024-11-21