Pensieve header: μ-calculus testing suite.

SetDirectory["C:\\drorbn\\AcademicPensieve\\2013-04"];
<< FreeLie.m
$SeriesShowDegree=3; $SeriesCompareDegree = 5;
<< muCalculus.m

Testing The Calculus

“tha” things:

μ1=M[{
2 -> RandomLieSeries[{"1", "2"}]
}, MakeCWSeries[0]
];
(μ1 //tha[1,2]// hS[2] // tha[1,2] // hS[2]) ≡ μ1

“dm” things: Associativity

μ4=M[{
1 -> RandomLieSeries[{"1", "2", "3", "4"}],
2 -> RandomLieSeries[{"1", "2", "3", "4"}],
3 -> RandomLieSeries[{"1", "2", "3", "4"}],
4 -> RandomLieSeries[{"1", "2", "3", "4"}]
}, RandomCWSeries[{"1", "2", "3", "4"}]
];
(μ4 // dm[1,2,1] // dm[1,3,1])≡(μ4 // dm[2,3,2] // dm[1,2,1])

“S” Things: tS[a] // tS[a] == Id,  hS[a] // hS[a] == Id, dS[a] // dS[a] == Id

μ1=M[{
1 -> RandomLieSeries[{"1", "2"}],
2 -> RandomLieSeries[{"1", "2"}]
}, RandomCWSeries[{"1", "2"}]
];
μ1≡(μ1 // tS[1] // tS[1])

μ1=M[{
1 -> RandomLieSeries[{"1", "2"}],
2 -> RandomLieSeries[{"1", "2"}]
}, RandomCWSeries[{"1", "2"}]
];
μ1≡(μ1 // hS[1] // hS[1])

μ1=M[{
1 -> RandomLieSeries[{"1", "2"}],
2 -> RandomLieSeries[{"1", "2"}]
}, RandomCWSeries[{"1", "2"}]
];
μ1≡(μ1 // dS[1] // dS[1])

“A” Things: tA[a] // tA[a] == Id,  hA[a] // hA[a] == Id, dA[a] // dA[a] == Id

μ1=M[{
1 -> RandomLieSeries[{"1", "2"}],
2 -> RandomLieSeries[{"1", "2"}]
}, RandomCWSeries[{"1", "2"}]
];
μ1≡(μ1 // tA[1] // tA[1])

μ1=M[{
1 -> RandomLieSeries[{"1", "2"}],
2 -> RandomLieSeries[{"1", "2"}]
}, RandomCWSeries[{"1", "2"}]
];
μ1≡(μ1 // hA[1] // hA[1])

μ1=M[{
1 -> RandomLieSeries[{"1", "2"}],
2 -> RandomLieSeries[{"1", "2"}]
}, RandomCWSeries[{"1", "2"}]
];
μ1≡(μ1 // dA[1] // dA[1])

Testing Reidemeister Moves

R[1,1,p]≡(R[1,2,p] // dm[2,1,1])

(SuperPlus[R])[1,2]

{t1=(SuperPlus[R])[1,2]**(SuperMinus[R])[1,2], t2=dϵ[1]**dϵ[2], t1≡t2}

{t1=(SuperPlus[R])[1,2]**(SuperPlus[R])[1,3]**(SuperPlus[R])[2,3],t2=(SuperPlus[R])[2,3]**(SuperPlus[R])[1,3]**(SuperPlus[R])[1,2], t1≡t2}