2019/05/22 行列の余因子

本日のお題

線形代数の授業で行列の「余因子」について扱ったのですが,正直チンプンカンプンでした。「余因子」について教えてください。

了解!! ん~ん,よく分かります。私も大学生のとき同じでした。私の大学生の頃は,一般教養(というものが当時はありました。)の線形代数でさえ,\(n\) 次正方行列の \((i,\ j)\) 小行列 \(\cdots\) などの言い回しで話しを進めるのが当たり前だったので,内容を理解する以前に言っていることが分かりませんでした f^^;

できるだけ具体的に説明しましょう。少々遠回りになりますが,行列式の定義から話しを始めましょう。

行列式の定義

2行2列の行列 \(A = \pmatrix{a & b \cr c & d}\) について行列式 \(|\,A\,|\) を求めることはできますね。

\(|\,A\,| = ad - bc\)

です。それでは,\(A\) が3行3列の行列になったらどうでしょうか?

\(\left|\,\begin{array}{ccc} a_{11} & a_{12} & a_{13} \\ a_{21} & a_{22} & a_{23} \\ a_{31} & a_{32} & a_{33}\end{array}\,\right| = \begin{array}{l} a_{11}a_{22}a_{23} + a_{12}a_{23}a_{31} + a_{13}a_{21}a_{32} \\ \quad - a_{11}a_{23}a_{32} - a_{12}a_{21}a_{33} - a_{13}a_{22}a_{31} \end{array}\)

サラスの公式がありました。行列式の定義がうろ覚えでも,ここまでは何とかなります。しかし,4行4列以上になると,行列式って一体何だろうがしっかりイメージできていないと,理解に苦しむことになります。

行列式は次のように考えて求められます。

まず,2行2列の正方行列 \(\pmatrix{a & b \cr c & d}\) の場合

1. まず,1行目 \(\pmatrix{a & b}\) から1つの要素を取り出します。仮に\(a\) を取り出したとしましょう。\(a\) は1列目の要素です。

2. 次に2行目 \(\pmatrix{c & d}\) からも要素を1つ取り出しますが,このとき,まだ取り出していない列の要素を取り出します。2行2列ならば,1行目で1列目の要素を取り出したときに残っているのは2列目だけです。したがって,\(d\) を取り出すことになります。

3. 次が分かりにくいところです。1. と 2. では,1行目に1列目の \(a\) をとり,2行目に2列目の \(d\) をとっているので,これを \(\left(\textcolor{red}{1},\ \textcolor{blue}{2}\right)\) と書くことにします。その上で,\((1,\ 2)\) の要素を2つだけ入れ替えるという操作を繰り返すとき,何回の操作で \(\left(\textcolor{red}{1},\ \textcolor{blue}{2}\right)\) にすることができるかを考えます。
この場合,操作は必要ありませんね。\(0\) 回です。
いやいや,\((1,\ 2)\) から1度 \(1\)\(2\) を入れ換えて,さらにもう1度入れ替えてもイイんじゃネ \((1,\ 2)\ \rightarrow\ (2,\ 1)\ \rightarrow\ (1,\ 2)\) そうしたら2回になるじゃん!!
当然のツッコミです。そう来なくてはいけません。実は,操作の回数そのものではなく,操作が偶数回か?奇数回か?が大切なところです。証明は避けますが,偶数回か?奇数回か?は,どのように操作をしても一致します。偶数回の場合は,1. 2. で取り出した要素を掛けて \(ad\) を作ります。

4. 再び1行目に戻ります。\(\pmatrix{a & b}\) からまだ取り出していない要素を選んで取り出します。この場合は \(b\) しか残っていません。

5. 2行目の \(\pmatrix{c & d}\) から,1行目で取り出した2列目以外の列の要素を取り出します。この場合は,\(c\) のみが残っています。

6. 上の 3. と同様に \((1,\ 2)\) から \((2,\ 1)\) にするとき,数字の入れ替えは何回かを考えます。1回ですから奇数回です。奇数回のときは,取り出した要素の積 \(bc\)\(-\) を付けます。

7. 以上の操作で得られた \(ad\)\(-bc\) とを加えた \(ad - bc\) が行列 \(\pmatrix{a & b \cr c & d}\) の行列式になります。

以上の操作は,行を基に行いましたが,列を基にして列と行を全く入れ替えた操作をしても同じ結果になります。

続いて,3行3列の正方行列の行列式を求めましょう。

2行2列の正方行列は,単純すぎて何を計算したか?が逆に分かりにくかったかもしれません。同じ操作を3行3列の行列 \(\pmatrix{a_{11} & a_{12} & a_{13} \cr a_{21} & a_{22} & a_{23} \cr a_{31} & a_{32} & a_{33}}\) に拡張します。これも行を基に行います。

