線型代数第3講
行列式
【第3講のポイント】
通常、行列式の定義は難しく、その御利益から定義の重要性を理解するまでにかなりの努力が必要になる。本講では、行列式の応用から、それが持つべき性質を導き、そこから定義を導くという、通常とは逆の方向からアプローチする。
【第3講の目標】
学習後、以下のことが身についたかチェックしよう。
- 行列式の意味と性質を理解する
- 行列式の計算ができる
- 行列式を使った逆行列の公式を理解する
【第3講の構成】
- 1節 連立一次方程式の解の公式
- 2節 行列式の性質
- 3節 行列式の計算法と逆行列
本書の見方
- ページをめくる
- 左(右)ページの左(右)端クリックまたはドラッグする
左(右)矢印キーを押す
- 1ページ分の移動
- 左右上端にある[Next]、[Previous]タブをクリックする
- 節の頭に移動
- 右上の【節の移動】タブをクリックし、現れた節を選ぶ
- ページのジャンプ
- 右上のページ番号表示タブをクリックし、現れたページを選ぶ
- 画像の拡大およびリンク先への移動
- 画像やリンク先をクリックすれば、別ウィンドウ(タブ)で表示される
第1節 連立一次方程式の解の公式
本講では、係数行列が正方行列である(未知数の数と方程式の本数が等しい)と仮定する。$2$元連立一次方程式(左式)の解は右式で与えられる。
$\begin{cases}
a_{11}x_1+a_{12}x_2=b_1―①\\
a_{21}x_1+a_{22}x_2=b_2―②
\end{cases}\implies
\begin{cases}
x_1=\dfrac{b_1a_{22}-b_2a_{12}}{a_{11}a_{22}-a_{21}a_{12}}\\
x_2=\dfrac{a_{11}b_2-a_{21}b_1}{a_{11}a_{22}-a_{21}a_{12}}
\end{cases}
\ a_{11}a_{22}{-}a_{21}a_{12}\ne0$
実際、両式から$x_2,\ x_1$を各々消せば次の式が得られる。
$\left\{\begin{array}
\mbox{①式}\times a_{22}-②式\times a_{12}:(a_{11}a_{22}-a_{21}a_{12})x_1=(b_1a_{22}-b_2a_{12})―③\\
a_{11}\times ②式-a_{21}\times ①式:(a_{11}a_{22}-a_{21}a_{12})x_2=(a_{11}b_2-a_{21}b_1)―④
\end{array}\right.$
③、④式は $\begin{vmatrix}
a_{11} & a_{12}\\
a_{21} & a_{22}
\end{vmatrix}
:=a_{11}a_{22}-a_{21}a_{12}$ とおくと次のように書け、
$\begin{vmatrix}
a_{11} & a_{12}\\
a_{21} & a_{22}
\end{vmatrix}x_1=\begin{vmatrix}
b_1 & a_{12}\\
b_2 & a_{22}
\end{vmatrix}―③
\begin{vmatrix}
a_{11} & a_{12}\\
a_{21} & a_{22}
\end{vmatrix}x_2=\begin{vmatrix}
a_{11} & b_1\\
a_{21} & b_2
\end{vmatrix}―④$
$2$項列ベクトルを用いて表現すれば次のようになる。
$\vect{a}_1x_1+\vect{a}_2x_2=\vect{b}\implies
\left\{\begin{array}{l}
\left|\vect{a}_1\ \vect{a}_2\right|x_1=\left|\vect{b}\ \vect{a}_2\right|―③\\
\left|\vect{a}_1\ \vect{a}_2\right|x_2=\left|\vect{a}_1\ \vect{b}\right|―④
\end{array}\right.$
$③$式は、$①,②$式から$x_2$を消す操作「$\mbox{①式}\times a_{22}-②式\times a_{12}$」が$x_2$の係数$\vect{a}_2$のみで定まり、それを$\vect{a}_1$に施して$x_1$の係数になり、$\vect{b}$に施して右辺の定数になると解釈できる。即ち$③$式では$\left|\ \cdot\ \vect{a}_2\right|$の$\ \cdot\ $に$\vect{a}_1$を代入すれば$x_1$の係数になり、$\vect{b}$を代入すれば右辺になる。同様に$④$式では$\left|\vect{a}_1\ \cdot\ \right|$の$\ \cdot\ $に$\vect{a}_2$を代入すれば$x_2$の係数になり、$\vect{b}$を代入すれば右辺になる。
これを$n$元連立一次方程式$A\vect{x}=\vect{b}$に拡張し、次が成立つように$\left|A\right|$を定義しようというのが第2・3節の目標である。
$$A{\ }_n[x_j]=\vect{b}\implies
|A|x_j=|A{\lhd}^j\vect{b}|\ (1\le j\le n)
$$
$\left|A\right|$(が首尾よく定義できた暁にはそれ)を正方行列$A$の行列式といい、解を表す上の公式をクラメルの公式という。さらに、正方行列$A$が正則であるための必要十分条件は$|A|\ne 0$になり、$A^{-1}={}_n[x_{ij}]^n$とおけば、$A{\ }_n[x_{ij}]=\vect{e}_j$ より $|A|x_{ij}=|A{\lhd}^i\vect{e_j}|$ になる。
第2節 行列式の性質
前節の議論を踏まえて行列式が持つべき性質を調べよう。次が成立つとする。
$A=[\vect{a}_i]^n,\ \vect{x}={}_n[x_i]$で、$A\vect{x}=\vect{b}\Rightarrow
\left|A\right|x_i
=\left|A{\lhd}^i\vect{b}\right|$
$\fbox{1}$ $x_i$を$cx_i$で置き換えると、$\vect{a}_i(cx_i)=(c\vect{a}_i)x_i$だから、
$[A{\lhd}^ic\vect{a}_i]\vect{x}=\vect{b}
\Rightarrow |A{\lhd}^ic\vect{a}_i|x_i=|A{\lhd}^i\vect{b}|=|A|cx_i $
よって $\fbox{1}:|A{\lhd}^ic\vect{a}_i|=c|A|$。
$\fbox{2}$ 次に$x_i$を$x_i-1$で置き換えてみよう。
$A(\vect{x}-\vect{e}_i)=\vect{b}\Leftrightarrow A\vect{x}=\vect{a}_i+\vect{b}$。
連立方程式を各々$x_i-1,\ x_i$について解けば
$|A|(x_i-1)=|A{\lhd}^i\vect{b}|
\Leftrightarrow |A|x_i=|A{\lhd}^i\vect{a}_i{+}\vect{b}|$。
よって、$|A{\lhd}^i(\vect{a}_i{+}\vect{b})|=|A|+|A{\lhd}^i\vect{b}|$。
$\vect{a}_i$を$\vect{a}$とおけば、$\fbox{2}:
|A{\lhd}^i(\vect{a}{+}\vect{b})|= |A{\lhd}^i\vect{a}|+|A{\lhd}^i\vect{b}|$。
$\fbox{1}$と$\fbox{2}$を合わせて、行列式の多重線型性という。
$\fbox{3'}$ さらに解がないか定まらない場合は$|A|=0$である。したがって特に方程式の$x_i$の係数$\vect{a}_i$と$x_j$の係数$\vect{a}_j$($i\ne j$)が等しい場合(連立方程式を解くために$x_i$を消そうとすると$x_j$も同時に消えてしまうから)$|A|=0$。
$\fbox{3'}:|A{\lhd}^i\vect{a}_j|=0,\ (i\ne j)$。
性質$\fbox{3'}$は次の交代性$\fbox{3}$と同値であることに注意しよう。
$\fbox{3}:|A{\lhd}^{ij}\vect{a}_j\vect{a}_i|=-|A|,\ (i\ne j)$
問.性質$\fbox{2}$のもとで、$\fbox{3}\Leftrightarrow\fbox{3'}$ を示せ。
ここで行列式が性質$\fbox{1},\ \fbox{2},\ \fbox{3'}\ (\fbox{3})$を持つとしよう。このとき確かにクラメルの公式が成立つ。
$A\vect{x}=[\vect{a}_j]^n{}_n[x_j]=\vect{b}\implies\\
|A{\lhd}^i\vect{b}|
=\left|A{\lhd}^i\left([\vect{a}_j]^n{}_n[x_j]\right)\right|
=\dsum_{j=1}^n|A{\lhd}^i\vect{a}_j|x_j
=|A|x_i$
第3節 行列式の定義式
行列式が持つ(べき)性質を用いて、行列式$|A|=|{}_n[a_{ij}]^n|$の値を$a_{ij}$から求め(ようとし)てみよう。${}_n[a_{ij}]=\sum_{i=1}^n a_{ij}\vect{e}_i=\sum_{i_j=1}^n a_{i_jj}\vect{e}_{i_j}$と(和$\sum$の添え字を$j$ごとに変えて$i_j$で)表せば、多重線型性から
$|A|=|[{}_n[a_{ij}]]^n|
%=|\vect{a}_1\ \vect{a}_2\ \cdots\ \vect{a}_n|
=\left|\left[\sum_{i_j=1}^n a_{i_jj}\vect{e}_{i_j}\right]^n\right|\\
=\dsum_{i_1=1}^n\dsum_{i_2=1}^n\cdots\dsum_{i_n=1}^n a_{i_11} a_{i_22}\cdots a_{i_nn}\left|\vect{e}_{i_1}\ \vect{e}_{i_2}\ \cdots\ \vect{e}_{i_n}\right|$
性質$\fbox{3'}$より、$i_1,i_2,\dots,i_n$の中に等しい番号があると$\left|\vect{e}_{i_1}\ \vect{e}_{i_2}\ \cdots\ \vect{e}_{i_n}\right|=0$だから、$\langle 1,2,\dots,n\rangle$の順列(置換)の全体を$S_n$、$\sigma\in S_n$の$i$番目の値を$\sigma(i)$と表すと
$\displaystyle |A|
=\sum_{\langle i_1,i_2,\dots,i_n\rangle\in S_n} a_{i_11} a_{i_22}\cdots a_{i_nn}\left|\vect{e}_{i_1}\ \vect{e}_{i_2}\ \cdots\ \vect{e}_{i_n}\right|\\
\displaystyle =\sum_{\sigma\in S_n} a_{\sigma(1)1} a_{\sigma(2)2}\cdots a_{\sigma(n)n}\left|\vect{e}_{\sigma(1)}\ \vect{e}_{\sigma(2)}\ \cdots\ \vect{e}_{\sigma(n)}\right|$
$\left[\vect{e}_{\sigma(1)}\ \vect{e}_{\sigma(2)}\ \cdots\ \vect{e}_{\sigma(n)}\right]$は、列の交換によって$\vect{e}_1$を第一列に、$\vect{e}_2$を第2列に、・・・と繰返すと$\left[\vect{e}_1\ \vect{e}_2\ \cdots\ \vect{e}_n\right]=E$に変形できる。交代性$\fbox{3}$により交換の度に行列式の符号が変わるので、$\left|\vect{e}_{\sigma(1)}\ \vect{e}_{\sigma(2)}\ \cdots\ \vect{e}_{\sigma(n)}\right|$の値は$\pm|E|$のどちらかである。実はその符号は変形手順によらず$\mbox{sgn}(\sigma)$と表せて(補足参照)次式を得る。
$\displaystyle |A|=\sum_{\sigma\in S_n} \mbox{sgn}(\sigma) a_{\sigma(1)1} a_{\sigma(2)2}\cdots a_{\sigma(n)n} |E|$
【補足】$n$変数$\displaystyle\frac{n(n-1)}{2}$次多項式$\displaystyle \Delta([x_j]^n):=\prod_{i\lt j}(x_j-x_i)$を差積と呼ぶ。$\Delta([x_{\sigma(j)}]^n)$と$\Delta([x_j]^n)$は同数の因子を含み因子同士の絶対値を等しくとれるから、それらの絶対値は等しく符号の異同は$\sigma$によって一意に定まる。$i\lt j$とする。$\Delta(x_1,\dots,x_i,\dots,x_j,\dots,x_n)$の因子の内、$\Delta(x_1,\dots,x_j,\dots,x_i,\dots,x_n)$で符号が変わる因子は、$(x_j-x_i)$と $i\lt k\lt j$ に対する $(x_j-x_k),\ (x_k-x_i)$ であるから、差積は交代性を持つ。よって、$\displaystyle \mbox{sgn}(\sigma):=\frac{\Delta([x_{\sigma(j)}]^n)}{\Delta([x_j]^n)}$と定義すればよい。
このことは、列$\langle 1,2,\dots,n\rangle$上の順列(置換)$\sigma$をいくつかの位置交換(互換)の積で表した時、その個数の偶奇は表し方によらず一定なことを示している。
最後に$\fbox{4}:|E|=1$と定めれば次の定義式を得る。
$\displaystyle |A|:=\sum_{\sigma\in S_n} \mbox{sgn}(\sigma) a_{\sigma(1)1} a_{\sigma(2)2}\cdots a_{\sigma(n)n}$
問.上で定義した行列式は、性質$\fbox{1},\ \fbox{2},\ \fbox{3},\ \fbox{4}$を持つことを示せ。
定義式に基づき2次・3次の行列式を計算すると次のようになる。
$\begin{vmatrix} a_{11} & a_{12} \\ a_{21} & a_{22} \end{vmatrix}=a_{11}a_{22}-a_{12}a_{21}\\
\begin{vmatrix} a_{11} & a_{12} & a_{13}\\
a_{21} & a_{22} & a_{23}\\
a_{31} & a_{32} & a_{33}\end{vmatrix}=
\begin{array}{l}
\ \ \ \,a_{11}a_{22}a_{33}+a_{12}a_{23}a_{31}+a_{13}a_{21}a_{32} \\
-a_{13}a_{22}a_{31}-a_{11}a_{23}a_{32}-a_{12}a_{21}a_{33}
\end{array}$
3次行列式の定義式は次のように覚えるとよい:$1,2$列を後につなげた
$\begin{array}{|ccc|cc}
a_{11} & a_{12} & a_{13} & a_{11} & a_{12}\\
a_{21} & a_{22} & a_{23} & a_{21} & a_{22}\\
a_{31} & a_{32} & a_{33} & a_{31} & a_{32} \end{array}から
\begin{array}{l}
\text{右下方向に$+$の項を}\\
\text{左下方向に$-$の項を} \end{array}$
取り出す。
ただし$n$次行列式の定義式は$n!$個の項を持ち$n\ge 4$では現実的でない。
例.行列式が定義できたので、クラメルの公式で解を求めてみよう。
$\left[\begin{smallmatrix}1& 1& 1\\2& 1& 1\\2& 3& 1\end{smallmatrix}\right]
\left[\begin{smallmatrix}x_1\\x_2\\x_3\end{smallmatrix}\right]
=\left[\begin{smallmatrix}3\\2\\2\end{smallmatrix}\right]$の時、
$\left|\begin{smallmatrix}1& 1& 1\\2& 1& 1\\2& 3& 1\end{smallmatrix}\right|=
1+2+6-2-3-2=2$より
$x_1=\left|\begin{smallmatrix}3& 1& 1\\2& 1& 1\\2& 3& 1\end{smallmatrix}\right|/2=-1,$
$x_2=\left|\begin{smallmatrix}1& 3& 1\\2& 2& 1\\2& 2& 1\end{smallmatrix}\right|/2=0,$
$x_3=\left|\begin{smallmatrix}1& 1& 3\\2& 1& 2\\2& 3& 2\end{smallmatrix}\right|/2=4$。
注.クラメルの公式は理論的に重要だが、解法としては計算が煩雑である。
$({}_m[a_{ij}]^n)^\mathsf{T}:={}_n[a_{ji}]^m$を${}_m[a_{ij}]^n$の転置行列という。
定理.正方行列$A,B$に対し、$|A|=|A^\mathsf{T}|,\ |A||B|=|AB|$
証明.後半は以下の定理で$m{=}n$の時$l_i{=}i$となることによる。$\sigma^{-1}:\sigma(i)\mapsto i$に対し ${\rm sgn}(\sigma)a_{\sigma(1)1} a_{\sigma(2)2}\cdots a_{\sigma(n)n}={\rm sgn}(\sigma^{-1})a_{1\sigma^{-1}(1)} a_{2\sigma^{-1}(2)}\cdots a_{n\sigma^{-1}(n)}$ だから、
$\displaystyle |A|=\sum_{\sigma\in S_n} {\rm sgn}(\sigma) a_{\sigma(1)1} a_{\sigma(2)2}\cdots a_{\sigma(n)n}=\sum_{\sigma\in S_n} {\rm sgn}(\sigma) a_{1\sigma(1)} a_{2\sigma(2)}\cdots a_{n\sigma(n)}=|A^\mathsf{T}|$。
問.$\mbox{sgn}(\sigma) a_{\sigma(1)1} a_{\sigma(2)2}\cdots a_{\sigma(n)n}=\mbox{sgn}(\sigma^{-1}) a_{1\sigma^{-1}(1)} a_{2\sigma^{-1}(2)}\cdots a_{n\sigma^{-1}(n)}$ を示せ。
ここでは、より一般的に$A\in {}_n[\mathbb{R}]^m,\ B\in {}_m[\mathbb{R}]^n$の積の行列式$|AB|$を$A,B$の$n$次正方部分行列式の積の和で表す公式を考えよう。
定理.関数$F([{}_m[x_{ij}]]^n):[{}_m[\mathbb{R}]]^n\to\mathbb{R}$が多重線型性と交代性を持てば、$F([{}_m[x_{ij}]]^n)=\dsum_{1\le l_1\lt l_2\lt\cdots\lt l_n\le m}
\left|{}_n[x_{l_ij}]^n\right|F([\vect{e}_{l_j}]^n)$。
証明.${}_m[x_{ij}]=\sum_{k_j=1}^m{}x_{k_jj}\vect{e}_{k_j}$より、行列式の定義式の計算と同様に$F([{}_m[x_{ij}]]^n)=\dsum_{k_1=1}^m\dsum_{k_2=1}^m\cdots\dsum_{k_n=1}^m x_{k_11}x_{k_22}\cdots x_{k_nn}F(\vect{e}_{k_1}\ \vect{e}_{k_2}\cdots\vect{e}_{k_n})\\
=\dsum_{1\le k_1,k_2,\dots,k_n\le m}^{i\lt j \Rightarrow k_i\ne k_j}x_{k_11}x_{k_22}\cdots x_{k_nn}F(\vect{e}_{k_1}\ \vect{e}_{k_2}\cdots\vect{e}_{k_n})$
$1,2,\dots,m$から$n$個選ぶ順列の和を、各組合せに対する順列の和に書き直せば
$=\dsum_{1\le l_1\lt l_2\lt\dots\lt l_n\le m}\left(\dsum_{\{k_1,k_2,\dots,k_n\}=\{l_1,l_2,\dots,l_n\}}x_{k_11}x_{k_22}\cdots x_{k_nn}F(\vect{e}_{k_1}\ \vect{e}_{k_2}\cdots\vect{e}_{k_n})\right)\\
=\dsum_{1\le l_1\lt l_2\lt\cdots\lt l_n\le m}
\left|{}_n[x_{l_ij}]^n\right|F(\vect{e}_{l_1}\ \vect{e}_{l_2}\cdots\vect{e}_{l_n})$
定理.$[\vect{a}_j]^m{}_m[\vec{\vect{b}}_i]\in {}_n[\mathbb{R}]^n \Longrightarrow \left|[\vect{a}_j]^m{}_m[\vec{\vect{b}}_i]\right|
=\dsum_{1\le l_1\lt l_2\lt\cdots\lt l_n\le m}\left|[\vect{a}_{l_j}]^n\right|\left|{}_n[\vec{\vect{b}}_{l_i}]\right|$
証明.$A=[\vect{a}_j]^m,\ {}_m[\vec{\vect{b}}_i]=[\vect{b}_j]^n$に対し、$F([\vect{b}_j]^n):=|A[\vect{b}_j]^n|=|[A\vect{b}_j]^n|$は多重線型性と交代性を持つから、$F([\vect{b}_j]^n)=\dsum_{1\le l_1\lt l_2\lt\cdots\lt l_n\le m}\left|[\vec{\vect{b}}_{l_i}]^n\right| F([\vect{e}_{l_j}]^n)=\dsum_{1\le l_1\lt l_2\lt\cdots\lt l_n\le m}\left|[\vec{\vect{b}}_{l_i}]^n\right|\left|[\vect{a}_{l_j}]^n\right|$
上の定理で、$m\lt n$の時、右辺の和は空で、$\left|[\vect{a}_j]^m{}_m[\vec{\vect{b}}_i]\right|=0$。$n=2$の式、
$\left|\dsum_{i=1}^m\begin{bmatrix}a_i\\b_i\end{bmatrix}\begin{bmatrix}c_i& d_i\end{bmatrix} \right|=\begin{vmatrix}\sum a_ic_i& \sum a_id_i\\\sum b_ic_i& \sum b_id_i\end{vmatrix}=\dsum_{1\le i\lt j\le m}\begin{vmatrix}a_i& a_j\\b_i& b_j\end{vmatrix}\begin{vmatrix}c_i& d_i\\c_j& d_j\end{vmatrix}$
をビネ・コーシーの恒等式、
$\left|\dsum_{i=1}^m\begin{bmatrix}x_i\\y_i\end{bmatrix}\begin{bmatrix}x_i& y_i\end{bmatrix} \right|=\begin{vmatrix}\sum x_i^2& \sum x_iy_i\\\sum x_iy_i& \sum y_i^2\end{vmatrix} =\dsum_{1\le i\lt j\le m}\begin{vmatrix}x_i& x_j\\y_i& y_j\end{vmatrix}^2\ge 0$
をラグランジュの恒等式、コーシー・シュワルツの不等式という。
第4節 行列式の計算法と逆行列
行列式の定義式$\displaystyle |A|=\sum_{\sigma\in S_n} \mbox{sgn}(\sigma) a_{\sigma(1)1} a_{\sigma(2)2}\cdots a_{\sigma(n)n}$は、正方行列$A$の各列$j$から、行が重複しないように$a_{\sigma(j)j}$を選んだ$n!$通りの積に符号$\mbox{sgn}(\sigma)$を付けて和をとった式である。これは各行$i$から列が重複しないように$a_{i\sigma(i)}$を選ぶのと同じだから$|A|=|A^\mathsf{T}|$で示したように $\displaystyle |A|=\sum_{\sigma\in S_n} \mbox{sgn}(\sigma) a_{1\sigma(1)} a_{2\sigma(2)}\cdots a_{n\sigma(n)}$が成立つ。したがって行列式で、行(列)に関して成立つ性質は列(行)に関しても成立つ。
基本変形と行列式
列の基本変形(行も同じ)による行列式の値の変化は以下になる。
- 列の交換:$|[^iA]^{j\leftrightarrow}|=|A{\lhd}^{ij}\vect{a}_j\vect{a}_i|=-|A|,\ (i\ne j)$
- 列の$c$倍:$|[^cA]^{i\times}|=|A{\lhd}^ic\vect{a}_i|=c|A|$
- 列の$c$倍を別の列に加える:$|[^{i;c}A]^{j+}|=|A{\lhd}^j(\vect{a}_j{+}c\vect{a}_i)|=|A|,\ (i\ne j)$
【$\because)\ |A{\lhd}^j(\vect{a}_j{+}c\vect{a}_i)|=|A{\lhd}^j\vect{a}_j|
+c|A{\lhd}^j\vect{a}_i|=|A|$】
よって、正方行列$A$を基本変形で単位行列に変形しながら(できなければ$|A|=0$)行列式の値の変化を記録していけば$|A|$の値が求まる。
さらに、正方行列$A$を
$\begin{bmatrix} d& \vec{d}_1 \\ \vect{o} & D \end{bmatrix}
\left(または\ \begin{bmatrix} d& \vec{o} \\ \vect{d_1} & D \end{bmatrix}\right)$
の形に、行列式の値を変えない基本変形 $[^{i;c}A]^{j+},\ [^{i;c}_{j+}A]$ のみを使って(掃き出し法で)変形できれば、第$1$列(行)で選べるのは$d$のみだから $|A|=d|D|$ である。
第$1$行(列)ではなく第$i$行で第$j$列以外(第$j$列で第$i$行以外)を$0$にできた場合
$\begin{bmatrix}
D_{11} & \vect{d}_1 & D_{12} \\
\vec{o} & d & \vec{o}\\
D_{21} & \vect{d}_2 & D_{22} \end{bmatrix}
\left(
\begin{bmatrix}
D_{11} & \vect{o} & D_{12} \\
\vec{d}_1 & d & \vec{d}_2\\
D_{21} & \vect{o} & D_{22} \end{bmatrix}
\right)$
は隣接行(列)の交換$i+j-2$回で$d$を$1$行$1$列に移動できるから
$|A|=(-1)^{i+j}d\begin{vmatrix} D_{11} & D_{12}\\ D_{21} & D_{22} \end{vmatrix}$
が成立つ。
余因子展開
$A={}_n[a_{ij}]^n$から第$i$行と第$j$列を除いた$n-1$次小行列を$A_\widehat{ij}
$とおく。前ページの議論より、$|\vec{\vect{e}}_j{\tiny\triangle}_{\,i}A|=|A{\lhd}^j\vect{e}_i|=(-1)^{i+j}|A_\widehat{ij}|$である。行列$A$をその第$j$列$\vect{a}_j=\sum_{i=1}^na_{ij}\vect{e}_i$や第$i$行$\vec{\vect{a}}_i=\sum_{j=1}^na_{ij}\vec{\vect{e}}_j$に関して展開すれば、多重線型性より以下の式が成立つ。
$|A|=|A{\lhd}^j(\dsum_{i=1}^na_{ij}\vect{e}_i)|
=\dsum_{i=1}^na_{ij}|A{\lhd}^j\vect{e}_i|
=\sum_{i=1}^n(-1)^{i+j}a_{ij}|A_\widehat{ij}|$
$|A|=|(\dsum_{j=1}^na_{ij}\vec{\vect{e}}_j){\tiny\triangle}_{\,i}A|
=\dsum_{j=1}^na_{ij}|\vec{\vect{e}}_j{\tiny\triangle}_{\,i}A|
=\sum_{j=1}^n(-1)^{i+j}a_{ij}|A_\widehat{ij}|$
$(-1)^{i+j}|A_\widehat{ij}|$ を$A$の$(i,j)$余因子といい、次式を行列式の余因子展開という。
$\displaystyle |A|=\sum_{i=1}^na_{ij}(-1)^{i+j}|A_\widehat{ij}|=\sum_{j=1}^na_{ij}(-1)^{i+j}|A_\widehat{ij}|$
多次元行列の行列式を求めるには、行と列の基本変形で$0$の多い行や列を作り、余因子展開で行列の次数を減らしていくのが良い。
例.$\begin{vmatrix} 4& 2& 1& 1\\ 2& 1& 0& 2\\ 1& 0& -1& 1\\ 2& 1 & 1 & 1\end{vmatrix}=
\begin{vmatrix} 5& 2& 0& 2\\ 2& 1& 0& 2\\ 1& 0& -1& 2\\ 3& 1 & 0 & 2\end{vmatrix}=
(-1)^6(-1)\begin{vmatrix} 5& 2& 2\\ 2& 1& 2\\ 3& 1& 2\end{vmatrix}\\
=-2\begin{vmatrix} 5& 2& 1\\ 2& 1& 1\\ 3& 1& 1\end{vmatrix}
=-2\begin{vmatrix} 5& 1& 1\\ 2& 0& 1\\ 3& 0& 1\end{vmatrix}
=-2(-1)^3\begin{vmatrix} 2& 1\\ 3& 1\end{vmatrix}=-2$
行列式の計算には習熟しておくことが望ましい。次ページのアプリを使って行列式の計算になれるとともに、手計算でもできるようになっておこう。
実習.右のアプリで行列式を計算してみよう。方針は次の通り。
- 行や列の基本変形を使って、1ヵ所以外はすべて0の行または列を作り
- 【ij余因子】を使って行列の次数を減らす。
- 1.2.を繰返して2次行列まで減らしたら、定義式で【2次行列式の計算】をする。
注.$n$次行列式の計算にかかる手間は、定義式による方法では$n!$に比例するが、上に述べた方法では$n^3$に比例する。
余因子と逆行列
$A^{-1}$の$(i,j)$成分$x_{ij}$は、クラメルの公式より次式を満たすから、$|A|x_{ij}$は$A$の$(j,i)$余因子に等しい。(添え字$i,j$の順番に注意せよ)
$|A|x_{ij}=|A{\lhd}^i\vect{e_j}|=(-1)^{j+i}|A_\widehat{ji}|$
$n$次行列$A$の$(j,i)$余因子を$(i,j)$成分に持つ行列
$\widehat{A}:={}_n[c_{ij}]^n,\ c_{ij}:=(-1)^{j+i}|A_\widehat{ji}|$を$A$の
余因子行列という。
【$\widehat{A}=\leftidx{_n}{\left[(-1)^{j+i}|A_\widehat{ji}|\right]^n}$と書くのは誤解の恐れがあり、避けている。】
問.$A\widehat{A}=|A|E$を($|A|=0$の時も含めて)示せ。
定理.
- $A$が正則$\iff |A|\ne 0$
- $\displaystyle A^{-1}=\frac{\widehat{A}}{|A|}$
クラメルの公式再考
正則行列$A{=}[\vect{a}_j]^n$に対し、$z$変数多項式を成分とする行列で考えて、
$[\vect{a}_j]^n{}_n[x_j]=\vect{b} \iff
\begin{vmatrix} [\vect{a}_j]^n & \vect{b}\\ [z^{j-1}]^n & [z^{j-1}]^n{}_n[x_j] \end{vmatrix}=0
$
が成立つ。よって $Z:=\begin{bmatrix} A & \vect{b}\\ [z^{j-1}]^n & f \end{bmatrix}$とおけば、$|Z|{=}0$から求まる$z$多項式$f{=}f(z)$は方程式$A{\,}_n[x_j]{=}\vect{b}$の解を係数に持つ。この事実と、$|Z|$を最終行で余因子展開し、$Z_\widehat{(n+1)j}$の最終第$n$列$\vect{b}$を$n{-}j$回の隣接互換で第$j$列に移動した式
$0=|Z|=\dsum_{j=1}^n(-1)^{(n+1)+j}z^{j-1}|Z_\widehat{(n+1)j}|+f|Z_\widehat{(n+1)(n+1)}|=-\dsum_{j=1}^nz^{j-1}|A{\lhd}^j\vect{b}|+f|A|$
から、クラメルの公式 $f(z)=\dsum_{j=1}^nx_jz^{j-1}=\dsum_{j=1}^n\dfrac{|A{\lhd}^j\vect{b}|}{|A|}z^{j-1}$ が得られる。
例1.$\left|\begin{smallmatrix}1& 1& 1& 3\\2& 1& 1& 2\\2& 3& 1& 2\\1& z& z^2& f \end{smallmatrix}\right|
{=}2f{-}8z^2{+}2{=}0$より$f(z){=}{-}1{+}0z{+}4z^2,\
\left[\begin{smallmatrix}1& 1& 1\\2& 1& 1\\2& 3& 1\end{smallmatrix}\right]
\left[\begin{smallmatrix}{-}1\\0\\4\end{smallmatrix}\right]
{=}\left[\begin{smallmatrix}3\\2\\2\end{smallmatrix}\right]$
例2.平面上の$x$座標が異なる$n$点$(x_i,y_i)$を通るラグランジュの補間多項式$f(x)=\dsum_{j=0}^{n-1}a_jx^j$を求めよう。その係数は連立1次方程式${}_n[x_i^{j-1}]^n{}_n[a_{j-1}]={}_n[y_i]$の解だから$\begin{vmatrix} {}_n[x_i^{j-1}]^n & {}_n[y_i]\\ [x^{j-1}]^n & f(x) \end{vmatrix}=0$。左辺を最終列で余因子展開すれば、上と同様に $f(x)=\dsum_{k=1}^n y_k\dfrac{|[x^{j-1}]^n{\tiny\triangle}_{\,k}{\,}_n[x_i^{j-1}]^n|}{|{}_n[x_i^{j-1}]^n|}$。この式の分母、ヴァンデルモンド行列${}_n[x_i^{j-1}]^n$の行列式、は差積で $|{}_n[x_i^{j-1}]^n|=\prod_{i\lt j}(x_j-x_i)=\Delta([x_i]^n)$。(証明は(1))
分子の $[x^{j-1}]^n{\tiny\triangle}_{\,k}{\,}_n[x_i^{j-1}]^n$は${\,}_n[x_i^{j-1}]^n$の第$k$行$[x_k^{j-1}]^n$の$x_k$を$x$に換えた行列なので
$f(x)=\dsum_{k=1}^n y_k\dfrac{\left.\prod_{i\lt j}(x_j-x_i)\right|_{x_k=x}}{\prod_{i\lt j}(x_j-x_i)}=\dsum_{k=1}^n y_k\prod_{j\ne k}\dfrac{x-x_j}{x_k-x_j}$。
(1) $x_i{=}x_j,\ i{\lt}j$の時 左辺${=}0$ だから、因数定理より左辺は右辺で割切れる。両辺を展開した時、各項の次数はすべて$n(n{-}1){/}2$で項$x_1^0x_2^1x_3^2\cdots x_n^{n-1}$の係数は共に1だから 左辺$=$右辺。
問.$a_1,\dots,a_n$が互いに異なる時、連立方程式$\dsum_{i=1}^n a_i^{k}x_i=b^k,\ 0\le k\lt n$を解け。