【行列式編】行列式の性質

こんにちは、おぐえもん(@oguemon_com)です。

前回の記事では、行列式の定義について説明しました。

今回は、行列式の定義から導かれる主な性質について扱います。性質の一つ一つに大雑把ながら成立する根拠を記していますが、まだ完全に理解できるほど行列式に慣れ親しんでいないことと思いますので、分からなかったら素直に読み飛ばすことをオススメします

転置の行列式

行列AAの行と列を入れ替えた転置tA{}^tAの行列式は、元の行列式と同じです。

tA=A|{}^tA|=|A|

行と列を替えても行列式が同じということは、今後、行について述べた性質は、列についても言えることになります。 やったね!

この性質が成り立つ理由は、次の 3 つのポイントを押さえると判りやすいと思います。

ポイント 1:

tA|{}^tA|の定義は、A|A|の定義の行と列を入れ替えたものなので、A|A|で用いられている置換の"逆置換"になります。

行列式の定義をおさらいしましょう。

行列式の定義
A=n文字置換の全通りsgn(σ)a1σ(1)anσ(n)|A|=\sum_{n\text{文字置換の全通り}}{\rm sgn}(\sigma)a_{1\sigma(1)} \cdots a_{n\sigma(n)}

ここで、tA|{}^tA|は、とにかく「列と行が入れ替わったもの(→ 列番号と行番号を入れ替えたもの)」なので、

定義にある「a1σ(1)anσ(n)a_{1\sigma(1)} \cdots a_{n\sigma(n)}」の部分は、tA|{}^tA|について言うときに「aσ(1)1aσ(n)na_{\underline{\sigma(1)1}} \cdots a_{\underline{\sigma(n)n}}」と改められます。

ここで、逆置換σ1\sigma^{-1}の定義より、

(σ(1)σ(n)1n)=(1nσ1(1)σ1(n))=σ1\left( \begin{array}{ccc} \sigma(1) & \cdots & \sigma(n) \\ 1 & \cdots & n \end{array} \right)=\left( \begin{array}{ccc} 1 & \cdots & n \\ \sigma^{-1}(1) & \cdots & \sigma^{-1}(n) \end{array} \right)=\sigma^{-1}

となることを思い出しましょう。(-1を右肩に置いているのは、-1乗って意味じゃないよ!)

よって、「aσ(1)1aσ(n)na_{\sigma(1)1} \cdots a_{\sigma(n)n}」は「a1σ1(1)anσ1(n)a_{1\sigma^{-1}(1)} \cdots a_{n\sigma^{-1}(n)}」となるため、

tA=n文字置換の全通りsgn(σ1)a1σ1(1)anσ1(n)|{}^tA|=\sum_{n\text{文字置換の全通り}}{\rm sgn}(\sigma^{-1})a_{1\sigma^{-1}(1)} \cdots a_{n\sigma^{-1}(n)}

が言えます。

ポイント2:

ある置換と、その逆置換は、同じ符号を持ちます(→置換から変換できる互換の個数の奇偶が一致します)。

これは簡単です!sgn(σ)sgn(σ1)=sgn(σσ1)=sgn(ϵ)=+1{\rm sgn}(\sigma){\rm sgn}(\sigma^{-1})={\rm sgn}(\sigma\sigma^{-1})={\rm sgn}(\epsilon)=+1ϵ\epsilonは単位置換(偶置換なので符号は+1+1))より、

sgn(σ)=sgn(σ1){\rm sgn}(\sigma)={\rm sgn}(\sigma^{-1})

が成り立ちます。

ポイント3:

σ\sigmaと、σ1\sigma^{-1}は、共にnn文字の置換で、11nnの並び替えを扱っています。よって、定義に含まれるΣ\Sigmaで求められる置換の総パターンは、σ\sigmaと、σ1\sigma^{-1}で共通します。

以上から、tA|{}^tA|の定義は、A|A|の定義に含まれるσ\sigmaσ1\sigma^{-1}に変えただけであり、本質的には全く同じであるため、

tA=A|{}^tA|=|A|

が言えるわけです。

ある行をスカラー倍したときの行列式

行列AAのある行をλ\lambda倍すると、その行列式はもとのλ\lambda倍になります。

行列AAii行目をλ\lambda倍した行列をAA'とする。

すなわち、AAii行目の行ベクトルをai\boldsymbol{a_i}と表したとき、

A=(a1λaian)A'=\left( \begin{array}{c} \boldsymbol{a_1} \\ \vdots \\ \lambda \boldsymbol{a_i} \\ \vdots \\ \boldsymbol{a_n} \end{array} \right)

について、

