線形代数⑦ 余因子展開・余因子行列
余因子行列・余因子展開
行列式の計算がかなり大変だったので、もう少し別のやり方で計算できないか探ってみましょう。(いや、大変なままですがね...)※行列式の両端の線がうまく表示できない端末があるようです。
余因子展開の導出
行列式の性質を用いて余因子展開を導出します。(参考:行列式の定義・性質とサラスの公式)\begin{align*}
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i1}+b_{i1} & a_{i2}+b_{i2} & \cdots & a_{in}+b_{in} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
&=
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i1} & a_{i2} & \cdots & a_{in} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
+
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
b_{i1} & b_{i2} & \cdots & b_{in} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
\end{align*}
を用います。
\begin{align*}
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i1} & a_{i2} & \cdots & a_{in} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
&=
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i1} & 0 & \cdots & 0 \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
+
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
0 & a_{i2} & \cdots & 0 \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
+
\cdots
+
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
0 & 0 & \cdots & a_{in} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
\end{align*}
ここで、右辺の各行列式の第$i$行がある一つの成分を除いて0の行列式になっています。行の入れ替え、列の入れ替えによって、左上まで持ってくると、
\begin{align*}
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i1} & a_{i2} & \cdots & a_{in} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
&=
(-1)^{i-1}\begin{vmatrix}
a_{i1} & 0 & \cdots & 0 \\
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
+
(-1)^{i}\begin{vmatrix}
a_{i2} & 0 & \cdots & 0 \\
a_{12} & a_{11} & \cdots & a_{1n} \\
a_{22} & a_{21} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
\vdots & \vdots & \ddots & \vdots \\
a_{n2} & a_{n1} & \cdots & a_{nn}
\end{vmatrix}
+
\cdots
+
(-1)^{i+n-2}
\begin{vmatrix}
a_{in} & 0 & \cdots & 0 \\
a_{2n} & a_{11} & \cdots & a_{1(n-1)} \\
a_{3n} & a_{21} & \cdots & a_{2(n-1)} \\
\vdots & \vdots & \ddots & \vdots \\
\vdots & \vdots & \ddots & \vdots \\
a_{nn} & a_{n1} & \cdots & a_{n(n-1)}
\end{vmatrix}
\end{align*}
ここで、行列式の性質
\begin{align*}
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
0 & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
0 & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
&=
a_{11}
\begin{vmatrix}
a_{22} & a_{23} & \cdots & a_{2n} \\
a_{31} & a_{22} & \cdots & a_{3n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
\end{align*}
を用います。転置しても行列式は変わらないので、行列の転置を取れば、1行目に0が出てきても同じような性質が成り立ちます。つまり、
\begin{align*}
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i1} & a_{i2} & \cdots & a_{in} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
&=
(-1)^{i-1}a_{i1}
\begin{vmatrix}
a_{12} & \cdots & a_{1n} \\
a_{22} & \cdots & a_{2n} \\
\vdots & \ddots & \vdots \\
a_{n2} & \cdots & a_{nn}
\end{vmatrix}
+
(-1)^{i}a_{i2}
\begin{vmatrix}
a_{11} & \cdots & a_{1n} \\
a_{21} & \cdots & a_{2n} \\
\vdots & \ddots & \vdots \\
a_{n1} & \cdots & a_{nn}
\end{vmatrix}
+
\cdots
(-1)^{i+n-2}a_{in}
\begin{vmatrix}
a_{11} & \cdots & a_{1(n-1)} \\
a_{21} & \cdots & a_{2(n-1)} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & \cdots & a_{n(n-1)}
\end{vmatrix}
\end{align*}
\begin{align*}
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i1} & a_{i2} & \cdots & a_{in} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
&=
(-1)^{i-1}a_{i1}
\begin{vmatrix}
a_{12} & \cdots & a_{1n} \\
a_{22} & \cdots & a_{2n} \\
\vdots & \ddots & \vdots \\
a_{n2} & \cdots & a_{nn}
\end{vmatrix}
+
(-1)^{i}a_{i2}
\begin{vmatrix}
a_{11} & \cdots & a_{1n} \\
a_{21} & \cdots & a_{2n} \\
\vdots & \ddots & \vdots \\
a_{n1} & \cdots & a_{nn}
\end{vmatrix}
+
\cdots
(-1)^{i+n-2}a_{in}
\begin{vmatrix}
a_{11} & \cdots & a_{1(n-1)} \\
a_{21} & \cdots & a_{2(n-1)} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & \cdots & a_{n(n-1)}
\end{vmatrix}
\end{align*}
ただし、各行列式の係数である$-1$の指数部分がわかりにくい数になっています。それぞれ指数部分を2増やしても1をかけるのと同じなので、2増やすと、
\begin{align*}
\begin{vmatrix}
a_{11} & a_{12} & \cdots & a_{1n} \\
a_{21} & a_{22} & \cdots & a_{2n} \\
\vdots & \vdots & \ddots & \vdots \\
a_{i1} & a_{i2} & \cdots & a_{in} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & a_{n2} & \cdots & a_{nn}
\end{vmatrix}
&=
(-1)^{i+1}a_{i1}
\begin{vmatrix}
a_{12} & \cdots & a_{1n} \\
a_{22} & \cdots & a_{2n} \\
\vdots & \ddots & \vdots \\
a_{n2} & \cdots & a_{nn}
\end{vmatrix}
+
(-1)^{i+2}a_{i2}
\begin{vmatrix}
a_{11} & \cdots & a_{1n} \\
a_{21} & \cdots & a_{2n} \\
\vdots & \ddots & \vdots \\
a_{n1} & \cdots & a_{nn}
\end{vmatrix}
+
\cdots
(-1)^{i+n}a_{in}
\begin{vmatrix}
a_{11} & \cdots & a_{1(n-1)} \\
a_{21} & \cdots & a_{2(n-1)} \\
\vdots & \vdots & \ddots & \vdots \\
a_{n1} & \cdots & a_{n(n-1)}
\end{vmatrix}
\end{align*}
$i$行$j$列の要素$a_{ij}$を先頭に出してきた場合$(-1)$の指数部分は$i+j$になるという、意味のあるように変形ができました。これを第$i$行に関する余因子展開といいます。転置行列を取っても行列式を変わらないので、列に関しても余因子展開をすることができます。
これで高次の行列式も次数を落として計算を進めることができます。ちなみに、結果を書くのが大変なので、改めて以下のように書き直します。
$n$次正方行列$A$から$i$行$j$列を抜いた行列を$A_{ij}$と表すことにします。このとき、第$i$行に関する余因子展開は、
\begin{align}
\det{A}=\sum_{j=1}^n (-1)^{i+j}a_{ij}\det{A_{ij}} \label{eq:1}
\end{align}
同様にして第$j$列に関する余因子展開は、
\begin{align*}
\det{A}=\sum_{i=1}^n (-1)^{i+j}a_{ij}\det{A_{ij}}
\end{align*}
余因子行列とは?
余因子行列
$(i,j)$成分の余因子$\tilde{a}_{ij}$は、以下のように定義されます。
\begin{align*}
\tilde{a}_{ij}=(-1)^{i+j}\det{A_{ij}}
\end{align*}
と定義された$\tilde{a}_{ij}$に対して、余因子行列$\tilde{A}$を
\begin{align*}
\tilde{A}=[\tilde{a}_{ji}]={}^t[\tilde{a}_{ij}]
\end{align*}
と定義します。ただし、$\tilde{a}_{ji}$と$i$と$j$が逆転していることに注意してください。余因子行列に対して、
\begin{align}
A\tilde{A}=\tilde{A}A=(\det{A})E \label{eq:2}
\end{align}
が成り立ちます。($E$は単位行列)
\begin{align*}
b_{ij}
&=\sum_{k=1}^n a_{ik}\tilde{a}_{jk} \\
&=\sum_{k=1}^n (-1)^{j+k}a_{ik}\det{A_{jk}} \\
&=\sum_{k=1}^n (-1)^{j+k}a_{ik}\det{A_{jk}}
\end{align*}
ここで、$i=j$のとき、\eqref{eq:1}よりこの右辺は$\det{A}$に等しくなります。問題は$i\ne j$の時なのですが、行列$A$の$j$行目を$i$行目で置き換えた行列$C$$(=[c_{ij}])$を考えます。このとき、$A_{jk}$$=C_{jk}$であり、かつ、$a_{ik}$$=c_{ik}$となるので、
\begin{align*}
b_{ij}&=\sum_{k=1}^n (-1)^{j+k}c_{ik}\det{C_{jk}}=\det{C}
\end{align*}
ただし、$C$は同じ成分しか持たない行をもつ行列なので、行列式は0になります。よって、
\begin{align*}
A\tilde{A}=(\det{A})E
\end{align*}
が示せました。
余因子行列による逆行列の表現
いま、$\det{A}\ne 0$とします。このとき、\begin{align*}
A^{-1}=\dfrac{1}{\det{A}}\tilde{A}
\end{align*}
となります。つまり、$\det{A}$$\ne 0$のとき、$A$の逆行列が存在します。$\det{A}$$=0$の時は、逆行列が存在しないことになります。