テンソルの正規化
Wolfram言語には強力なテンソルの正規化機能が含まれ,これは対称性を持つテンソルの積,縮約,転置を含む式を標準形にすることができる.それらの標準形から計算を最適化することができ,新しい恒等式が導かれる.
$Assumptions = T∈ Arrays[{d, d, d, d}, Reals, {{{2, 1, 3, 4}, -1}, {{3, 4, 1, 2}, 1}}];
contractions = Map[Sort, Partition[#, 2]& /@ Permutations[Range[8]], {1, 2}]//DeleteDuplicates;
Length[contractions]TensorReduce[TensorContract[TT, #]]& /@ contractions//DeleteDuplicatestlist = %[[2 ;; -2 ;; 2]];
glist = MapAt[Annotate[#, ImageSize -> 60]&, SymbolicTensors`TensorGraph[#, Method -> 2]& /@ tlist, {1, 1}];
Grid[Transpose[{tlist, glist}]]TensorReduce[TensorContract[TensorProduct @@ ConstantArray[T, 25], Partition[RandomSample[Range@100], 2]]]//Timing