Pure transposition rules....
[Perhaps symmetric]
[Perhaps symmetric]
In[]:=
Tuples[Range[3],2]
Out[]=
{{1,1},{1,2},{1,3},{2,1},{2,2},{2,3},{3,1},{3,2},{3,3}}
ParityPairings[Tuples[Range[0,2],2]]
Out[]=
In[]:=
Take[%553,4]
Out[]=
{{{{0,0},{0,0}},{{0,1},{0,2}},{{1,0},{1,1}},{{1,2},{2,0}},{{2,1},{2,2}}},{{{0,0},{0,0}},{{0,1},{0,2}},{{1,0},{1,1}},{{1,2},{2,1}},{{2,0},{2,2}}},{{{0,0},{0,0}},{{0,1},{0,2}},{{1,0},{1,1}},{{1,2},{2,2}},{{2,0},{2,1}}},{{{0,0},{0,0}},{{0,1},{0,2}},{{1,0},{1,2}},{{1,1},{2,0}},{{2,1},{2,2}}}}
In[]:=
Rule@@@Union[Join[#,Reverse/@#]]&/@Take[%553,4]
Out[]=
{{{0,0}{0,0},{0,1}{0,2},{0,2}{0,1},{1,0}{1,1},{1,1}{1,0},{1,2}{2,0},{2,0}{1,2},{2,1}{2,2},{2,2}{2,1}},{{0,0}{0,0},{0,1}{0,2},{0,2}{0,1},{1,0}{1,1},{1,1}{1,0},{1,2}{2,1},{2,0}{2,2},{2,1}{1,2},{2,2}{2,0}},{{0,0}{0,0},{0,1}{0,2},{0,2}{0,1},{1,0}{1,1},{1,1}{1,0},{1,2}{2,2},{2,0}{2,1},{2,1}{2,0},{2,2}{1,2}},{{0,0}{0,0},{0,1}{0,2},{0,2}{0,1},{1,0}{1,2},{1,1}{2,0},{1,2}{1,0},{2,0}{1,1},{2,1}{2,2},{2,2}{2,1}}}
In[]:=
ArrayPlot[ResourceFunction["BlockCellularAutomaton"][#,CenterArray[Table[2,10],60],40],ColorRules->{0->White,1->Lighter[Orange],2->Darker[Orange]}]&/@(Rule@@@Union[Join[#,Reverse/@#]]&/@Take[%553,4])
Out[]=
,
,
,
In[]:=
symmetricQ[rules_]:=Sort[Map[Reverse,rules,{2}]]===Sort[rules]
In[]:=
Select[Rule@@@Union[Join[#,Reverse/@#]]&/@ParityPairings[Tuples[Range[0,2],2]],symmetricQ]
Out[]=
In[]:=
ResourceFunction["InteractiveListSelector"][(ArrayPlot[ResourceFunction["BlockCellularAutomaton"][#,CenterArray[Table[2,10],60],40],ColorRules->{0->White,1->Lighter[Orange],2->Darker[Orange]}]->#)&/@%559]
Out[]=
Non reversible
Non reversible