A=λA|A'| = \lambda|A|

が成立する。

理由を式で表すとこんな感じです。

A=σSnsgn(σ)a1σ(1)λaiσ(i)anσ(n)=λσSnsgn(σ)a1σ(1)aiσ(i)anσ(n)=λA\begin{aligned} |A'| &=\sum_{\sigma \in S_n}{\rm sgn}(\sigma)a_{1\sigma(1)} \cdots \underline{\lambda a_{i\sigma(i)}} \cdots a_{n\sigma(n)} \\ &=\underline{\lambda} \sum_{\sigma \in S_n}{\rm sgn}(\sigma)a_{1\sigma(1)} \cdots \underline{a_{i\sigma(i)}} \cdots a_{n\sigma(n)} \\ &=\lambda |A| \end{aligned}

ちなみに、この性質より、ある列が全部 0 の行列の行列式は必ず 0 になります。これは、λ=0\lambda=0を考えたときの場合に相当します。

ある行を分割したときの行列式

式で表したほうが手っ取り早いかな…?

行列 A のii行目がai=bi+ci\boldsymbol{a_i}=\boldsymbol{b_i}+\boldsymbol{c_i}を満たすとき、すなわち

A=(a1aian)=(a1bi+cian)A=\left( \begin{array}{c} \boldsymbol{a_1} \\ \vdots \\ \boldsymbol{a_i} \\ \vdots \\ \boldsymbol{a_n} \end{array} \right) =\left( \begin{array}{c} \boldsymbol{a_1} \\ \vdots \\ \boldsymbol{b_i}+\boldsymbol{c_i} \\ \vdots \\ \boldsymbol{a_n} \end{array} \right)

が成り立つとき、AAii行目をそれぞれbj\boldsymbol{b_j}cj\boldsymbol{c_j}に置き換えた2つの行列B,CB,Cについて、

A=B+C|A|=|B|+|C|

が成立する。

勘違いしやすいですが、この問題の前提はA=B+CA=B+Cでないことに注意ですよ!

これも、理由を式で表すとこんな感じ。

A=σSnsgn(σ)a1σ(1)(biσ(i)+ciσ(i))anσ(n)=σSnsgn(σ)a1σ(1)biσ(i)anσ(n)+σSnsgn(σ)a1σ(1)ciσ(i)anσ(n)=B+C\begin{aligned} |A| &=\sum_{\sigma \in S_n}{\rm sgn}(\sigma)a_{1\sigma(1)} \cdots \underline{(b_{i\sigma(i)}+c_{i\sigma(i)})} \cdots a_{n\sigma(n)} \\ &=\sum_{\sigma \in S_n}{\rm sgn}(\sigma)a_{1\sigma(1)} \cdots \underline{b_{i\sigma(i)}} \cdots a_{n\sigma(n)} \\ &+\sum_{\sigma \in S_n}{\rm sgn}(\sigma)a_{1\sigma(1)} \cdots \underline{c_{i\sigma(i)}} \cdots a_{n\sigma(n)} \\ &=|B|+|C| \end{aligned}

ある行を入れ替えたときの行列式

2 つの行を入れ替えたら、行列式の符号が反転します。

ある 2 つの行列

A=(a1asatan), B=(a1atasan)A=\left( \begin{array}{c} \boldsymbol{a_1} \\ \vdots \\ \underline{\boldsymbol{a_s}} \\ \vdots \\ \underline{\boldsymbol{a_t}} \\ \vdots \\ \boldsymbol{a_n} \end{array} \right),\ B=\left( \begin{array}{c} \boldsymbol{a_1} \\ \vdots \\ \underline{\boldsymbol{a_t}} \\ \vdots \\ \underline{\boldsymbol{a_s}} \\ \vdots \\ \boldsymbol{a_n} \end{array} \right)

について、

A=B|A|=-|B|

が成立する。

元の行列の行列式に、

σ=(1ijnσ(1)σ(i)σ(j)σ(n))\sigma = \left( \begin{array}{ccccccc} 1 & \cdots & i & \cdots & j & \cdots & n \\ \sigma(1) & \cdots & \sigma(i) & \cdots & \sigma(j) & \cdots & \sigma(n) \end{array} \right)

という置換が適用されていると、行を入れ替えた行列には、

τ=(1jinσ(1)σ(i)σ(j)σ(n))\tau = \left( \begin{array}{ccccccc} 1 & \cdots & \underline{j} & \cdots & \underline{i} & \cdots & n \\ \sigma(1) & \cdots & \sigma(i) & \cdots & \sigma(j) & \cdots & \sigma(n) \end{array} \right)