1. 1行目 \(\pmatrix{a_{11} & a_{12} & a_{13}}\) から要素を1つ取り出します。例えば \(a_{12}\) をとったとします。

2. 2行目 \(\pmatrix{a_{21} & a_{22} & a_{23}}\) から上とは異なる列の要素を1つ取り出します。例えば,2列目以外から \(a_{23}\) をとったとします。

3. 3行目 \(\pmatrix{a_{31} & a_{32} & a_{33}}\) から上とは異なる列の要素を1つ取り出します。残っているのは \(a_{31}\) のみです。

4. 上の操作で何列目の要素をとったかを \((2,\ 3,\ 1)\) のように表します。\((1,\ 2,\ 3)\) から数字2つを入れ替える操作を行ったとき,何回の操作で \((2,\ 3,\ 1)\) になるかを考え,それが偶数のときは取り出した3つの要素の積を,奇数のときは要素の積に \(-\) を付けたものを求めます。この場合は \(a_{12}a_{23}a_{31}\) です。

このような要素の取り出し方は,2行2列の正方行列ならば \(2! = 2\) 通り,3行3列の正方行列ならば \(3! = 6\) 通りあります。

各列からの要素の取り出し方 符号 符号\(\times\)要素の積
\((1,\ 2,\ 3)\) \(+\) \(a_{11}a_{22}a_{33}\)
\((1,\ 3,\ 2)\) \(-\) \(-a_{11}a_{23}a_{32}\)
\((2,\ 1,\ 3)\) \(-\) \(-a_{12}a_{21}a_{33}\)
\((2,\ 3,\ 1)\) \(+\) \(a_{12}a_{23}a_{31}\)
\((3,\ 1,\ 2)\) \(+\) \(a_{13}a_{21}a_{32}\)
\((3,\ 2,\ 1)\) \(-\) \(-a_{13}a_{22}a_{31}\)

6通りすべてを書き並べたので,これらを上から下まで加えて行列式が出来上がります。勿論,サラスの公式と同じ式になります。

行数と列数が増えても同じです

1. 1行目から順に列に重複なく要素を取り出して,取り出した要素の積を作ります。

2. 1.において,どの列から取り出したかをリストのように並べ,\((1,\ 2,\ \cdots\ ,\ n)\) から数字を何回交換すればリストに一致するか,交換の回数を求めて,偶数回ならば 1. の要素の積はそのまま,奇数回ならば要素の積の符号を変えます。

3. 1. 2. の操作を繰り返して得られた要素の積をすべて加えます。\(n\)\(n\) 列の正方行列ならば,要素の積は \(n!\) 通りあります。

何だから分かったような分からないような説明ですね。数学の記号を使い,置換や互換という言葉を使えばもっとすっきり定義できます ・・・ が,それが分かりやすいかというと,自分がそうではなかったので敢えてこのように書いてみました。

小行列と余因子

前置きが随分長くなってしまいました。本題の小行列と余因子について,3行3列の正方行列を例に説明します。この行列の行列式を,もう一度見てみましょう。

各列からの要素の取り出し方 符号 符号\(\times\)要素の積
\((1,\ 2,\ 3)\) \(+\) \(a_{11}a_{22}a_{33}\)
\((1,\ 3,\ 2)\) \(-\) \(-a_{11}a_{23}a_{32}\)
\((2,\ 1,\ 3)\) \(-\) \(-a_{12}a_{21}a_{33}\)
\((2,\ 3,\ 1)\) \(+\) \(a_{12}a_{23}a_{31}\)
\((3,\ 1,\ 2)\) \(+\) \(a_{13}a_{21}a_{32}\)
\((3,\ 2,\ 1)\) \(-\) \(-a_{13}a_{22}a_{31}\)

表1

このうち,①と②,③と④,⑤と⑥ をそれぞれ組み合わせます。すると \[\begin{eqnarray}\left|\,A\,\right| &=& a_{11}\left(a_{22}a_{33} - a_{23}a_{32}\right) \\ && \hspace{2em} - a_{12} \left(a_{21}a_{33} - a_{23}a_{31}\right) + a_{13}\left(a_{21}a_{32} - a_{22}a_{31}\right) \\[2px] &=& a_{11}\left|\matrix{a_{22} & a_{23} \cr a_{32} & a_{33}}\right| - a_{12}\left|\matrix{a_{21} & a_{23} \cr a_{31} & a_{33}}\right| + a_{13}\left|\matrix{a_{21} & a_{22} \cr a_{31} & a_{32}}\right|\tag{♪}\end{eqnarray}\] と変形することができます。勿論,行列式を作るときに行列の作り方は1通りではありません。作為的にこのような行列を選びました。いずれにしても,3行3列の行列式が2行2列の行列式で表されています。大きな行列の行列式は,1つ小さな(という言い方は?ですが \(\cdots\) f^^;)行列式の計算に変えることができるということです。その話しを更に進める前に,言葉の定義です。

