楽しい科学(理論)チャンネル
この章の目的
この章では交代テンソルを用いて逆行列について学んでいきます。テンソルという概念に寄り道しますが、返って最小限の知識で、逆行列を導出できていると思います。
そもそも行列とは
行列はもともとベクトル\(\vec{x}=(x^1,x^2,x^3)\)からベクトル\(\vec{y}=(y^1,y^2,y^3)\)を求める連立方程式から始まります。\(x^2\)は\(x\)の2乗ではなく2番目の成分という意味です。2乗とややこしくてすいません。
\[\begin{pmatrix}y^1\\y^2\\y^3\end{pmatrix}=\begin{pmatrix}a x^1+b x^2+cx^3\\
dx^1+ex^2+fx^3\\
gx^1+hx^2+ix^3\end{pmatrix}\]
\(\vec{x}\)について解くとどのような形になるのか?そもそも解があるのか?それは、連立方程式の係数
\[\begin{pmatrix}a&b&c\\
d&e&f\\
g&h&i\end{pmatrix}\]
から知ることができます。この係数を並べたものを行列といいます。
正方行列
行列の横(行)、縦(列)の並んでいる数の個数が等しいものを正方行列といいます。\(n\times n\)の大きさの正方行列を特に\(n\)次正方行列といいます。行列の数を\(a,b,c\cdots\)としているとアルファベットが足りなくなるので、
\[A=\begin{pmatrix}A^1_{\ 1}&\cdots&A^1_{\ n}\\
\vdots&\ddots&\vdots\\
A^n_{\ 1}&\cdots&A^n_{\ n}
\end{pmatrix}\]
このように添え字という小さい数字を文字につけて区別します。私はいつもどっちが行?、どっちが列?なのかわからなくなってしまうので、独特な覚え方ですが、列のリが縦線2本列が縦だ!と覚えました。
行列とベクトルの積
行列\(A\)とベクトル\(\vec{x}\)について、その積を
\[A\vec{x}=\begin{pmatrix}A^1_{\ 1}&\cdots&A^1_{\ n}\\
\vdots&\ddots&\vdots\\
A^n_{\ 1}&\cdots&A^n_{\ n}
\end{pmatrix}\begin{pmatrix}x^1\\\vdots\\x^n
\end{pmatrix}
=\begin{pmatrix}A^1_{\ 1}x^1+\cdots+A^1_{\ n}x^n\\
\vdots\\
A^n_{\ 1}x^1+\cdots+A^n_{\ n}x^n
\end{pmatrix}\]
と定義します。これにより連立方程式
\[\begin{pmatrix}y^1\\\vdots\\y^n
\end{pmatrix}
=\begin{pmatrix}A^1_{\ 1}x^1+\cdots+A^1_{\ n}x^n\\
\vdots\\
A^1_{\ n}x^1+\cdots+A^n_{\ n}x^n
\end{pmatrix}\]
を単純に
\[\vec{y}=A\vec{x}\]
と表すことができます。\(\vec{x}\)が行ベクトル、列ベクトルなのかで、\(\vec{x}A\)や\(A\vec{x}\)など表記ゆれがあります。このページでは、\(A\vec{x}\)とします。
行列積
行列\(A\)によってベクトル\(\vec{x}\)からベクトル\(\vec{y}\)が得られたとします。更に行列\(B\)によりベクトル\(y\)からベクトル\(\vec{z}\)が得られたとします。
\[\vec{y}=A\vec{x}\]
\[\vec{z}=B\vec{y}\]
実は\(\vec{y}\)を計算しなくても行列\(BA:\vec{x}\mapsto\vec{z}\)をうまく定義することで\(\vec{x}\)を一撃で\(\vec{z}\)に写すことができます。残念ながら行列の積を
\[BA=\begin{pmatrix}B^1_{\ 1}A^1_{\ 1}&\cdots&B^1_{\ n}A^1_{\ n}\\
\vdots&\ddots&\vdots\\
B^1_{\ n}A^1_{\ n}&\cdots&B^n_{\ n}A^n_{\ n}
\end{pmatrix}\]
とは定義されていません。
\[\vec{z}=BA\vec{x}\]
となる行列\(BA\)を求めてみましょう。ベクトル\(\vec{y}\)は、
\[\begin{pmatrix}y^1\\\vdots\\y^n
\end{pmatrix}
=\begin{pmatrix}A^1_{\ 1}x^1+\cdots+A^1_{\ n}x^n\\
\vdots\\
A^1_{\ n}x^1+\cdots+A^n_{\ n}x^n
\end{pmatrix}=\begin{pmatrix}\sum_{i=1}^nA^1_{\ i}x^i\\
\vdots\\
\sum_{i=1}^nA^n_{\ i}x^i
\end{pmatrix}\]
と表すことができます。つまりベクトル\(\vec{y}\)の成分は、
\[y^j=A^j_{\ 1}x^1+\cdots+A^j_{\ n}x^n\]
です。\(j\)は\(1\)から\(n\)のどれかの自然数です。同様にして、\(\vec{z}\)は、
\[\begin{pmatrix}z^1\\\vdots\\z^n
\end{pmatrix}
=\begin{pmatrix}B^1_{\ 1}y^1+\cdots+B^1_{\ n}y^n\\
\vdots\\
B^n_{\ 1}y^1+\cdots+B^n_{\ n}y^n
\end{pmatrix}=\begin{pmatrix}\sum_{j=1}^nB^1_{\ j}y^j\\
\vdots\\
\sum_{j=1}^nB^n_{\ j}y^j
\end{pmatrix}\]
ここに\(x^i\)を用いて表した\(y^j\)を代入すれば、
\[=\begin{pmatrix}\sum_{j=1}^nB^1_{\ j}(A^j_{\ 1}x^1+\cdots+A^j_{\ n}x^n)\\
\vdots\\
\sum_{j=1}^nB^n_{\ j}(A^j_{\ 1}x^1+\cdots+A^j_{\ n}x^n)\end{pmatrix}\]
\[=\begin{pmatrix}(\sum_{j=1}^nB^1_{\ j}A^j_{\ 1})x^1+\cdots+(\sum_{j=1}^nB^1_{\ j}A^j_{\ n})x^n\\
\vdots\\
(\sum_{j=1}^nB^n_{\ j}A^j_{\ 1})x^1+\cdots+(\sum_{j=1}^nB^n_{\ j}A^j_{\ n})x^n
\end{pmatrix}\]
これを行列とベクトル\(\vec{x}\)の積に直すと
\[=\begin{pmatrix}\sum_{j=1}^nB^1_{\ j}A^j_{\ 1}&\cdots&\sum_{j=1}^nB^1_{\ j}A^j_{\ n}\\
\vdots&\ddots&\vdots\\
\sum_{j=1}^nB^n_{\ j}A^j_{\ 1}&\cdots&\sum_{j=1}^nB^n_{\ j}A^j_{\ n}\end{pmatrix}\begin{pmatrix}x^1\\\vdots\\x^n\end{pmatrix}\]
これにより、行列積\(BA\)が求まりました。
\[BA=\begin{pmatrix}\sum_{j=1}^nB^1_{\ j}A^j_{\ 1}&\cdots&\sum_{j=1}^nB^1_{\ j}A^j_{\ n}\\
\vdots&\ddots&\vdots\\
\sum_{j=1}^nB^n_{\ j}A^j_{\ 1}&\cdots&\sum_{j=1}^nB^n_{\ j}A^j_{\ n}\end{pmatrix}\]
\(\vec{y}\)を経由せず直接\(\vec{x}\)から行列\(BA\)により、\(\vec{z}\)が得られますね。数字の掛け算のように\(AB=BA\)ならないことに注意しましょう。例えば、
\[A=\begin{pmatrix}1&-1\\0&1\end{pmatrix},B=\begin{pmatrix}1&2\\1&0\end{pmatrix}\]
について、
\[AB=\begin{pmatrix}A^1_{\ 1}B^1_{\ 1}+A^1_{\ 2}B^2_{\ 1}&A^1_{\ 1}B^1_{\ 2}+A^1_{\ 2}B^2_{\ 2}\\
A^2_{\ 1}B^1_{\ 1}+A^2_{\ 2}B^2_{\ 1}&A^2_{\ 1}B^1_{\ 2}+A^2_{\ 2}B^2_{\ 2}\end{pmatrix}=\begin{pmatrix}0&2\\
1&0\end{pmatrix}\]
\[BA=\begin{pmatrix}B^1_{\ 1}A^1_{\ 1}+B^1_{\ 2}A^2_{\ 1}&B^1_{\ 1}A^1_{\ 2}+B^1_{\ 2}A^2_{\ 2}\\
B^2_{\ 1}A^1_{\ 1}+B^2_{\ 2}A^2_{\ 1}&B^2_{\ 1}A^1_{\ 2}+B^2_{\ 2}A^2_{\ 2}\end{pmatrix}=\begin{pmatrix}1&1\\
1&-1\end{pmatrix}\]
となりますので、行列\(A,B\)については、一般に\(AB\neq BA\)です。行列積は"積"という文字が入っていますが、交換則は成り立ちません。実数の積とは全く別の演算となります。