【線型代数13】行列式の線型性・交代性・転置不変性
今回は行列式の基本性質 (線型性・交代性・転置不変性) について解説します。
行列式の線型性
ベクトル $\boldsymbol{u}, \boldsymbol{v}$ を
\[\boldsymbol{u}=\begin{bmatrix}u_1\\u_2\end{bmatrix},\quad \boldsymbol{v}=\begin{bmatrix}v_1\\v_2\end{bmatrix}\]
と表し、$k$ を任意の実数として行列式 $\mathrm{det}(k\boldsymbol{u},\boldsymbol{v})$ を計算すると
\[\begin{align*}\det(k\boldsymbol{u},\boldsymbol{v})&=\begin{vmatrix}ku_1 & v_1 \\ ku_2 & v_2 \end{vmatrix}\\[6pt]&=ku_1v_2-kv_1u_2\\[6pt]&=k(u_1v_2-u_2v_1)\\[6pt]&=k\det(\boldsymbol{u},\boldsymbol{v})\end{align*}\]
となって係数 $k$ を前に出すことができます。$\boldsymbol{v}$ に係数が掛かっている場合も同様に
\[\det(\boldsymbol{u},k\boldsymbol{v})=k\det(\boldsymbol{u},\boldsymbol{v})\]
が成り立ちます。2 次元行列式は 2 つのベクトルで作られる平行四辺形の面積を表すので、どちらかの辺を $k$ 倍したら面積も $k$ 倍になることを意味しています。また、3 つのベクトル
\[\boldsymbol{u}=\begin{bmatrix}u_1\\u_2\end{bmatrix},\quad \boldsymbol{v}=\begin{bmatrix}v_1\\v_2\end{bmatrix},\quad \boldsymbol{w}=\begin{bmatrix}w_1\\w_2\end{bmatrix}\]
について、$\det(\boldsymbol{u}+\boldsymbol{v},\boldsymbol{w})$ を計算すると、
\[\begin{align*}\det(\boldsymbol{u}+\boldsymbol{v},\boldsymbol{w})&=\begin{vmatrix}u_1+v_1 & w_1 \\ u_2+v_2 & w_2\end{vmatrix}\\[6pt]&=(u_1+v_1)w_2-(u_2+v_2)w_1\\[6pt]&=(u_1w_2-u_2w_1)-(v_1w_2-v_2w_1)\\[6pt]&=\det(\boldsymbol{u},\boldsymbol{v})+\det(\boldsymbol{v},\boldsymbol{w})\end{align*}\]
となります。同様に
\[\det(\boldsymbol{u},\boldsymbol{v}+\boldsymbol{w})=\det(\boldsymbol{u},\boldsymbol{v})+\det(\boldsymbol{u},\boldsymbol{w})\]
も成り立ちます。上に述べたような性質
\[\begin{align*}&\det(k\boldsymbol{u},\boldsymbol{v})=k\det(\boldsymbol{u},\boldsymbol{v})\tag{1}\\[6pt]&\det(\boldsymbol{u},k\boldsymbol{v})=k\det(\boldsymbol{u},\boldsymbol{v})\tag{2}\\[6pt]&\det(\boldsymbol{u}+\boldsymbol{v},\boldsymbol{w})=\det(\boldsymbol{u},\boldsymbol{v})+\det(\boldsymbol{v},\boldsymbol{w})\tag{3}\\[6pt]&\det(\boldsymbol{u},\boldsymbol{v}+\boldsymbol{w})=\det(\boldsymbol{u},\boldsymbol{v})+\det(\boldsymbol{u},\boldsymbol{w})\tag{4}\end{align*}\]
のことをまとめて、行列式の線型性 とよびます。もう少し一般化すると、次のような演算が成り立ちます。
\[\begin{align*}\det(\boldsymbol{u},a\boldsymbol{v}+b\boldsymbol{w})&=\det(\boldsymbol{u},a\boldsymbol{v})+\det(\boldsymbol{u},b\boldsymbol{w})\\[6pt]&=a\det(\boldsymbol{u},\boldsymbol{v})+b\det(\boldsymbol{u},\boldsymbol{w})\end{align*}\]
すなわち、ベクトルの線形結合 $a\boldsymbol{v}+b\boldsymbol{w}$ が行列式の線形結合として現れています。
行列式の線型性は一般の $n$ 次元行列式についても、そのまま成り立ちます。たとえば、3 次元行列式 $\det(\boldsymbol{u},a\boldsymbol{v},b\boldsymbol{w})$ において、$\boldsymbol{u},\ \boldsymbol{v},\ \boldsymbol{w}$ のうちいずれかのベクトルを $k$ 倍すると行列式の値も $k$ 倍されます。また、いずれかのベクトルが $\boldsymbol{p}$ と $\boldsymbol{q}$ の和の形に書ける場合、行列式も 2 つの行列式の和に分解されます。例として、$\det(\boldsymbol{u},\boldsymbol{v}_1+\boldsymbol{v}_2,c\boldsymbol{w})$ を計算してみると、
\[\begin{align*}\det(\boldsymbol{u},\boldsymbol{v}_1+\boldsymbol{v}_2,c\boldsymbol{w})&=c\det(\boldsymbol{u},\boldsymbol{v}_1+\boldsymbol{v}_2,\boldsymbol{w})\\[6pt]&=c\{\det(\boldsymbol{u},\boldsymbol{v}_1,\boldsymbol{w})+\det(\boldsymbol{u},\boldsymbol{v}_2,\boldsymbol{w})\}\end{align*}\]
となります。
行列式の交代性
2 本のベクトル $\boldsymbol{u}, \boldsymbol{v}$ を
\[\boldsymbol{u}=\begin{bmatrix}u_1\\u_2\end{bmatrix},\quad \boldsymbol{v}=\begin{bmatrix}v_1\\v_2\end{bmatrix}\]
について行列式を
\[\det(\boldsymbol{u},\boldsymbol{v})=\begin{vmatrix}u_1 & v_1 \\ u_2 & v_2 \end{vmatrix}\]
で定めるとき、$\boldsymbol{u}$ と $\boldsymbol{v}$ を入れ替えると符号が逆転します。
\[\begin{align*}\det(\boldsymbol{v},\boldsymbol{u})&=\begin{vmatrix}v_1 & u_1 \\ v_2 & u_2 \end{vmatrix}\\[6pt]&=v_1u_2-v_2u_1\\[6pt]&=-(u_1v_2-u_2v_2)\\[6pt]&=-\det(\boldsymbol{u},\boldsymbol{v})\end{align*}\]
行列式の行を入れ替えても符号が逆転します。
\[\begin{align*}\begin{vmatrix}u_2 & v_2 \\ u_1 & v_1 \end{vmatrix}&=u_2v_1-u_1v_2\\[6pt]&=-(u_1v_2-u_2v_1)\\[6pt]&=-\det(\boldsymbol{u},\boldsymbol{v})\end{align*}\]
一般の $n$ 次元の行列式においても、行または列を 1 回入れ替えると符号が逆転するという法則があります。これを 行列式の交代性 といいます。
面積の符号
行列式の交代性から明らかなように、行列式によって定義された面積は負の値になることがあります。
例として、ベクトル $\boldsymbol{u}=\begin{bmatrix}1\\4\end{bmatrix}$ と $\boldsymbol{v}=\begin{bmatrix}3\\1\end{bmatrix}$ を考えます。
行列式 $\mathrm{det}(\boldsymbol{u},\boldsymbol{v})$ を計算してみると、
\[\mathrm{det}(\boldsymbol{u},\boldsymbol{v})=\begin{vmatrix}1 & 3\\4 & 1\end{vmatrix}=1\cdot 1-3\cdot 4=-11\]
となります。行列式の交代性により、$\boldsymbol{u}$ と $\boldsymbol{v}$ を入れ替えると符号が逆転して
\[\mathrm{det}(\boldsymbol{v},\boldsymbol{u})=11\]
となります。一般にベクトル $\boldsymbol{a}$ がベクトル $\boldsymbol{b}$ に時計回りに回転させて一致するとき、$\mathrm{det}(\boldsymbol{a},\boldsymbol{b})$ は負の値となり、$\mathrm{det}(\boldsymbol{b},\boldsymbol{a})$ は正の値となります ($\boldsymbol{b}$ は $\boldsymbol{a}$ に反時計回りに回転させて一致します)。
行列式の転置不変性
ベクトル $\boldsymbol{u}, \boldsymbol{v}$ を
\[\boldsymbol{u}=\begin{bmatrix}u_1\\u_2\end{bmatrix},\quad \boldsymbol{v}=\begin{bmatrix}v_1\\v_2\end{bmatrix}\]
について行列式を
\[\det(\boldsymbol{u},\boldsymbol{v})=\begin{vmatrix}u_1 & v_1 \\ u_2 & v_2 \end{vmatrix}\]
と定めましたが、行と列を入れ替えて、
\[\begin{vmatrix}u_1 & u_2 \\ v_1 & v_2 \end{vmatrix}\]
のように書いても行列式の値は変わりません。一般に $n$ 次元の行列式において、成分を対角線上で折り返しても値は保持されます。この性質を行列式の 転置不変性 といいます。4 次元の行列式
\[\begin{vmatrix}5 & 9 & 2 & 7\\1 & 3 & 9 & 5\\6 & 2 & 0 & 4\\2 & 6 & 3 & 3\end{vmatrix}\]
について転置不変性を確認してみましょう。手計算では大変なので、SciPy の scipy.linalg.det()関数を使って計算します。
# python_determinant_transpose
# In[1]
import numpy as np
from scipy.linalg import det
# 4×4配列を定義
x = np.array([[5, 9, 2, 7],
[1, 3, 9, 5],
[6, 2, 0, 4],
[2, 6, 3, 3]])
# xの行列式を計算
print("det(x) : {:.2f}".format(det(x)))
# xを転置して行列式を計算
print("det(tx) : {:.2f}".format(det(x.T)))
# det(x) : -568.00
# det(tx) : -568.00
ChatGPTが解説! 行列式の交代性
行列式の交代性(alternating property)は、行列式の性質の一つであり、行または列の入れ替えによって符号が変化することを指します。具体的には、n次正方行列Aの行列式det(A)について、もしAの2つの行を入れ替えた行列をA’とすると、det(A’) = -det(A)が成り立ちます。同様に、列を入れ替えた場合も同じ性質が成り立ちます。例を用いて説明します。以下は3次の正方行列Aの例です。
A = [[a, b, c],
[d, e, f],
[g, h, i]]
この場合、行列Aの行列式det(A)は、det(A) = aei + bfg + cdh – ceg – bdi – afhと計算されます。もし2行目と3行目を入れ替えた行列A’を考えると、
A’ = [[a, b, c],
[g, h, i],
[d, e, f]]
A’の行列式det(A’)は、det(A’) = ahi + bdi + ceg – cfi – bgi – adhと計算されます。ここで、det(A’) = -det(A)となることがわかります。つまり、行列Aの行を入れ替えると、行列式の値は符号が反転します。同様に、列を入れ替えた場合も同じ性質が成り立ちます。行列式の交代性は、行列式の性質を利用して行列の特性を解析する際に役立ちます。また、行列の逆行列を求める際や、連立方程式を解く際にも交代性が重要な役割を果たします。
ChatGPTが解説! 行列式の転置不変性
行列式の転置不変性(transposition invariance)とは、行列を転置しても行列式の値が変化しない性質を指します。つまり、n次正方行列Aに対して、det(A) = det(A^T)が成り立つことを言います。具体的に説明するために、以下は3次の正方行列Aの例です。
A = [[a, b, c],
[d, e, f],
[g, h, i]]
この場合、行列Aの行列式det(A)は、det(A) = aei + bfg + cdh – ceg – bdi – afhと計算されます。Aを転置して得られる行列A^Tは、
A^T = [[a, d, g],
[b, e, h],
[c, f, i]]
A^Tの行列式det(A^T)は、det(A^T) = aei + bfg + cdh – ceg – bdi – afhとなります。ここで、det(A) = det(A^T)となることがわかります。つまり、行列Aを転置しても行列式の値は変化しません。行列式の転置不変性は、行列の特性を解析する際に役立ちます。特に、対称行列やスカラー行列のように、転置しても元の行列と同じ行列になる場合には、転置不変性が特に重要となります。