作為的に作った行列式に着目しましょう。\(a_{11}\) にかけられている行列式は行列 \(\pmatrix{a_{22} & a_{23} \cr a_{32} & a_{33}}\) のものです。この行列は \[\left(\begin{array}{ccc} \textcolor{red}{\boldsymbol{a_{11}}} & \textcolor{red}{a_{12}} & \textcolor{red}{a_{13}} \\ \textcolor{red}{a_{21}} & a_{22} & a_{23} \\ \textcolor{red}{a_{31}} & a_{32} & a_{33} \end{array}\right)\quad \Longrightarrow\quad \pmatrix{a_{22} & a_{23} \cr a_{32} & a_{33}}\] 元の行列から要素 \(a_{11}\) を含む第1行と第1列を取り除いて作った行列であると考えられます。要素 \(a_{12}\)\(a_{13}\) にかけられた行列式の行列についても同様のことが言えます。 \[\begin{eqnarray} & \left(\begin{array}{ccc} \textcolor{red}{a_{11}} & \textcolor{red}{\boldsymbol{a_{12}}} & \textcolor{red}{a_{13}} \\ a_{21} & \textcolor{red}{a_{22}} & a_{23} \\ a_{31} & \textcolor{red}{a_{32}} & a_{33} \end{array}\right)\quad \Longrightarrow\quad \pmatrix{a_{21} & a_{23} \cr a_{31} & a_{33}} & \\[8px] & \left(\begin{array}{ccc} \textcolor{red}{a_{11}} & \textcolor{red}{a_{12}} & \textcolor{red}{\boldsymbol{a_{13}}} \\ a_{21} & a_{22} & \textcolor{red}{a_{23}} \\ a_{31} & a_{32} & \textcolor{red}{a_{33}} \end{array}\right)\quad \Longrightarrow\quad \pmatrix{a_{21} & a_{22} \cr a_{31} & a_{32}} & \end{eqnarray}\] 一般に,\(m\)\(n\) 列の行列 \(A\) の第 \(i\)\(j\) 列の成分を取り除いた,\(m - 1\)\(n - 1\) 列の行列を行列 \(A\)\((i,\ j)\) 成分に対する 小行列 といい,\(A_{ij}\) と表すことがあります。ここでは,この表記を使います。この記号を用いると,(♪) の式は次のように書くことができます。 \[\begin{eqnarray} \left|\,A\,\right| &=& a_{11}\cdot\left|\,A_{11}\,\right| - a_{12}\cdot\left|\,A_{12}\,\right| + a_{13}\cdot\left|\,\,A_{13}\,\right| \\[2px] &=& a_{11}\cdot\left|\,A_{11}\,\right| + a_{12}\cdot\left(-\left|\,A_{12}\,\right|\right) + a_{13}\cdot\left|\,\,A_{13}\,\right| \end{eqnarray}\] 上の式で現れた \(\left|A_{11}\right|\)\(-\left|A_{12}\right|\)\(\left|A_{31}\right|\) をそれぞれ行列 \(A\)\((1,\ 1)\) 成分に対する 余因子\((1,\ 2)\) 成分に対する 余因子\((1,\ 3)\) 成分に対する 余因子 といい,式 (♪) を行列 \(A\) の第1行に関する 余因子展開 といいます。

ここで気になるのが,\((1,\ 2)\) 成分に対する余因子には \(-\) がついていることです。どのようなときに \(-\) がつくのか? それを知るために余因子展開を続けてみましょう。

余因子展開

余因子展開は,第1行に関してできるものではなく,どの行,どの列に関しても行うことができます。例えば,第1列について考えましょう。

各列からの要素の取り出し方 符号 符号\(\times\)要素の積
\((1,\ 2,\ 3)\) \(+\) \(a_{11}a_{22}a_{33}\)
\((1,\ 3,\ 2)\) \(-\) \(-a_{11}a_{23}a_{32}\)
\((2,\ 1,\ 3)\) \(-\) \(-a_{12}a_{21}a_{33}\)
\((2,\ 3,\ 1)\) \(+\) \(a_{12}a_{23}a_{31}\)
\((3,\ 1,\ 2)\) \(+\) \(a_{13}a_{21}a_{32}\)
\((3,\ 2,\ 1)\) \(-\) \(-a_{13}a_{22}a_{31}\)

表1

