2: 12

allrules=Tuples[{Rule@@@Tuples[{StringTuples["AB",1],StringTuples["AB",2]}]}]
In[]:=
{{AAA},{AAB},{ABA},{ABB},{BAA},{BAB},{BBA},{BBB}}
Out[]=
InteractiveListSelectorSW[ParallelMapMonitored[Function[r,Labeled[MultiwaySystem[r,StringTuples["AB",1],6,"StatesGraphStructure"],TimeConstrained[Counts[CausalInvariantQ[r,#,4]&/@StringTuples["AB",1]],20]]r],allrules]]
In[]:=
Out[]=
InteractiveListSelectorSW[ParallelMapMonitored[Function[r,Labeled[MultiwaySystem[r,StringTuples["AB",2],6,"StatesGraphStructure"],TimeConstrained[Counts[CausalInvariantQ[r,#,4]&/@StringTuples["AB",2]],20]]r],allrules]]
In[]:=
Out[]=
{{AAB}}
MultiwaySystem[{"A""AB"},StringTuples["AB",2],5,"StatesGraph"]
In[]:=
Out[]=
Graph3D[MultiwaySystem[{"A""AB"},{"AAA"},5,"StatesGraphStructure"],GraphLayout"SpringElectricalEmbedding",VertexCoordinatesAutomatic]
In[]:=
Out[]=
Graph3D[MultiwaySystem[{"A""AB"},{"AAAA"},5,"StatesGraphStructure"],GraphLayout"SpringElectricalEmbedding",VertexCoordinatesAutomatic]
In[]:=
Out[]=
MultiwaySystem[{"A""AB"},{"AAA"},5,"StatesGraphStructure"]
In[]:=
Out[]=
Graph[MultiwaySystem[{"A""AB"},{"AAA"},5,"EvolutionGraph"],VertexLabels->None]
In[]:=
Out[]=
{MultiwaySystem[{"A""AB"},{#},5,"StatesGraphStructure"],Graph3D[MultiwaySystem[{"A""AB"},{#},4,"StatesGraphStructure"],GraphLayout"SpringElectricalEmbedding",BaseStyle{Graphics3DBoxOptions{Method{"ShrinkWrap"True}}}]}&/@{"AAA","AAAA"}
In[]:=
Out[]=
Graph[MultiwaySystem[{"A""AB"},{"AA"},5,"StatesGraphStructure"],GraphLayout"SpringElectricalEmbedding"]
In[]:=
Out[]=
InteractiveListSelectorSW[ParallelMapMonitored[Function[r,Labeled[MultiwaySystem[r,StringTuples["AB",3],6,"StatesGraphStructure"],TimeConstrained[Counts[CausalInvariantQ[r,#,4]&/@StringTuples["AB",2]],20]]r],allrules]]
In[]:=
Out[]=
{{AAA},{ABB}}
MultiwaySystem[{"A""AA"},"ABA",4,"StatesGraph"]
In[]:=
Out[]=
MultiwaySystem[{"A""AA"},"ABABA",5,"StatesGraphStructure"]
In[]:=
Out[]=
MultiwaySystem[{"A""BB"},StringTuples["AB",2],4,"StatesGraph"]
In[]:=
Out[]=
MultiwaySystem[{"A""BB"},StringTuples["AB",3],4,"StatesGraph"]
In[]:=
Out[]=
MultiwaySystem[{"A""B"},StringTuples["AB",3],1,"StatesGraph"]
In[]:=
Out[]=
MultiwaySystem[{"A""B"},StringTuples["AB",4],1,"StatesGraph"]
In[]:=
Out[]=
StringRepeat["A",4]
In[]:=
AAAA
Out[]=
Table[SimpleGraph[MultiwaySystem[{"A""B"},StringRepeat["A",n],5,"StatesGraph"]],{n,2,4}]
In[]:=
Out[]=
Table[MultiwaySystem[{"A""B"},StringRepeat["A",n],5,"StatesGraph"],{n,2,4}]
In[]:=
Out[]=
Table[SimpleGraph[MultiwaySystem[{"A""B"},StringRepeat["A",n],5,"CausalGraph"]],{n,2,4}]
In[]:=
Out[]=
MultiwaySystem[{"A""B"},"A",2,"StatesGraph"]
In[]:=
Out[]=

3: 12

allrules=Tuples[{Rule@@@Tuples[{StringTuples["ABC",1],StringTuples["ABC",2]}]}]
In[]:=
Out[]=
InteractiveListSelectorSW[ParallelMapMonitored[Function[r,Labeled[MultiwaySystem[r,StringTuples["ABC",2],6,"StatesGraphStructure"],TimeConstrained[Counts[CausalInvariantQ[r,#,4]&/@StringTuples["ABC",2]],20]]r],allrules]]
In[]:=
Out[]=
InteractiveListSelectorSW[ParallelMapMonitored[Function[r,Labeled[MultiwaySystem[r,StringTuples["ABC",3],6,"StatesGraphStructure"],TimeConstrained[Counts[CausalInvariantQ[r,#,4]&/@StringTuples["ABC",3]],20]]r],allrules]]
In[]:=
Out[]=
{{ACC}}

2: 11, 11

allrules=DeleteDuplicates[Tuples[{Rule@@@Tuples[{StringTuples["AB",1],StringTuples["AB",1]}],Rule@@@Tuples[{StringTuples["AB",1],StringTuples["AB",1]}]}]]
In[]:=
Out[]=
InteractiveListSelectorSW[ParallelMapMonitored[Function[r,Labeled[MultiwaySystem[r,StringTuples["AB",2],6,"StatesGraphStructure"],TimeConstrained[Counts[CausalInvariantQ[r,#,4]&/@StringTuples["AB",2]],20]]r],allrules]]
In[]:=
Out[]=

2: 12, 11

allrules=DeleteDuplicates[Tuples[{Rule@@@Tuples[{StringTuples["AB",1],StringTuples["AB",2]}],Rule@@@Tuples[{StringTuples["AB",1],StringTuples["AB",1]}]}]]
In[]:=
Out[]=
InteractiveListSelectorSW[ParallelMapMonitored[Function[r,Labeled[MultiwaySystem[r,StringTuples["AB",1],6,"StatesGraphStructure"],TimeConstrained[Counts[CausalInvariantQ[r,#,4]&/@StringTuples["AB",1]],20]]r],allrules]]
In[]:=
Out[]=
{{ABA,AB},{AAA,AB},{AAB,BA},{ABB,BA},{ABB,AB}}
MultiwaySystem[#,"A",4,"StatesGraphStructure"]&/@{{"A""BA","A""B"},{"A""AA","A""B"},{"A""AB","B""A"},{"A""BB","B""A"},{"A""BB","A""B"}}
In[]:=
Out[]=
CausalInvariantQ[#,"A",4]&/@{{"A""BA","A""B"},{"A""AA","A""B"},{"A""AB","B""A"},{"A""BB","B""A"},{"A""BB","A""B"}}
In[]:=
{False,False,True,True,False}
Out[]=
Labeled[MultiwaySystem[#,"A",4,"StatesGraph"],#]&/@{{"A""AB","B""A"},{"A""BB","B""A"}}
In[]:=
Out[]=
Labeled[MultiwaySystem[#,"A",5,"StatesGraph"],#]&/@{{"A""AB","B""A"},{"A""BB","B""A"}}
In[]:=
Out[]=
Labeled[MultiwaySystem[#,"A",4,"StatesGraph"],#]&/@{{"A""AA","A""B"},{"A""AB","A""B"}}
In[]:=
Out[]=
InteractiveListSelectorSW[ParallelMapMonitored[Function[r,Labeled[MultiwaySystem[r,StringTuples["AB",2],6,"StatesGraphStructure"],TimeConstrained[Counts[CausalInvariantQ[r,#,4]&/@StringTuples["AB",2]],20]]r],allrules]]
In[]:=
Out[]=
{{AAB,AB},{ABB,AB},{AAA,AB}}