Pensieve header: γ2-checks for OneCo. Branched from OneCoComputations.nb.

The bracket

In the basis {a[f,i,j], γ[f,i,j], γ[f,i,j,k], γa[f,i,j,k,l]}.

Generalities

DQ[is___] := (Sort[{is}]===Union[{is}]);

LSimp[γ[f_,j_,k_,k_]] = 0;
LSimp[γ[f_,j_,k_,l_]] /; OrderedQ[{l,k}]∧DQ[k,l] := γ[-f, j, l, k] // LSimp;
LSimp[γa[f_, i_,j_,i_,k_]] /; OrderedQ[{k,j}]∧DQ[k,j] := γ[(Subscript[b, i])f, i,j,k] + γa[f, i,k,i,j] // LSimp;
LSimp[β[f_]] := β[Expand[f]];
LSimp[a[i_,j_]] := a[i,j];
LSimp[a[f_, i_,j_]] := a[Expand[f], i,j];
LSimp[γ[f_, is__]] := γ[Expand[f], is];
LSimp[γa[f_, is__]] := γa[Expand[f], is];
LSimp[expr_] := expr /. (t_β|t_a|t_γ|t_γa) :> LSimp[t];

β[0] :=0;
β /: β[f_] + β[g_] := β[f+g];
β /: -β[f_] := β[-f] // LSimp;
a[0,__] := 0;
a /: a[f_,i_,j_] + a[g_, i_,j_] := a[f+g, i,j];
a /: -a[f_, is__] := a[-f, is] // LSimp;
γ[0,__] :=0;
γ /: γ[f_,is__] + γ[g_, is__] := γ[f+g, is];
γ /: -γ[f_, is__] := γ[-f, is] // LSimp;
γa[0,__] :=0;
γa /: γa[f_,is__] + γa[g_, is__] := γa[f+g, is];
γa /: -γa[f_, is__] := γa[-f, is] // LSimp;

