Function Repository Resource:

JacobiShufflePermutations

Source Notebook

Generate a set of permutations for Jacobi identities of arbitrary order

Contributed by: Motoharu Ito

ResourceFunction["JacobiShufflePermutations"][k,l]

Find the Jacobi subset of (k,l)-order, where k and l are non-negative integers.

Details

[X1,,Xn] represents the bracketed product that extends the Lie bracket product called the left-normed bracket, which is defined recursively by
For any Lie algebra, a subset J of the symmetric group Sn is said to be a Jacobi subset if it satisfies . This identity is also called the n th-order Jacobi identity of J.
A Jacobi subset J can be labeled Jk,l for k+ln, and Jk,l is called a Jacobi subset of (k,l)-order.
The explicit expression for Jk,l is represented by the following complex expression. Despite its complexity, it can be organized using the shuffle Sh1.
For example, since J1,1={{1,2},{2,1}} for n=2=1+1, the second-order Jacobi identity is the anti-commutator. And since J1,2=J2,1={{1,2,3},{2,3,1},{3,1,2}} for n=3=1+2=2+1, the third-order Jacobi version is the standard Jacobi identity.

Examples

Basic Examples (3) 

Give the anti-commutator ([X1,X2]+[X2,X1]=0) permutations:

In[1]:=
ResourceFunction["JacobiShufflePermutations"][1, 1]
Out[1]=

Give the Jacobi identity ([X1,X2,X3]+[X2,X3,X1]+[X3,X1,X2]=0) permutations:

In[2]:=
ResourceFunction["JacobiShufflePermutations"][1, 2]
Out[2]=

Give the higher Jacobi identity ([X1,X2,X3,X4]+[X1,X4,X3,X2]+[X2,X3,X4,X1]+[X3,X1,X2,X4]+[X4,X1,X2,X3]=0) permutations:

In[3]:=
ResourceFunction["JacobiShufflePermutations"][1, 3]
Out[3]=

Scope (3) 

Prove the Jacobi identity for a matrix:

In[4]:=
jacobiator // ClearAll;
jacobiator // Attributes = {};
jacobiator[k_, l_, m_] := Module[{MatrixCommutator},
   MatrixCommutator[{mm_}] := mm;
   MatrixCommutator[{a_, b_}] := a . b - b . a;
   MatrixCommutator[{mm__}] := Fold[MatrixCommutator[{#1, #2}] &][{mm}];
   Sum[i, {i, Map[MatrixCommutator[Map[m, #]] &, ResourceFunction["JacobiShufflePermutations"][k, l]]}] // FullSimplify
   ];
m[k_] := {{Subscript[a, k], Subscript[b, k]}, {Subscript[c, k], Subscript[d, k]}};
{jacobiator[1, 2, m], jacobiator[1, 3, m]}
Clear[jacobiator, m];
Out[8]=

Visualize the (1,3)-order Jacobi identity with ResourceFunction[“PermutationCyclesGraph”]:

In[9]:=
Table[ResourceFunction["PermutationCyclesGraph"][p, VertexLabels -> "Name"], {p, ResourceFunction["JacobiShufflePermutations"][1, 3]}]
Out[9]=

Visualize the (3,3)-order Jacobi identity with ResourceFunction[“PermutationCyclesGraph”]:

In[10]:=
Table[ResourceFunction["PermutationCyclesGraph"][p, VertexLabels -> "Name"], {p, ResourceFunction["JacobiShufflePermutations"][3, 3]}]
Out[10]=

Publisher

Motoharu Ito

Version History

  • 1.0.0 – 14 November 2022

Source Metadata

Related Resources

Author Notes

Credit goes to Ilya Alekseev and Sergei O. Ivanov

License Information