■因数分解の算法(その2)

 (その1)では,
  a^2+b^2+2ab=(a+b)^2
  a^3+b^3+c^3−3abc=(a+b+c)(a^2+b^2+c^2−ab−bc−ca)
は因数分解可能,しかるに,
  a^4+b^4+c^4+d^4+4abcd
は不可能という問題を取り上げました.
 
 ところで,整数係数・有理数係数という制限を取り払うと,因数分解可能になる式があります.たとえば,
  x^2−3xy+y^2+x+y−1
は,無理数である黄金比:τ=(√5+1)/2,τ^(-1)=(√5−1)/2を用いると
  (τx−τ^(-1)y−1)(τ^(-1)x−τ^(-1)y+1)
と因数分解できます.
 
 さらに実数という制限も外してみることにしましょう.
  x^2+y^2
を実数の世界で因数分解することはできませんが,複素数を使うと
  x^2+y^2=(x+yi)(x−yi)
のように因数分解できます.また,
  a^2+b^2+c^2−ab−bc−ca
は,ω(1の虚立方根)=(i√3−1)/2を用いると
  (a+bω+cω^2)(a+bω^2+cω)
と書くことができます.
 
  x^2+y^2+z^2
は複素数の助けを借りても因数分解できませんが,4元数を用いると,
  x^2+y^2+z^2+w^2=(x+yi+zj+wk)(x−yi−zj−wk)
ですから,
  x^2+y^2+z^2=−(xi+yj+zk)^2
のように因数分解できます.
 
 今回のコラムのネタは複素数を使っても因数分解できなかった
  x^2+y^2+z^2
  x^2+y^2+z^2+w^2
をトリックを用いて分解する方法を紹介したいと思います.
 
  [参]佐武一郎「線型代数学」裳華房
  [参]村上雅人「なるほど線形代数」海鳴社
からの受け売りですが,なるほど・・・のタイトルに違わぬ面白い本でした.
 
===================================
 
【1】複素数と行列
 
 前回のコラム「4次元の特殊性」で取り扱った平面の回転行列は
  [cosθ,−sinθ]
  [sinθ, cosθ]
の形に書けました.
 
 ある複素数に虚数単位iをかけると
  zi=(x+yi)i=−y+xi
となり,この操作は90°回転に対応することがわかります.そこで,回転行列にθ=π/2を代入すると
  J=[0,−1]
    [1, 0]
となります.
 
 複素数平面でiが果たす役割と行列Jが果たす役割は等しいのですが,実際にこの行列を2乗すると
  J^2=[1,0]=−E
     [0,1]
となって,虚数のもっている性質を備えていることがわかります.
 
 このことを踏まえると,複素数に対応した行列を導入することができます.
  Z=xE+yJ=[x,−y]
          [y, x]
ここで,
  E=[1,0]   J=[0,−1]
    [0,1]     [1, 0]
 
  Z’=xE−yJ=[ x,y]
           [−y,x]
 
  Z・Z’=[x^2+y^2,0]=(x^2+y^2)E
       [0,x^2+y^2]
ですから,(x^2+y^2)Eという行列が(虚数単位iを陽に用いることなしに)行列Zと行列Z’の積に分解できたことになります.
 
 また,オイラーの公式
  exp(iθ)=cosθ+isinθ
を行列で表現すると
  exp(Jθ)=(cosθ)E+(sinθ)J
         =[cosθ,−sinθ]
          [sinθ, cosθ]
となって,確かに回転行列になっていることがわかります.
 
[問]2次の正方行列でX^2=−Eを満たすものは,複素数の範囲では
  [i,0]
  [0,i]
などがある.しかし,実数の範囲でも解は無数にある.その解をすべて求めよ.
 
[補]E,Jはそれぞれ対称行列(B’=B),交代行列(B’=−B)になっています.任意のn次正方行列Aに対して,
  B=(A+A’)/2,C=(A−A’)/2
とおけば,Bは対称行列,Cは交代行列であって,
  A=B+C
のような分解は一意で与えられます.
 
===================================
 
