In[]:=
MultiwaySystem[{"A""AB","B""A"},"A",4,"CriticalPairs"]
Out[]=
{{AA,ABB},{AAB,ABA},{AAB,ABBB},{ABA,ABBB},{AAA,AABB},{AAA,ABAB},{AABB,ABAB},{AAA,ABBA},{ABAB,ABBA},{AABB,ABBA},{AABB,ABBBB},{ABAB,ABBBB},{ABBA,ABBBB}}
In[]:=
Table[MultiwaySystem[{"A""AB","B""A"},"A",t,"CriticalPairs"],{t,5}]
Out[]=
In[]:=
Graph[UndirectedEdge@@@Catenate[%]]
Out[]=
In[]:=
Graph[UndirectedEdge@@@Catenate[Table[MultiwaySystem[{"A""AB","B""A"},"A",t,"CriticalPairs"],{t,8}]]]
Out[]=
In[]:=
Graph[UndirectedEdge@@@#]&/@Table[MultiwaySystem[{"A""AB","B""A"},"A",t,"CriticalPairs"],{t,7}]
Out[]=
We can also compute the branchial graph of the multiway causal network
In[]:=
MultiwaySystem[{"A""AB","B""A"},"A",5,"EvolutionGraph"]//LayeredGraphPlot
Out[]=
In[]:=
{"A""AB","B""A"}
Out[]=
{AAB,BA}
In[]:=
MultiwaySystem[{"A""AB","B""A"},"A",5,"CriticalPairs"]
Out[]=
In[]:=
MultiwaySystem[{"A""AB","B""A"},"A",4,"UnresolvedCriticalPairs"]
Out[]=
{{AAA,AABB},{AAA,ABAB},{AABB,ABAB},{AAA,ABBA},{ABAB,ABBA},{AABB,ABBA},{AABB,ABBBB},{ABAB,ABBBB},{ABBA,ABBBB}}
In[]:=
MultiwaySystem[{"A""AB","B""A"},"A",5]
Out[]=
{{A},{AB},{AA,ABB},{AAB,ABA,ABBB},{AAA,AABB,ABAB,ABBA,ABBBB},{AAAB,AABA,AABBB,ABAA,ABABB,ABBAB,ABBBA,ABBBBB}}
In[]:=
{{"AAA","AABB"},{"AAA","ABAB"},{"AABB","ABAB"},{"AAA","ABBA"},{"ABAB","ABBA"},{"AABB","ABBA"},{"AABB","ABBBB"},{"ABAB","ABBBB"},{"ABBA","ABBBB"}}
Out[]=
{{AAA,AABB},{AAA,ABAB},{AABB,ABAB},{AAA,ABBA},{ABAB,ABBA},{AABB,ABBA},{AABB,ABBBB},{ABAB,ABBBB},{ABBA,ABBBB}}
getEventRenderingFunction["ListSubstitutionSystem",Automatic]:= Text[Framed[Style[getEventRenderingForm[Row,stripMetadata[#2]],Black],FrameMargins->None, FrameStyle->Directive[Opacity[.2],Blue],Background->Directive[Opacity[.1],Blue]],#1,{0,0}]&
getStateRenderingFunction["StringSubstitutionSystem",Automatic]:=Text[Framed[Style[stripMetadata[#2],Black], FrameMargins->None,FrameStyle->Directive[Opacity[.4],Gray],Background->Directive[Opacity[.2],Gray]], #1,{0,0}]&
In[]:=
StateBranchialGraph[rule_,init_,t_]:=Graph[UndirectedEdge@@@MultiwaySystem[{"A""AB","B""A"},"A",t,"UnresolvedCriticalPairs"],VertexShapeFunctionText[Framed[Style[#2,Black], FrameMargins->None,FrameStyle->Directive[Opacity[.4],Gray],Background->Directive[Opacity[.2],Gray]], #1,{0,0}]&]
In[]:=
Table[StateBranchialGraph[{"A""AB","B""A"},"A",t],{t,2,6}]
Out[]=
In[]:=
VertexDegree
Out[]=
{6,8,10,8,9,10,8,10,8,10,10,8,5}
In[]:=
TransitiveReductionGraph
Out[]=
Testing on Causal Invariant Rules
Testing on Causal Invariant Rules
Role of weighting in branchial graphs
Role of weighting in branchial graphs
“Equal-time commutator in state branchial graphs”
“Equal-time commutator in state branchial graphs”
Distance in string space corresponding to branchial state graphs
Distance in string space corresponding to branchial state graphs
What is the induced string metric?
Can one characterize distances between states in the branchial state graph by complex numbers?
Can one characterize distances between states in the branchial state graph by complex numbers?
Events Branchial Graphs
Events Branchial Graphs
Each complete graph is just the critical pairs with a given predecessor
Size of the event branchial graph is a measure of ambiguity at a particular stage.