テンソルの対称性

二階以上のテンソルは通常スロットの交換の下で対称性を持つ.例えば,慣性テンソル,エネルギー・運動量テンソル,リッチ曲率テンソルは二階完全対称テンソル,電磁テンソルは二階歪対称テンソル,リーマン曲率テンソルと剛性テンソルは非自明な対称性を持つ四階テンソルである.Wolframシステムはあらゆるテンソルのスロットの置換による任意の対称性を記述する汎用言語を備えている.また,記号テンソル計算において不可欠なステップとして,このような対称性の下でテンソルに一意の標準形式を与える効率的なアルゴリズムを実装している.
段階的置換における不変量
テンソルに対する基本的な動作は,単位根による置換と乗算による転置で構成される.このような動作のもとでテンソルが不変であれば,このテンソルは対称であるといえる.
{permutation,phase}
対称性生成子の一般形
TensorTranspose[tensor,gen]
テンソルに対する対称性生成子の動作
対称性生成子とテンソルの転置
対称性生成子,つまり段階的置換には,テンソルとそのテンソルを同時に乗算する単位根のスロットを置換する方法が含まれている:
次の四階配列は段階的置換が起きても不変なので,対称性がある:
しかし,別の生成子を使うと不変ではない:
生成子を連続して使うことは,生成子の積に等しい.ここで段階と置換は別々に乗算される.実際,2段階の置換の下でテンソルが不変であれば,その積の下でも不変である.このように,施されてもテンソルが不変である段階的置換の集合は,テンソルのスロット対称群という群を作成する.
ある生成子の下で配列が不変であれば,そのベキ乗の下でも不変である:
対称性指定
関数TensorSymmetryはテンソルの転置対称の完全な記述を返す.これは名前付きの対称性として与えることもできれば,置換積およびベキ乗によって残りを構築するもととなっているいくつかの対称生成子のリストとして与えることもできる.
TensorSymmetry[tensor]
tensor の転置対称を見付ける
Symmetric[{s1,,sn}]
任意の2スロット si を交換してもテンソルの符号は変わらない
Antisymmetric[{s1,,sn}]
任意の2スロット si を交換するとテンソルの符号が変わる
ZeroSymmetric[{s1,,sn}]
任意の零テンソルの対称性
{symgen1,,symgenm}
テンソルの対称性生成子のリスト
{sym1,,symk}
対称性指定の直接の積
テンソル対称性の計算と指定
対称行列:
三階歪対称配列:
対称性がない場合は,生成の空リストによって表される:
零テンソルの対称性の表現である:
一般的に,TensorSymmetryはテンソルの対称性を,生成子のリストとして返す.置換は巡回形式で与えられる:
配列の対称化
関数Symmetrizeを使って配列を対称化することで,配列の対称性を向上させることができる.結果はSymmetrizedArray型の構造化配列として与えられる.この構造型の詳細は「対称化された配列」を参照されたい.
Symmetrize[tensor,sym]
tensor を対称性 sym まで対称化する
SymmetrizedArray[rules,dims,sym]
独立要素を与える,対称性のある配列を構築する
SymmetrizedArray[StructuredData[dims,{rules,sym}]]
対称性のある配列の構造配列表現
テンソルの対称化と対称化された配列
対称性を持たない一般的な配列を取る:
その歪対称部に投影すると,結果は独立成分だけを保存するSymmetrizedArrayオブジェクトとして与えられる:
これには1つの独立成分だけが含まれている:
その成分は,配列の標準形式で複数回繰り返される:
これ以上反対称化を行っても配列は変化しないので,これは投影である:
どのレベルのペアの対称化でも,最大対称性を持つゼロ配列が生成される:

独立成分と従属成分

テンソルまたは配列に対称性がある場合,その成分を指定する自由度は減少する.実際,対称性により成分間の関係が指定され,その中で独立成分はほんのわずかである.
SymmetrizedIndependentComponents[dims,sym]
指定された次元と対称性を持つ配列の独立成分
SymmetrizedDependentComponents[comp,sym]
対称性のもとで与えられた成分に関連付けられた従属成分
独立成分と従属成分
対称性を持つ配列を取る:
この配列には自由に指定できる項目が4つしかない.この数が,次元および対称性に対応する最大数であることが証明できる:
リーマンテンソルの対称性を持つ次元{3,3,3,3}の配列に対して6つの独立成分がある:
は対称群の次数)として漸近的に大きくなり,リーマン対称では8になる:
与えられた独立成分に関連付けられた従属成分は,関連した対称の置換群における軌道計算を使って得ることができる.
三次元の一般的な三階対称配列を取る:
これらは位置として与えられた10個の独立成分である:
以下は従属成分のそれぞれの軌道である:
各軌道のすべての成分が一致していることをチェックすることができる:
対称性指定の追加情報
関数SymmetrizedIndependentComponentsを使って,対称性指定の例をもう少し挙げる.
単独の生成子により与えられる,複雑な相を持つ対称性:
いくつかの生成子により与えられる対称性:
対称積:
名前の付いた対称性は生成子により与えられる対称性(ともに置換リストあるいは置換巡回を使用)と組み合せることができる:
単位根が ϕ の段階的置換{perm,ϕ}の場合,一般に ϕn1nPermutationOrder[perm]により与えられる perm の置換の位数)でなければならない.そうでないと,生成子はゼロテンソルの対称にしかなれない.この場合,生成子は矛盾している,あるいは自己矛盾と言われる.テンソルの対称性は,たとえ自己矛盾のない生成子で表現されていてもゼロテンソルだけに対応する.つまり,自己矛盾のない生成子の組合せで,自己矛盾のある生成子ができることがあるのである.
生成子{{2,3,1},-1}は,置換の位数が3であるため矛盾がないが,-1は位数2の単位根である.ゼロテンソルには独立成分がないので,結果は空のリストになる:
以下の2つの生成子は矛盾がないが,それらを組み合せるとゼロテンソルにしか対応しない対称性が得られる:
どちらの場合も,直接ゼロ対称を指定することと同等である: