【お知らせ】プログラミング記事の投稿はQiitaに移行しました。

分解型四元数とベクトル

分解型四元数による平方根は一意ではなく不定方程式となり、ベクトルと同一視できます。

シリーズの記事です。

  1. テンソル積と双四元数
  2. 分解型四元数とベクトル ← この記事
  3. 行列表現で考えるテンソル積
  4. 四元数からクリフォード代数へ
  5. ケイリー=ディクソン構成と行列表現

目次

概要

平方数の差を因数分解します。

a^2-b^2=(a+b)(a-b)

平方数の和を因数分解するには複素数が必要です。

a^2+b^2=(a+bi)(a-bi)

平方数の和を平方根で表すには分解型四元数が必要です。

a^2+b^2=(aj+bk)^2

右辺を $x,y$ で表すと一意には決まらず不定方程式となります。

a^2+b^2=(xj+yk)^2

$j,k$ は $x,y$ 軸方向の単位ベクトル $\vec e _ x,\vec e _ y$ と同一視できます。

不定方程式は円を表すベクトルの式だと解釈できます。

|x\vec e_x + y\vec e_y|=\sqrt{a^2+b^2}

分解型四元数は掛け算の定義されたベクトルだと解釈できます。

(aj+bk)(cj+dk)=\underbrace{(ac+bd)}_{\text{内積}}-\underbrace{(ad-bc)i}_{\text{外積}}

ブラーマグプタの二平方恒等式とも関係があります。

\begin{aligned} (aj+bk)^2(cj+dk)^2 &=|(ac+bd)-(ad-bc)i|^2 \\ &=(ac+bd)^2+(ad-bc)^2 \end{aligned}

四元数は分解型四元数を3次元に拡張したものに相当します。

\begin{aligned} &(a_1hi+a_2hj+a_3hk)(b_1hi+b_2hj+b_3hk) \\ &=\underbrace{(a_1b_1+a_2b_2+a_3b_3)}_{\text{内積}} \\ &\ -\underbrace{\{(a_2b_3-a_3b_2)i+(a_3b_1-a_1b_3)j+(a_1b_2-a_2b_1)k\}}_{\text{外積}} \end{aligned}

不定方程式

分解型四元数によって表された平方根ピタゴラスの定理を比較します。

\begin{aligned} a^2+b^2&=(aj+bk)^2 \\ a^2+b^2&=c^2 \end{aligned}

$aj+bk$ と $c$ の関係を考えます。

分解型四元数の係数を変数 $x,y$ によって表します。

\begin{aligned} a^2+b^2 &=(xj+yk)^2 \\ &=x^2+y^2 \end{aligned}

※ この計算過程を見ると $j,k$ は蛇足で、最初から平方数の和の等式として表せば良い気もして来ますが、後で意味は示します。

変数が2個に対して方程式は1個のため、$x,y$ が一意には決まらない不定方程式となります。

\begin{aligned} x^2+y^2 &=a^2+b^2 \\ &=c^2 \end{aligned}

幾何的解釈

得られた不定方程式は半径 $c$ の円の方程式です。$(a,b)$ は円上の点です。

f:id:n7shi:20180824150714p:plain

分解型四元数による式を変形します。

\begin{aligned} (xj+yk)^2&=a^2+b^2 \\ |xj+yk|&=\sqrt{a^2+b^2} \end{aligned}

$j,k$ を $x,y$ 軸方向の単位ベクトル $\vec e _ x,\vec e _ y$ と同一視すれば、絶対値はベクトルの長さを求めていると解釈できます。

|x\vec e_x + y\vec e_y|=\sqrt{a^2+b^2}

つまり分解型四元数の計算はベクトルの計算に相当したのです。

f:id:n7shi:20180824150804p:plain

内積外積

分解型四元数で異なるベクトルを掛けてみるとどうなるでしょうか。