【2】パウリ行列
 
 前節で述べたことにより,行列を使うと因数分解ができるようになる可能性が開けてきます.円に相当するx^2+y^2ができたわけですから,球に相当するx^2+y^2+z^2も分解してみたい・・・.そして実際に,
  x^2+y^2+z^2
の因数分解を可能にするのが「パウリ行列」です.
 
 パウリ行列は
  σx=[0,1]   σy=[0,−i]   σz=[1, 0]
     [1,0]      [i, 0]      [0,−1]
の3組の2×2行列で与えられるのですが,いずれも2乗すると単位行列になります.
  σx^2=E,σy^2=E,σz^2=E
 
 また,行列のかけ算は非可換なのですが,パウリ行列では,
  σxσy=iσz,σyσx=−iσz
のように符号が逆となり,
  σxσy+σyσx=O(ゼロ行列)
  σxσy−σyσx=2iσz
のような関係が成立します.
 
 ここで,行列
  xσx+yσy+zσz=[   z,x−yi]
             [x+yi,  −z]
を考え,この行列を2乗してみます.すると,
  (xσx+yσy+zσz)^2=[x^2+y^2+z^2,0]
                [0,x^2+y^2+z^2]
  =(x^2+y^2+z^2)E
 
 結局,(x^2+y^2+z^2)Eという行列は,(xσx+yσy+zσz)^2に分解できたことになります.4元数を使わないとできなかった因数分解が,行列を利用すると分解できるトリックは,行列の成分として虚数単位を含んでいるうえに,行列自体にも虚数の働きがあり,普通の数にはない機能を2重に使っているからと考えられます.
 
===================================
 
【3】ディラック行列
 
 パウリの行列において
  x^2+y^2+z^2=r^2
は3次元空間での球に相当するわけですが,歴史的にはパウリが基本粒子のスピンを数学的に表現するために考案したものです.この考えがヒントになって,ディラックが4次元時空における時間の項を加えた
  x^2+y^2+z^2+t^2
を因数分解するために「ディラック行列」を使いました.
 
  αx=[0,0,0,1]  αy=[0, 0,0,−i]
     [0,0,1,0]     [0, 0,i, 0]
     [0,1,0,0]     [0,−i,0, 0]
     [1,0,0,0]     [i, 0,0, 0]
 
  αz=[0, 0,1, 0]  β=[1,0, 0, 0]
     [0, 0,0,−1]    [0,1, 0, 0]
     [1, 0,0, 0]    [0,0,−1, 0]
     [0,−1,0, 0]    [0,0, 0,−1]
 
 これらの4組の2×2行列をディラック行列と呼ぶのですが,前項と同様に,
  xαx+yαy+zαz+tβ
 =[ t,  0,  z, x−yi]
  [ 0,  t, x+yi,−z ]
  [ z, x−yi,−t, 0  ]
  [x+yi,−z ,0,  −t ]
 
  (xαx+yαy+zαz+tβ)^2
 =[x^2+y^2+z^2+t^2,0,0,0]
  [0,x^2+y^2+z^2+t^2,0,0]
  [0,0,x^2+y^2+z^2+t^2,0]
  [0,0,0,x^2+y^2+z^2+t^2]
 =(x^2+y^2+z^2+t^2)E
という関係が確かめられます.これで,(x^2+y^2+z^2+t^2)Eという行列は,(xαx+yαy+zαz+tβ)^2に分解できることがわかりました.
 
===================================
 
 ちなみに,ディラック行列をパウリ行列で表現すると,
  αx=[0,σx]  αy=[0,σy]  αz=[0,σz]
     [σx,0]     [σy,0]     [σz,0]
 
  β=[E, 0]
    [0,−E]
 
  xαx+yαy+zαz+tβ=[tE, xσx+yσy+zσz]
                [xσx+yσy+zσz,−tE]
と表すことができます.
 
 このことから
  αx^2=E,αy^2=E,αz^2=E,β^2=E
 
  αxαy+αyαx=O(ゼロ行列)
  αxαy−αyαx=2i[σz,0]
            [0,σz]
 
  αxβ+βαx=O(ゼロ行列)
  αxβ−βαx=2[0,−σx]
          [σx, 0]
と計算されます.ディラック行列がパウリ行列に一工夫加えた様子を窺い知ることができるでしょう.
 