B[0,_] =0; B[_, 0] = 0;
B[x_,x_] = 0;
B[x_Plus, y_] := B[#,y]& /@ x;
B[x_, y_Plus] := B[x,#]& /@ y;

Specific Brackets

[a,a] brackets:

B[a[f_, j_,k_], a[g_, l_,m_]] := Plus[
B[a[j,k], a[l,m]] /. {a[h_,is__] :> a[f g h, is], γ[h_,is__] :> γ[f g h, is]},
γa[f((∂_(Subscript[b, j]))g-(∂_(Subscript[b, k]))g), j,k,l,m] + γa[g((∂_(Subscript[b, m]))f-(∂_(Subscript[b, l]))f), l,m,j,k]
] // LSimp;
(* tt *) B[a[j_,k_], a[j_,l_]] /; DQ[j,k,l] := γ[1,j,k,l] // LSimp;
(* hh *) B[a[j_,k_], a[i_,k_]] /; DQ[i,j,k] := a[(Subscript[b, i]), j,k] - a[(Subscript[b, j]), i,k] // LSimp;
(* th *) B[a[j_,k_], a[i_,j_]] /; DQ[i,j,k] := a[(Subscript[b, j]), i,k] - a[(Subscript[b, i]), j,k] + γ[1, i,j,k] // LSimp;
(* ht *) B[a[j_,k_], a[k_,l_]] /; DQ[j,k,l] := -B[a[k,l], a[j,k]];
(* loc *) B[a[j_,k_], a[l_,m_]] /; DQ[j,k,l,m] := 0;

[a,β] brackets:

B[a[f_, j_,k_], β[g_]] := γ[f((∂_(Subscript[b, j]))g-(∂_(Subscript[b, k]))g), j,k] // LSimp;

[a,(Subscript[γ, 2])] brackets: (only (Subscript[γ, 2])’s in output!)

(* ttγ *) B[a[f_, j_,k_], γ[g_, j_,l_]] /; DQ[j,k,l] := 0;
(* hhγ *) B[a[f_, j_,k_], γ[g_, i_,k_]] /; DQ[i,j,k] := - γ[(Subscript[b, j])f g, i,k] // LSimp;
(* thγ *) B[a[f_, j_,k_], γ[g_, i_,j_]] /; DQ[i,j,k] := γ[(Subscript[b, j])f g, i,k] // LSimp;
(* htγ *) B[a[f_, j_,k_], γ[g_, k_,l_]] /; DQ[j,k,l] := γ[(Subscript[b, j])f g, k,l] - γ[(Subscript[b, k])f g, j,l] // LSimp;
(* locγ *) B[a[f_, j_,k_], γ[g_, l_,m_]] /; DQ[j,k,l,m] := 0;
B[a[f_, j_,k_], γ[g_, j_,k_]] :=  γ[-(Subscript[b, j])f g, j,k] // LSimp;

[a,(Subscript[γ, 3])] brackets:

(* ttγ3 *) B[a[f_, j_,k_], γ[g_, j_,l_,m_]] /; DQ[j,k,l,m] := 0;
(* thγ3-1 *) B[a[f_, j_,k_], γ[g_, i_,j_,l_]] /; DQ[i,j,k,l] := γ[(Subscript[b, j])f g,i,k,l] + γa[f g,i,l,j,k] // LSimp;
(* thγ3-2 *) B[a[f_, l_,k_], γ[g_, i_,j_,l_]] /; DQ[i,j,k,l] := γ[-(Subscript[b, l])f g,i,k,j] + γa[-f g,i,j,l,k] // LSimp;
(* htγ3 *) B[a[f_, j_,k_], γ[g_, k_,l_,m_]] /; DQ[j,k,l,m] := γ[-(Subscript[b, k])f g,j,l,m] + γ[(Subscript[b, j])f g,k,l,m] // LSimp;
(* hhγ3-1 *) B[a[f_, j_,k_], γ[g_, n_,i_,k_]] /; DQ[n,i,j,k] := γ[-(Subscript[b, j])f g, n,i,k] + γa[f g, n,i,j,k] // LSimp;
(* hhγ3-2 *) B[a[f_, j_,i_], γ[g_, n_,i_,k_]] /; DQ[n,i,j,k] := γ[(Subscript[b, j])f g, n,k,i] + γa[-f g, n,k,j,i] // LSimp;
(* a-th-1 *) B[a[f_, j_,k_], γ[g_, j_,k_,l_]] /; DQ[j,k,l] := γa[-f g,j,k,j,l] // LSimp;
(* a-th-2 *) B[a[f_, j_,l_], γ[g_, j_,k_,l_]] /; DQ[j,k,l] := γa[f g,j,l,j,k] // LSimp;
(* a-hh-1 *) B[a[f_, j_,k_], γ[g_, i_,j_,k_]] /; DQ[i,j,k] := γ[-(Subscript[b, j])f g, i,j,k] + γa[f g, i,j,j,k] + γa[f g, i,k,j,k] // LSimp;
(* a-hh-2 *) B[a[f_, k_,j_], γ[g_, i_,j_,k_]] /; DQ[i,j,k] := γ[(Subscript[b, k])f g, i,k,j] + γa[-f g, i,k,k,j] + γa[-f g, i,j,k,j] // LSimp;
(* locγ *) B[a[f_, i_,j_], γ[g_, k_,l_,m_]] /; DQ[i,j,k,l,m] := 0;

[a,γa] brackets:

B[x_a, γa[f_, i_,j_,m_,n_]] := Plus[
B[x, γ[f, i,j]] /. γ[g_, k_,l_] :> γa[g, k,l,m,n],
B[x, a[1, m,n]] /. {a[g_, k_,l_] :> γa[f g, i,j,k,l], _γ|_γa:>0}
] // LSimp

[β,a], [γ,a], [γ,γ] brackets:

B[x_β|x_γ|x_γa, y_a] := -B[y,x];
B[_β|_γ|_γa, _β|_γ|_γa] := 0;

(Subscript[γ, 2]) checks

βc[0,_] :=0;
βc /: βc[f_,i_] + βc[g_, i_] := βc[f+g, i];
βc /: -βc[f_, i_] := βc[Expand[-f], i];
δa[0,__] :=0;
δa /: δa[f_,is__] + δa[g_, is__] := δa[f+g, is];
δa /: -δa[f_, is__] := δa[Expand[-f], is];
B[a[f_,j_,k_], c[l_]] /; DQ[j,k,l]:= 0;
B[a[f_,j_,k_], c[j_]] := γ[-f,j,k];
B[a[f_,j_,k_], c[k_]] := γ[f,j,k];
B[x_, βc[f_, i_]] := B[x, c[i]] /. γ[g_,l_,m_] :> γ[f g, l,m];
(*B[x_, ca[f_, i_,j_,k_]] := Plus[
B[x, c[i]] /. γ[g_,l_,m_] :> γa[f g, l,m,j,k],
B[x, a[f,j,k]] /. {a[g_,l_,m_] :> ca[g, i,l,m], _γ -> 0, _γa -> 0}
];*)
(*δaa[f_, i_,j_,k_,l_] /; OrderedQ[{l,j}]∧DQ[i,j,k,l] := δaa[f, k,l,i,j];
δaa[f_, i_,j_,i_,l_] /; OrderedQ[{l,j}]∧DQ[j,l]:= δaa[f,i,l,i,j];*)
B[x_,δa[f_,i_,j_]] := B[x, a[f,i,j]] /. {a->δa, _γ:>0};
Eγ2 = {
γ[f_,j_,k_] :> δa[f, j,k]+βc[Expand[-f (Subscript[b, j])], k]
};
Check2[y_γ] := {t1=B[a[f,j,k], y] /. Eγ2, t2=B[a[f,j,k], y /. Eγ2] /. Eγ2, t1==t2 // Simplify}

tt check

γ[g,j,l] // Check2

th check

γ[g, i,j] // Check2 // ColumnForm

ht check

γ[g, k,l] // Check2 // ColumnForm

hh checks not done

γ[g, n,i,k] // Check3 // ColumnForm

γ[g, n,k,i] // Check3 // ColumnForm