\begin{aligned} (aj+bk)(cj+dk) &=acj^2+adjk+bckj+bdk^2 \\ &=ac-adi+bci+bd \\ &=(ac+bd)-(ad-bc)i \end{aligned}

$ac+bd$ は内積に相当します。

\begin{pmatrix}a\\b\end{pmatrix}⋅ \begin{pmatrix}c\\d\end{pmatrix} =ac+bd

$ad-bc$ は2本のベクトルによって張られる平行四辺形の面積(青色部分)に相当します。三角形の位置を移動すれば直観的に求まります。

f:id:n7shi:20180824200112p:plain

この平行四辺形の面積はウェッジ積と呼ばれ、外積の一種に相当します。

外積がマイナスで括られていることについては、双四元数の計算で確認します。

まとめると次の通りです。

(aj+bk)(cj+dk)=\underbrace{(ac+bd)}_{\text{内積}}-\underbrace{(ad-bc)i}_{\text{外積}}

分解型四元数は掛け算の定義されたベクトルだと解釈できます。

このように幾何的な意味を持った代数は幾何代数と呼ばれます。

ブラーマグプタの二平方恒等式

分解型四元数を2乗してから掛けてみます。

(aj+bk)^2(cj+dk)^2=(a^2+b^2)(c^2+d^2)

$j,k$ をすぐに消さないように、少しテクニカルですが2乗が実数になることを利用して $(aj+bk)$ で挟んで計算します。

\begin{aligned} &(aj+bk)^2(cj+dk)^2 \\ &=(aj+bk)\underbrace{(cj+dk)^2}_{\text{実数}}\,\underbrace{(aj+bk)}_{\text{移動}} \\ &=\{(ac+bd)-(ad-bc)i\}\{(ac+bd)+(ad-bc)i\} \\ &=(ac+bd)^2+(ad-bc)^2 \end{aligned}

以上よりブラーマグプタの二平方恒等式が得られました。

(a^2+b^2)(c^2+d^2)=(ac+bd)^2+(ad-bc)^2

分解型四元数の積と比較すれば、以下の関係が分かります。

\begin{aligned} (aj+bk)(cj+dk) &=(ac+bd)-(ad-bc)i \\ (aj+bk)^2(cj+dk)^2 &=|(ac+bd)-(ad-bc)i|^2 \\ &=(ac+bd)^2+(ad-bc)^2 \end{aligned}

四元数

分解型四元数は2次元のベクトルに対応しますが、双四元数は3次元のベクトルに対応します。

\begin{aligned} &(a_1hi+a_2hj+a_3hk)(b_1hi+b_2hj+b_3hk) \\ &= a_1hi(b_1hi+b_2hj+b_3hk) \\ &\ +a_2hj(b_1hi+b_2hj+b_3hk) \\ &\ +a_3hk(b_1hi+b_2hj+b_3hk) \\ &= a_1b_1-a_1b_2k+a_1b_3j \\ &\ +a_2b_1k+a_2b_2-a_2b_3i \\ &\ -a_3b_1j+a_3b_2i+a_3b_3 \\ &=\underbrace{(a_1b_1+a_2b_2+a_3b_3)}_{\text{内積}} \\ &\ -\underbrace{\{(a_2b_3-a_3b_2)i+(a_3b_1-a_1b_3)j+(a_1b_2-a_2b_1)k\}}_{\text{外積}} \end{aligned}

外積は3成分ありますが、平方和の平方根が面積となります。

\sqrt{(a_2b_3-a_3b_2)^2+(a_3b_1-a_1b_3)^2+(a_1b_2-a_2b_1)^2}

外積がマイナスで括られていることについては、計算過程で $hihj=-k$ のように $h ^ 2=-1$ が含まれることに起因します。

※ 分解型四元数では $h$ を表記しませんが、分解型四元数の $j,k$ は双四元数の $hj,hk$ に相当するため同様です。👉参考

参考

内積は以下の記事を参照してください。

GeoGebra

図形は GeoGebra で作成しました。

www.geogebra.org