- 駆け足で読む『数学をいかに使うか』の目次はこちら
- 四元数(Wiki、その他資料)
- 四元数は環をなしている
- 四元数が積交換できないのは、四元数が行列で表されるような代数の仕組みになっていることからもわかる
は実次元と複素次元の2次元に
を配置することからなる数で、それを
行列の4つのセルに自由に置いてよいことにすれば、4倍して8次元となるが、
の定義で、要素には拘束があって、2個の複素数を決めるだけで決まるので、これは、4次元
- これが四元数の定義を満たしている
- 四元数の3つの「虚数単位」は
- 四元数をRを使って複素2x2行列で表してみる。併せて、テキストブック記載の諸性質を確認する
detComplex<-function(M){
e.out<-eigen(M)
prod(e.out[[1]])
}
n<-2
myI<-complex(real=0,imaginary=1)
Ec<-diag(rep(1,n))
Ic<-matrix(c(myI,0,0,-myI),2,2)
Jc<-matrix(c(0,-1,1,0),2,2)
Kc<-matrix(c(0,myI,myI,0),2,2)
Ec
Ic
Jc
Kc
s<-complex(real=rnorm(1),imaginary=rnorm(1))
t<-complex(real=rnorm(1),imaginary=rnorm(1))
h<-matrix(c(s,t,-Conj(t),Conj(s)),ncol=2,byrow=TRUE)
h2<-t(Conj(h))
h%*%t(Conj(h))
ms<-rep(0,n^2)
ms[1]<-Re(s)
ms[2]<-Im(s)
ms[3]<-Re(t)
ms[4]<-Im(t)
ms[1]*Ec+ms[2]*Ic+ms[3]*Jc+ms[4]*Kc
h
sum(ms^2)
detComplex(h)
ms<-runif(4)
ms[1]*Ec+ms[2]*Ic+ms[3]*Jc+ms[4]*Kc
ms[1]<-0
h3<-ms[1]*Ec+ms[2]*Ic+ms[3]*Jc+ms[4]*Kc
h4<-t(Conj(h3))
h3+h4
library(MCMCpack)
rs<-c(rdirichlet(1,rep(1,4)))
rs2<-sqrt(rs)
h5<-rs2[1]*Ec+rs2[2]*Ic+rs2[3]*Jc+rs2[4]*Kc
sum(rs2^2)
detComplex(h5)
h6<-t(Conj(h5))
h5%*%h6
が
が作る3次元空間の直交変換に対応することが示せる。これはSpin(3)と呼ばれるものなのだという
- n次元に上げていくとき、それは四元数環からClifford代数と一般化されていく(そして次の章に続いていく)
- 4元数と関係する3つの流れ
は
の多元環、行列環
はF上の多元環。外積代数もClifford代数も多元環