===================================
 
【4】4元数と行列
 
 積の交換法則が成り立たない代数として「行列」があります.
  E=[1,0]   J=[0,−1]   J^2=−E
    [0,1]     [1, 0]
とおけば,
  A=[a1,−a2]
    [a2, a1]
  A=a1E+a2J
と表されます.
 
  A=a1E+a2J,B=b1E+b2J
の形の行列全体は加法および乗法に関して閉じています.
  A+B=(a1+b1)E+(a2+b2)J
  AB=(a1b1−a2b2)E+(a1b2+a2b1)J
乗法の可換性は成立しません.すなわち,【1】節では行列による表現を利用して複素数を導入したわけですが,類似の方法で4元数を行列の中に実現させる方法もあります.
 
  E=[1,0,0,0]
    [0,1,0,0]
    [0,0,1,0]
    [0,0,0,1]
 
  i=[0,−1,0, 0]  j=[0, 0,−1,0]
    [1, 0,0, 0]    [0, 0, 0,1]
    [0, 0,0,−1]    [1, 0, 0,0]
    [0, 0,1, 0]    [0,−1, 0,0]
 
  k=[0,0, 0,−1]  A=[a1,−a2,−a3,−a4]
    [0,0,−1, 0]    [a2, a1,−a4, a3]
    [0,1, 0, 0]    [a3, a4, a1,−a2]
    [1,0, 0, 0]    [a4,−a3, a2, a1]
とおけば
  A=a1E+a2i+a3j+a4k
と書くことができます.
 
 この体系では,4元数同様,
  i^2=−E,j^2=−E,k^2=−E,
  ij=k,jk=i,ki=j,
  ji=−k,kj=−i,ik=−j
なる性質をもっていて,加法および乗法に関して閉じています.また,乗法の可換性は成立しません.
 
 この体系を用いると,
  (x^2+y^2+z^2)E=−(xi+yj+zk)^2
  (x^2+y^2+z^2+w^2)E=(x+yi+zj+wk)(x−yi−zj−wk)
のように,虚数単位iを陽に用いることなしに2つの行列の積に分解できますが,それでは4元数そのままであって,虚数単位iを使ったパウリ行列やディラック行列よりも面白味に欠けるかもしれません.
 
===================================
 
 行列jを変更して
  i=[0,−1,0, 0]  j=[0,0,−1, 0]
    [1, 0,0, 0]    [0,0, 0,−1]
    [0, 0,0,−1]    [1,0, 0, 0]
    [0, 0,1, 0]    [0,1, 0, 0]
 
  k=[0,0, 0,−1]  A=[a1,−a2,−a3,−a4]
    [0,0,−1, 0]    [a2, a1,−a4,−a3]
    [0,1, 0, 0]    [a3, a4, a1,−a2]
    [1,0, 0, 0]    [a4, a3, a2, a1]
とおくと,Aの上三角部分,下三角部分が歪対称(gij=−gji)になるので,形がスッキリすると思われます.
 
 ところが,実際にやってみると
  j^2=−1
は成り立つものの
  ij=k,jk=i,ki=j,
  ji=−k,kj=−i,ik=−j
が成立しません.なかなかうまくはいかないものです.
 
 なお,8元数:
  i^2=j^2=k^2=l^2=m^2=n^2=o^2=−1,
  i=jk=lm=on=−kj=−ml=−no,
  j=ki=ln=mo=−ik=−nl=−om,
  k=ij=lo=nm=−ji=−ol=−mn,
  l=mi=nj=ok=−im=−jn=−ko,
  m=il=oj=kn=−li=−jo=−nk,
  n=jl=io=mk=−lj=−oi=−km,
  o=ni=jm=kl=−in=−mj=−lk
では,乗法の結合法則も破れていて(a(bc)≠(ab)c),積の交換法則も結合法則も成り立ちませんが,それでも分配法則は成り立っています.行列は結合法則を満たすので,8元数は行列の一部とはみなせないのです.なお,結合法則が成り立たない数の体系(非結合的な体)としては,8元数,リー代数,ジョルダン代数の3つが代表的です.
 
===================================