行列式の公理的解釈

はじめに

乱文注意.

大学に入って線形代数の授業を取ると,序盤に行列式というものが登場します.ドラクエ11ならサマディーぐらい.

行列が登場して,行列の積が定義されて少ししたくらいでしょうか.行列の積の定義もよく分からん状態で行列式とか出てくるの大変だなって思います.(行列の積は,線形写像の合成と整合的になるように定義していると考えるいいのではないでしょうか.)

行列式を勉強したはいいものの,なんでこんな計算するの?ってなる人は多そうかなと思ったので,気になる人は読んでみてください.初学者向けです.

いろんな線形代数の参考書をみてみると,行列式に関する内容はとても構成的に書かれています.というかブルバキスタイルに準えた数学書ってみんなそうかもしれないんですけど.定義→定理→性質→…みたいな.ただ定義の多くは直感的に役立ちそうだなって思ったり,こういうアイデアのもとで考えればこの定義はとても自然,となったりします.微分の定義は,一次近似ととらえることができ,すぐ先の未来で起こることの予測に使えそうだね!

構成的な流れは綺麗にまとまっていて,あとで読み返すにはとてもいいのですが,それが必ず教育的なのかについては甚だ疑問が残る.

特に行列式の定義(ここで考えているのは置換での定義)をみてインプリケーションを得るのは難しいと思います.なんか役に立つんだろうから現代まで残された定義なのだろうけど,うーん…

なので,個人的に分かりやすい公理的解釈とそこから見知った定義を導く部分をまとめようと思う.

本題

