FusionAtlasPaths={"~/projects/fusionatlas/code/package/","~/Documents/math papers/fusionatlas/code/package/","~/Documents/Math/fusionatlas/code/package/"};
$Path=$Path~Join~FusionAtlasPaths;
<<FusionAtlas`

Clear[DietmarA3A4Composition]

DietmarA3A4Composition[n_]/;n≥0:=GradedBigraph[{{1}},{{1},{1}},{{1,0},{1,0}},Sequence@@Flatten[Table[{{{1,0}},{{1},{1}}},{n}],1],{{1,0},{1,0}},{{1,1}}]

DisplayBigraph[DietmarA3A4Composition[0]]

Clear[DietmarA3A4CompositionDual]

DietmarA3A4CompositionDual[0]=GradedBigraph[{{1}},{{1},{1}},{{1,0},{0,1}},{{1,0},{0,1},{0,1},{0,1}},{{1,1,0,0}},{{1}}];

DietmarA3A4CompositionDual[n_]/;n≥1:=GradedBigraph[{{1}},{{1},{1}},{{1,0},{0,1}},{{1,0},{0,1},{0,1}},{{1,0,0},{0,0,1}},Sequence@@Flatten[Table[{{{1,0},{1,0},{0,1},{0,1}},{{1,0,0,0},{0,0,1,0}}},{n-1}],1],{{1,0},{1,0},{0,1},{0,1},{0,1}},{{0,1,1,0,0}},{{1}}]

DisplayBigraph[DietmarA3A4CompositionDual[1]]

With[{k=5},(Sort/@ReducedDimensionsByDepth[DietmarA3A4Composition[k]][[2;;-1;;2]])-(Sort/@ReducedDimensionsByDepth[DietmarA3A4CompositionDual[k]][[2;;-1;;2]])]

KnownObstructions/@Table[DietmarA3A4Composition[k],{k,0,4}]

KnownObstructions/@Table[DietmarA3A4CompositionDual[k],{k,0,4}]

Clear[DietmarA3A4Pairs]

DietmarA3A4Pairs[k_]:=DietmarA3A4Pairs[k]=FusionAtlas`PairOdometer`Private`ChooseIsomorphismRepresentatives[Cases[Flatten[Outer[List,BigraphWithDuals[DietmarA3A4Composition[k]],BigraphWithDuals[DietmarA3A4CompositionDual[k]]],1],p_/;FullOcneanuTest@@p]]

DisplayBigraph/@DietmarA3A4Pairs[2]

DietmarA3A4Pairs[1]

DisplayBigraph/@DietmarA3A4Pairs[0]

Clear[FindFusionRules]

DimensionsByDepth[DietmarA3A4Pairs[0][[1,1,1]]]

SetDebugMode[True]

fr=(FindFusionRules@@#&/@DietmarA3A4Pairs[0])

Length/@fr

FlipFusionRules[FusionRules[{g0_,g1_},multiplicities_]]:=FusionRules[{g1,g0},multiplicities/.({a_,b_,c_}->T_):>((1-{a,b,c})->T)]

Table[Simplify[FormalCodegrees[EvenPart[fr[[i,j]]]]],{i,1,2},{j,1,2}]

Table[Simplify[FormalCodegrees[EvenPart[FlipFusionRules[fr[[i,j]]]]]],{i,1,2},{j,1,2}]

fr=FindFusionRules@@#&/@DietmarA3A4Pairs[1]

Length/@fr

ReducedDimensionsByDepth[#][[1;;-1;;2]]&/@DietmarA3A4Pairs[1][[All,1,1]]

Table[Simplify[FormalCodegrees[EvenPart[fr[[i,j]]]]],{i,1,2},{j,1,3}]

Table[Simplify[FormalCodegrees[EvenPart[FlipFusionRules[fr[[i,j]]]]]],{i,1,2},{j,1,3}]

fr=FindFusionRules@@#&/@DietmarA3A4Pairs[2]

Length/@fr

ReducedDimensionsByDepth[#][[1;;-1;;2]]&/@DietmarA3A4Pairs[2][[All,1,1]]

Table[Simplify[FormalCodegrees[EvenPart[fr[[i,j]]]]],{i,1,2},{j,1,3}]

Table[Simplify[FormalCodegrees[EvenPart[FlipFusionRules[fr[[i,j]]]]]],{i,1,2},{j,1,3}]