行列式が面(体)積を表すことの証明的な

二次元の平面内 \( O(0,0), \ A(a_1, a_2),\ B(b_1, b_2) \) の三点が作る三角形の面積が \( \displaystyle \frac{1}{2} |a_1b_2 - a_2b_1| \) で与えられることは、高校の数学の教科書にも乗ってる有名事実です。図形的な解釈は、鯵坂もっちょさんのこのツイートがわかりやすいです :



さて、この式ですが、二つのベクトル

\(\boldsymbol{a} = \overrightarrow{OA} = \left( \begin{array}{c} a_1 \\ a_2 \\ \end{array} \right) , \\
\boldsymbol{b} = \overrightarrow{OB} = \left( \begin{array}{c} b_1 \\ b_2 \\ \end{array} \right) \)

を並べて作った行列 \( (\boldsymbol{a}, \boldsymbol{b}) = \left( \begin{array}{c} a_1 \ b_1 \\ a_2 \ b_2 \\ \end{array} \right) \)

の行列式に見えます。これは偶然ではなく、ちゃんと理由があります。そこで、以下ではこれを示していきます。


まず、絶対値が鬱陶しいので、「符号付き面積」を定義しましょう。

平面上のベクトル \(\vec{a}, \vec{b}\) のなす平行四辺形( 三角形ではない )の符号付き面積を表す関数 \(S(\vec{a}, \vec{b})\) を、

原点 \( O \) に立ってベクトル \(\vec{a}\) の方向を向いたときに \(\vec{b}\) が左側に見えるときに正、右側にあるときに負とするように決めます( 同じ方向なら 0 )。

例えば、\(\vec{e_1} = (1, 0), \ \vec{e_2} = (0, 1)\) をそれぞれx軸、y軸正方向の単位ベクトルとするとき、

\((\mathrm{i}) \ \ \ S(\vec{e_1}, \vec{e_2}) = 1\)

となります。また、符号の定義の仕方からすぐ分かるように、

\((\mathrm{ii}) \ \ S(\vec{b}, \vec{a}) = -S(\vec{a}, \vec{b})\)

が成り立ちます。最後に

\((\mathrm{iii}) \ S(\vec{a} + \vec{a'}, \vec{b}) = S(\vec{a}, \vec{b}) + S(\vec{a'}, \vec{b}), \\
S(\vec{a}, \vec{b} + \vec{b'}) = S(\vec{a}, \vec{b}) + S(\vec{a}, \vec{b'}), \\
S(k\vec{a}, \vec{b}) = S(\vec{a}, k\vec{b}) = kS(\vec{a}, \vec{b})\)

が成り立つことに注意します。これは、下の雑な画像を見れば分かると思われます。まず第一式ですが、他方のベクトルからみた平行四辺形の「高さ」について、ベクトルの和を取ると「高さ」もその和になることが分かるでしょう。そして、第二式も三角形の相似を使えば、「高さ」も同じ倍されることが分かります。

f:id:marx_saul:20190308000354p:plain
(i) (ii) (iii) を使って、 \(a = \left( \begin{array}{c} a_1 \\ a_2 \\ \end{array} \right) , \\
b = \left( \begin{array}{c} b_1 \\ b_2 \\ \end{array} \right) \) に対して

\( S(a, b) = a_1b_2 - a_2b_1 \)

が成立することを示していきます。

\(
\vec{a} = a_1\vec{e_1} + a_2\vec{e_2}, \ \ \vec{b} = b_1\vec{e_1} + b_2\vec{e_2}\) として
\(
\begin{align}
S(\vec{a}, \vec{b}) & = S(a_1\vec{e_1} + a_2\vec{e_2}, \ \ \vec{b}) \\
& = a_1S(\vec{e_1}, \vec{b}) + a_2 S(\vec{e_2}, \vec{b}) \\
& = a_1 S(\vec{e_1}, \ \ b_1\vec{e_1} + b_2\vec{e_2}) + a_2 S(\vec{e_2}, \ \ b_1\vec{e_1} + b_2\vec{e_2}) \\
& = a_1 (\ S(\vec{e_1}, b_1\vec{e_1}) + S(\vec{e_1}, b_2\vec{e_2})\ ) + a_2 (\ S(\vec{e_2}, b_1\vec{e_1}) + S(\vec{e_2}, b_2\vec{e_2}) \ ) \\
& = a_1 (\ b_1 S(\vec{e_1}, \vec{e_1}) + b_2 S(\vec{e_1}, \vec{e_2})\ ) + a_2 (\ b_1S(\vec{e_2}, \vec{e_1}) + b_2S(\vec{e_2}, \vec{e_2}) \ ) \\
& = a_1 ( b_1 \cdot 0 + b_2 \cdot 1 ) + a_2 ( b_1 \cdot (-1) + b_2 \cdot 0 ) \\
& = a_1b_2 - a_2b_1
\end{align}
\)

となって、証明されました。


さて、このクソめんどくさい、長ったらしい証明をすることによって、何か嬉しいことはあるでしょうか? 今は二次元でやっただけですが、この議論の良いところは、高次元でも成り立つことです。具体的にはこう :


写像 \( f(x_1, x_2, ..., x_n ) \) が、n 個の n 次元実ベクトルに対して、実数値を返す関数であり、かつ以下の二つの条件 n重線形性、及び交代性 :

\( F(x_1, ..., x_{i-1}, kx_i + ly, x_{i+1}, ..., x_n ) \\ = kF(x_1, ..., x_{i-1}, x_i, x_{i+1}, ..., x_n ) \\ + lF(x_1, ..., x_{i-1}, y, x_{i+1}, ..., x_n ) \)
\( F(x_{\sigma(1)}, x_{\sigma(2)}, ..., x_{\sigma(n)} ) \\ = \operatorname{sgn} \sigma \ F(x_1, x_2, ..., x_n ) \)
( ただし、\( \sigma \) は n 次の置換で、\( \operatorname{sgn} \) は置換の符号を表す )

が成り立つとする。このとき、n 次元実ベクトル空間 \( \mathbb{R}^n \) の自然な正規直交基底 \( e_1, e_2, ..., e_n \) と、\( x_1, x_2, ..., x_n \in \mathbb{R}^n \) を順番に並べて得られる n 次正方行列 \( X \) に対し、

\( F(x_1, x_2, ..., x_n) = \operatorname{det} X \ F(e_1, e_2, ..., e_n) \)

が成立する。

二次元空間の場合、さっきのように定義した符号付き面積の関数は、2次線形性と交代性を満たしていました。
したがって、行列式が出てくることは上の定理より自然なことなのです。

そして、もっと高次元でも、符号付き体積が n 次線形性と交代性を満たすことを確かめれば、上の定理より行列式の形で書けることが分かります。