■直積(クロネッカー積)

【1】アダマール行列

 アダマール行列Hnは+1か−1の要素をもつn×n行列で,その行と列は互いに直交している.各行または列のノルム(各要素の2乗和)はnであるから,

  HnHn’=Hn’Hn=nIn

が成り立つ.

 最も簡単なアダマール行列は

  H2 =[1, 1]

     [1,−1]

である.すべての他のアダマール行列はn=4kであることが必要である.

 とくに興味深いのは「直積」

  H4=H2×H2(2^2×2^2行列),

  H8=H2×H2×H2(2^3×2^3行列),

  Hn=H2×H2×H2・・・(2^n×2^n行列)

によって,H2から得られるn=2^mのシルベスタ型のアダマール行列で,

     [1, 1, 1, 1]

  H4 =[1,−1, 1,−1]

     [1, 1,−1,−1]

     [1,−1,−1, 1]

     [1, 1, 1, 1, 1, 1, 1, 1]

     [1,−1, 1,−1, 1,−1, 1,−1]

     [1, 1,−1,−1, 1, 1,−1,−1]

  H8 =[1,−1,−1, 1, 1,−1,−1, 1]

     [1, 1, 1, 1,−1,−1,−1,−1]

     [1,−1, 1,−1,−1, 1,−1, 1]

     [1, 1,−1,−1,−1,−1, 1, 1]

     [1,−1,−1, 1,−1, 1, 1,−1]

===================================

【2】アダマール行列の直積

 なお,A(m×n行列)とB(m’×n’行列)の直積(クロネッカー積)は,2つの行列の各要素を直接乗じて作る(mm’×nn’)行列である.直積では第1項の各要素をその項と第2項との積で置き換えることによって定義される.

 両者の成分のすべての積を作り,各要素を(ci'j')=(aijbkl)において,

  i’=i+m(k−1)

  j’=j+n(l−1)

の式にしたがって並べると,

  1≦i≦m,1≦j≦n,1≦k≦m’,1≦l≦n’

より,

  1≦i’≦mm’,1≦j’≦nn’

 また,正方行列X(n×n行列)とY(m×m行列)の直積の固有値は,Xのn個の固有値とYのm個の固有値の積である.テンソルの数学的定義はそれが何であるかよりも座標変換に対していかに振る舞うかによって規定するから,理解しにくいかもしれない.

===================================