という置換が適用されます。

これは、元の置換σ\sigmaに互換(i j)(i \ j)を掛け合わせたもの(σ=σ(i j)\sigma'=\sigma(i \ j))ですので、置換を構成する互換の個数の奇偶が入れ替わる(→符号が逆転する)わけです。

(詳しくは教科書を見てね)

ある2行が等しいときの行列式

2つの行が等しい行列は、その行列式が0になります。

A=(a1aiaian)A=\left( \begin{array}{c} \boldsymbol{a_1} \\ \vdots \\ \underline{\boldsymbol{a_i}} \\ \vdots \\ \underline{\boldsymbol{a_i}} \\ \vdots \\ \boldsymbol{a_n} \end{array} \right)について、A=0|A|=0である。

これは、行列AAの中で**等しい2つの行を入れ替えた行列AA'**について考えます。

当然ながら、等しい2行を入れ替えても成分は変わらないのでA=AA=A'であり、よって

A=A|A|=|A'|

が成立するのですが、先ほどの2つの行を入れ替えたら行列式の符号が反転する性質より、

A=A|A|=-|A'|

が成立することも言えてしまいます。

この2式からA|A'|を消去すると、A=0\underline{|A|=0}が導かれます。

ある行のスカラー倍を他の列に加えたときの行列式

ある行に他の行のスカラー倍を加えても、行列式に変化はありません。

2つの行列

A=(a1aiajan), B=(a1aiaj+λaian)A=\left( \begin{array}{c} \boldsymbol{a_1} \\ \vdots \\ \boldsymbol{a_i} \\ \vdots \\ \boldsymbol{a_j} \\ \vdots \\ \boldsymbol{a_n} \end{array} \right), \ B=\left( \begin{array}{c} \boldsymbol{a_1} \\ \vdots \\ \boldsymbol{a_i} \\ \vdots \\ \boldsymbol{a_j}+\lambda \boldsymbol{a_i} \\ \vdots \\ \boldsymbol{a_n} \end{array} \right)

について、

A=B|A|=|B|

が成立する。

これは今まで見てきた性質の合わせ技です。

行列BBの行列式は、2つの行列

C=(a1aiajan), C=(a1aiλaian)C=\left( \begin{array}{c} \boldsymbol{a_1} \\ \vdots \\ \boldsymbol{a_i} \\ \vdots \\ \boldsymbol{a_j} \\ \vdots \\ \boldsymbol{a_n} \end{array} \right), \ C'=\left( \begin{array}{c} \boldsymbol{a_1} \\ \vdots \\ \boldsymbol{a_i} \\ \vdots \\ \lambda \boldsymbol{a_i} \\ \vdots \\ \boldsymbol{a_n} \end{array} \right)

の行列式の和に等しいです。左側(CC)は行列AAそのものですね。これより、B=A+C|B|=|A|+|C'|が成り立ちます。

ここで、C|C'|の値を見ていきましょう。CC'jj行目がλai\lambda \boldsymbol{a_i}なので、行列式でλ\lambdaを括り出せそうです。

C=λC"|C'| = \lambda |C"|

このとき、

C"=(a1aiaian)C"=\left( \begin{array}{c} \boldsymbol{a_1} \\ \vdots \\ \boldsymbol{a_i} \\ \vdots \\ \boldsymbol{a_i} \\ \vdots \\ \boldsymbol{a_n} \end{array} \right)

です。

C"C"は、2つの行が同じであることが分かります。つまり、この行列式は0です。

ゆえに、

B=A+C=A+λC=A|B|=|A|+|C'|=|A|+\lambda |C''|=|A|

となるわけです。

行列の積の行列式

驚くべきことに、行列の積の行列式はそれぞれの行列式の積と等しくなります!

1つの行列A,BA,Bについて、

AB=AB|AB| = |A||B|

が成立する。

AB|AB|を定義に従って求めようとすると、

AB=σSnsgn(σ)(k=1na1kbkσ(1))(k=1nankbkσ(n))|AB|=\sum_{\sigma \in S_n}{\rm sgn}(\sigma)(\sum_{k=1}^na_{1k}b_{k\sigma(1)}) \cdots (\sum_{k=1}^na_{nk}b_{k\sigma(n)})

なんて鬼面倒な式を計算しなければならないのですから、すごい発見です。

しかし、これを証明しようとすると、すごく長くなるため、ここでは割愛させていただきます。詳しくは教科書を見てください。

おわり

今回挙げた行列式の性質は今後結構頻繁に使用するのでしっかり覚えましょう!

次回は、逆行列を導くために必要な概念について扱います。

▲ トップへ戻る