またまた,表1の登場です。6つの要素積のうち,\(a_{11}\) を含むものは ①と②,\(a_{21}\) を含むものは ③と⑤,\(a_{13}\) を含むものは ④と⑥ です。それぞれを組み合わせると次の式を作ることができます。 \[\begin{eqnarray}\left|\,A\,\right| &=& a_{11}\left(a_{22}a_{33} - a_{23}a_{32}\right) \\ && \hspace{2em} - a_{21} \left(a_{12}a_{33} - a_{13}a_{31}\right) + a_{31}\left(a_{12}a_{23} - a_{13}a_{31}\right) \\[2px] &=& a_{11}\left|\matrix{a_{22} & a_{23} \cr a_{32} & a_{33}}\right| - a_{21}\left|\matrix{a_{12} & a_{13} \cr a_{32} & a_{33}}\right| + a_{31}\left|\matrix{a_{12} & a_{13} \cr a_{22} & a_{23}}\right| \\[2px] &=& a_{11}\cdot\left|A_{11}\right| - a_{21}\cdot\left|A_{21}\right| + a_{31}\cdot\left|A_{31}\right| \\[2px] &=& a_{11}\cdot\left|A_{11}\right| + a_{21}\cdot\left(-\left|A_{21}\right|\right) + a_{31}\cdot\left|A_{31}\right| \end{eqnarray}\] やはり,\((2,\ 1)\) 成分に対する小行列の行列式には \(-\) がつきます。

もう一つ,第2行に関する余因子展開,つまり \(a_{21}\)\(a_{22}\)\(a_{23}\) が小行列の行列式の前につくように展開します。

\(a_{21}\) を含む要素積は ③と⑤,\(a_{22}\) を含む要素積は ①と⑥,\(a_{23}\) を含む要素性は ②と④ です。それぞれを組み合わせて変形します。 \[\begin{eqnarray}\left|\,A\,\right| &=& -a_{21}\left(a_{12}a_{33} - a_{13}a_{32}\right) \\ && \hspace{2em} + a_{22} \left(a_{11}a_{33} - a_{13}a_{31}\right) - a_{23}\left(a_{11}a_{32} - a_{12}a_{31}\right) \\[2px] &=& -a_{21}\left|\matrix{a_{12} & a_{13} \cr a_{32} & a_{33}}\right| + a_{22}\left|\matrix{a_{11} & a_{13} \cr a_{31} & a_{33}}\right| + a_{23}\left|\matrix{a_{11} & a_{12} \cr a_{31} & a_{32}}\right| \\[2px] &=& -a_{21}\cdot\left|A_{21}\right| + a_{22}\cdot\left|A_{22}\right| - a_{23}\cdot\left|A_{23}\right| \\[2px] &=& a_{21}\cdot\left(-\left|A_{21}\right|\right) + a_{22}\cdot\left|A_{22}\right| + a_{23}\cdot\left(-\left|A_{23}\right|\right)\end{eqnarray}\] 今度は,\((2,\ 1)\) 成分に対する小行列と \((2,\ 3)\) 成分に対する小行列の行列式に \(-\) がつきました。行列式の定義をじっくり見ると,\((i,\ j)\) 成分に対する小行列のうち \(i\)\(j\) の偶数・奇数が一致していれば \(+\) で,一致していなければ \(-\) になることが分かると思います。言い換えると \(i + j\) が偶数ならば \(+\) で奇数ならば \(-\) ということです。更に書き直すと \((-1)^{i + j}\) と言うことができます。このことは,3行3列の正方行列の場合に具体的にイメージできることを目指しているので,敢えてここまでの説明に止め,これ以上の証明はしません。

それでは,改めて行列の余因子の定義と余因子展開です。

正方行列 \(A\) について,\((i,\ j)\) 成分に対する小行列を \(A_{ij}\) と表すとき \[(-1)^{i + j}\cdot\left|\,A_{ij}\,\right|\] を行列 \(A\)\((i,\ j)\) 成分に対する余因子といいます。

さらに,余因子を用いると次のことができるようになります。

正方行列 \(A\) の行列式は,\((i,\ j)\) 成分に対する余因子を \(C_{ij}\) と表すと,任意の行 ― 例えば 第 \(i\) 行 ― について次のように余因子展開ができます。 \[\left|\,A\,\right| = a_{i1}\cdot C_{i1} + a_{i2}\cdot C_{i2} + \cdots + a_{in}\cdot C_{in}\] 同様に,任意の列 ― 例えば 第 \(j\) 列 ― についても次のように余因子分解ができます。 \[\left|\,A\,\right| = a_{1j}\cdot C_{1j} + a_{2j}\cdot C_{2j} + \cdots + a_{nj}\cdot C_{nj}\]

今日は,分かっている方にとってはとても冗長な説明でした。(まっ!! いつもそうですかね。)内容の割に長い説明になってしまいましたので,ここでお開きといたします。余因子展開により行列式の値を求める際には,基本変形と組み合わせるので,効果的に使えるようになるためには説明しなければならないことがマダマダあります。それは,次の機会に \(\cdots\) といたします。

最終更新日時: 2021年 03月 5日(金曜日) 17:34