Scatter and Glow - Perturbative Testing

By Dror Bar-Natan with Kerene Chu, Zsuzsanna Dancso, Peter Lee and Louis Leung.
December 2008 - January 2009.

Mixing AH and PH

mix1=ToPH[3, S[sigma[3,1], sigma[3,2]]]

mix2 = ToPH[3, S[sigma[3,1]]]**S[sigma[3,2]]

Test[ToPH[3, mix1==mix2]]

The braid group on two strands is commutative:

Expect[Ar[1,2],
Ar[1,2] // ToPH[5, S[sigma[1,2]]]
]

Reidemeister 2

Expect[SnG[S[],0],
ToPH[5, SnG[sigma[1,2], sigbar[1,2]]]
]

Locallity in Scale (global over local)

ToPH[3, S[sigma[3,1], sigma[3,2]]]

Expect[{Ar[1,2],Ar[2,1]},
ToAH[
{Ar[1,2], Ar[2,1]} // ToPH[9, S[sigma[3,1], sigma[3,2]]]
]
]

Overcrossings Commute

oc1= ToPH[3, SnG[sigma[1,2], sigma[1,3]]]

oc2 = ToPH[3, SnG[sigma[1,3], sigma[1,2]]];
Test[oc1==oc2]

Reidemeister 3

r31 = ToPH[4, CanonicalForm[SnG[sigma[1,2], sigma[1,3], sigma[2,3]]]]

r32=ToPH[4, CanonicalForm[SnG[sigma[2,3], sigma[1,3], sigma[1,2]]]];
Test[r31==r32]

Commutators Commute

cc11 = ToPH[3, SnG[sigma[2,1], sigma[3,1], sigbar[2,1], sigbar[3,1]]]

cc12 = ToPH[3, SnG[sigma[4,1], sigma[5,1], sigbar[4,1], sigbar[5,1]]];
Test[(cc11 ** cc12) == (cc12**cc11)]

cc21 = ToPH[4, SnG[sigma[2,1], sigma[3,1], sigbar[2,1], sigbar[3,1]]]

cc22 = ToPH[4, SnG[sigma[3,1], sigma[4,1], sigbar[3,1], sigbar[4,1]]];
Test[(cc21 ** cc22) == (cc22**cc21)]

cc31 = ToPH[4, SnG[sigma[1,2], sigma[3,1]]**SnG[sigbar[1,2], sigbar[3,1]]]

cc32 = ToPH[4, SnG[sigma[1,4], sigma[5,1], sigbar[1,4], sigbar[5,1]]];
Test[(cc31 ** cc32) == (cc32**cc31)]

Commutators Commutators are Central (along strand 1)

(ccc=SnG[
sigma[1,2], sigma[3,1], sigbar[1,2], sigbar[3,1],
sigma[4,1], sigma[5,1], sigbar[4,1], sigbar[5,1],
sigma[3,1], sigma[1,2], sigbar[3,1], sigbar[1,2],
sigma[5,1], sigma[4,1], sigbar[5,1], sigbar[4,1]
]) // Last

Test[ccc**SnG[sigma[6,1]] == SnG[sigma[6,1]]**ccc]

Test[ccc**SnG[sigma[1,6]] == SnG[sigma[1,6]]**ccc]

Tails Commute and 4T

Der[Ar[1,2]+Ar[1,3]][Ar[2,4]]

Expect[0, Der[Ar[1,3]][Ar[1,2]]]

Expect[0,
Der[Ar[1,2]+Ar[1,3]][Ar[2,3]]
]

Der[Ar[1,2]][Ar[1,3]+Ar[2,3]]

Expect[0,
Der[Ar[1,2]][Ar[3,1]+Ar[3,2]]
]

Expect[{0,0},
Der[Ar[1,1]]@{Ar[1,2], Ar[2,1]}
]

Expect[{0,0},
Der[Ar[1,2]]@{Ar[1,1], Ar[2,2]}
]

Antisymmetry of Der

Expect[{{0,0,0,0},{0,0,0,0},{0,0,0,0},{0,0,0,0}},
ToAH[Table[
ReducePrimitives[
Der[ToPH[3, Y[1,2,3,AH[1]]]]@Ar[i,j] + Der[Ar[i,j]]@Y[1,2,3,ToPH[3, PH[1]]]
],{i,4},{j,4}
]]
]

Scattering by Exponentials

ToPH[3, S[Exp[Ar[1,2]]]]

Test[
CanonicalForm[ToPH[9, S[Exp[Ar[1,2]]]]] == CanonicalForm[ToPH[9, S[sigma[1,2]]]]
]

The BCH Formula

ToPH[5, S[sigma[1,3],sigma[2,3]]] // Short

unknowns = DeclareSeries[bc[x[1], x[2]], 4]

PH[bc]

S[Exp[Ar[1,3]+Ar[2,3]+Y[1,2,3,PH[bc]]]] // Short[#, 5]&

eq=Coefficient[
Ar[0,1] // S[Exp[Ar[1,3]+Ar[2,3]+Y[1,2,3,PH[bc]]]],
Y[0,1,3]
] == Coefficient[
Ar[0,1] // S[sigma[1,3],sigma[2,3]],
Y[0,1,3]
]

sol=First[HSolve[eq, unknowns]]

bch=PH[bc] /. sol

Test[CanonicalForm[
S[Exp[Ar[1,3]+Ar[2,3]+Y[1,2,3,bch]]] == ToPH[5,S[sigma[1,3],sigma[2,3]]]
]]

Compare with Kurlin

Test[Simplify[(bch /. {x[1]->x, x[2]->y}) ==PH[(((1/y)(1-(((E^x)-1)/x) ((x+y)/((E^(x+y))-1)))) /. {x -> z x, y -> z y})+O[z]^4]]]

Testing Code

SetAttributes[{Test, Expect}, {HoldAll}];
Test[expr_] := If[TrueQ[Check[expr, False]], True,
If[Head[$FailLog] =!= List, $FailLog={}];
AppendTo[$FailLog, "On "<>ToString[Date[]]<>" failed in "<>ToString[HoldForm[expr]]];
Print[Last[$FailLog]]
];
Expect[val_, expr_] := If[TrueQ[Test[val==expr]], val];

SetDirectory["C:\\drorbn\\AcademicPensieve\\Projects\\ScatterAndGlow"]
<< ScatterAndGlow.m

Test Test

Test[0==1]

Failed Tests

$FailLog