「行列式の定義はこれです.こいつを計算するにはサラスの(ry」

$$
detA = \sum_{\sigma \in S_n} sgn(\sigma) \Pi_{i=1}^na_{i\sigma(i)} 
$$

線形代数の本を見てみると,行列式を定義するために,置換やら符号関数をまず紹介されます.その後行列式の定義が紹介され,こう定義するとなんかよさげな性質をたくさん満たすんだな…でもそんなの探せばいくらでもあるのではみたいになったりする.

一回定義のことは忘れて,行列に対して役に立ちそうなものを考えようという立場に立ってみる.難しいのは嫌なのでn次実正方行列のクラスに限定しましょう.

例えば二次実正方行列を考えてみる.

$$
A=
\begin{pmatrix}
2 & 1\\
0 & 1 \\
\end{pmatrix}
$$

行列は列ベクトルの集まりや行ベクトルの集まりと考えることができるが,二元一次連立方程式の行列表示だと列ベクトルを幾何ベクトルとして捉えることができるので,今回はその目線に立ってみる.(youtubeに公開されているMITのギルバートストラング氏の初回の線形代数の講義とかで紹介されてたような気がする.)


図1 幾何ベクトルの図示


こいつに何か意味のあるものを与えたいのだけど,まあなんとなく思いつくのは内積でしょうか.ただ三次元に拡張した時に内積の取り方は3通りになり,それを足し合わせても何を意味するのかよく分からないです.

じゃあ面積を考えてみるのはどうだろう.物理とかでよく見る,幾何ベクトルを二つ見たら平行四辺形ができるみたいなノリです.


図2 平行四辺形


これなら三次元に拡張しても体積になります.一般のn次元の超球体の立体バージョンでも,さっきよりは何かしら意味が見出せそうな感じがしませんか.(超球の体積とかありますし,経済学でよく出てくる超平面分離定理の超平面とかあるので面白そうな感じはする.)

あまり幾何に頼っていても,時間がかかりそうなので,上記の議論を一般化してみましょう.これらは行列が与えられると実数値スカラーを返す関数fとみることができます.記号で書けば f : R^(n*n) → R のように書くことができます.f(A) = c (cは実数) みたいな.

ここでA = [a_1,a_2, …, a_n]と表記します.列ベクトルの集まりと見ます.
f([a_1,a_2, …, a_n]) = c とこれから表記します.

関数を考えたのですが,どんなものかまだまだ抽象的でよく分かりません.ここで公理的思考でこの関数の形を求めていきます.この関数に対して,"少なくとも"満たしていて欲しい性質は何でしょうか.少なくとも満たしていて欲しい性質は二次元の面積,三次元の体積と整合的な性質である必要があります.これを考えていきましょう.(公理とは仮定みたいなものです)

面積や体積で考えてみると,どうやら一つのベクトルに対して線形性が当てはまりそうです.面積で考えると,一つのベクトルが二倍になったら面積は二倍になります.何かしらの和に関しても同様です.(新しい文字が出てくると思いますがいろんな本やサイトで見かけるものと同じものなので説明は省きます)

(公理1) $${f([a_1,a_2, …,a_i+b_i,…, a_n]) = f([a_1,a_2, …,a_i,…, a_n])+f([a_1,a_2, …,b_i,…, a_n])}$$

$${f([a_1,a_2, …,ka_i,…, a_n]) = kf([a_1,a_2, …,a_i,…, a_n]) \ (k \in \mathbb{R})}$$

次に,同じベクトルが二つ含まれていると,面積ならばつぶれて線になり体積ならつぶれて面になってしまうため,像として出てくる数値は0になっていて欲しいです.

(公理2)$${f([a_1…,a_i,…,a_j,…, a_n]) = 0 \ \ if \ a_i=a_j}$$

なかなかいい感じですね.あとは基準を決めましょう.行列が単位行列なら値を1とするという仮定は妥当じゃないでしょうか.面積や体積だと標準基底(一つの成分だけ1であるような基底ベクトル)で値は1になります.

(公理3)$${f([e_1…,e_i,…, e_n]) = 1}$$

"少なくとも"満たしていて欲しい性質はこんな感じなので,ここを出発点としましょう!

すると

$$
f([a_1,a_2, …, a_n]) = f([\sum_{i_1 =1}^n a_{i_11}e_{i_1},\sum_{i_2 =1}^n a_{i_22}e_{i_2}, …, \sum_{i_n =1}^n a_{i_nn}e_{i_n}])  \\ 
$$

各ベクトルを標準基底で分解しています.ここで公理1より

$$
f([a_1,a_2, …, a_n]) = \sum_{i_1 =1}^n\sum_{i_2 =1}^n\cdots\sum_{i_n =1}^na_{i_11}a_{i_22}\cdots a_{i_nn}f([e_{i_1},…, e_{i_n}])
$$

だいぶ置換による定義と近づいてきました.ここで公理2より,$${f([e_{i_1},…, e_{i_n}])}$$に関して,同じ基底が含まれていたら0となるので,順列の問題に帰着できますね.ここで置換が登場するんですね.

ここで公理1と公理2から交代性(列を入れ替えると符号が変わる)の性質が導けます.($${f([a_1…,a_i+a_j,…,a_i+a_j,…, a_n])}$$を考えればよい.)

$${f([e_{i_1},…, e_{i_n}])}$$に関して交代性を考えると,こいつの値は1か-1になることが分かります.$${f([e_1…,e_i,…, e_n]) }$$の形に持っていくまでに偶数回入れ替えれば1だし,奇数回なら-1となるわけです.(この時の性質として偶数か奇数かは一意に定まります.well-definedの問題で重要な部分.)

交代性と置換の互換が対応しており,これを符号関数と捉えて$${sgn(\sigma)}$$が登場していたというわけです.上記のことを整理すると,よく見る定義式になりますよーという感じです.(後半の詳しい数学的な操作は線形代数30講をご覧ください.)
おしまい.


定義式の十分性については省きます.これはいろんな教科書で性質として上記の公理が導かれているので.

おわりに

どうでしょうか.なかなか直感的な説明ができたのではないでしょうか.これらを前提としたうえで定義式を見てみると,なにか意義がありそうな定義だなという風に感じてきませんか.実際計算するうえで重要なのは定義式よりも上記でまとめた公理です.(いわゆる行列式の性質として紹介されているもの)

余因子展開やクラメルの公式は上記の公理から導くことができます.経済学ではこの公理的思考が非常に重要なんですよね.他の分野もそうかもしれませんが.期待効用理論やシャープレイ値などなど.

行列式とは何か,それはその行列の列ベクトルが作る図形の量だ!
こういう解釈が上記の議論でわかりますね.

下に示す参考文献を見てもらえると分かるのですが,最近志賀浩二さんが亡くなったらしく,30講シリーズはお世話になったのでそれを基にしたメジャーな内容のまとめ記事を書きたいなと思い,作成しました.30講シリーズはとてもストーリーチックに書かれていてなぜそれを考えるのか,という部分がとても見えやすいです.そういう部分で詰まったら30講シリーズに目を通してみることをお勧めします.

(補足:上記3つの公理を定義とする流派もあるみたいです.他にも余因子展開による帰納的定義などなど.でもあんまりみない.)

参考文献

  1. 志賀浩二(1988)『線形代数30講 (数学30講シリーズ 2)』朝倉書店

この記事が気に入ったらサポートをしてみませんか?