In[]:=
finn=Sort/@Table[ResourceFunction["TuringMachineFromNumber"][m,1,2],{m,0,15}]
Out[]=
{{{1,0}{1,0,-1},{1,1}{1,0,-1}},{{1,0}{1,0,1},{1,1}{1,0,-1}},{{1,0}{1,1,-1},{1,1}{1,0,-1}},{{1,0}{1,1,1},{1,1}{1,0,-1}},{{1,0}{1,0,-1},{1,1}{1,0,1}},{{1,0}{1,0,1},{1,1}{1,0,1}},{{1,0}{1,1,-1},{1,1}{1,0,1}},{{1,0}{1,1,1},{1,1}{1,0,1}},{{1,0}{1,0,-1},{1,1}{1,1,-1}},{{1,0}{1,0,1},{1,1}{1,1,-1}},{{1,0}{1,1,-1},{1,1}{1,1,-1}},{{1,0}{1,1,1},{1,1}{1,1,-1}},{{1,0}{1,0,-1},{1,1}{1,1,1}},{{1,0}{1,0,1},{1,1}{1,1,1}},{{1,0}{1,1,-1},{1,1}{1,1,1}},{{1,0}{1,1,1},{1,1}{1,1,1}}}
In[]:=
initn=Sort/@EnumerateTuringMachines[1,2]
Out[]=
{{{1,0}{1,0,-1},{1,1}{1,0,-1}},{{1,0}{1,0,-1},{1,1}{1,0,1}},{{1,0}{1,0,-1},{1,1}{1,1,-1}},{{1,0}{1,0,-1},{1,1}{1,1,1}},{{1,0}{1,0,1},{1,1}{1,0,-1}},{{1,0}{1,0,1},{1,1}{1,0,1}},{{1,0}{1,0,1},{1,1}{1,1,-1}},{{1,0}{1,0,1},{1,1}{1,1,1}},{{1,0}{1,1,-1},{1,1}{1,0,-1}},{{1,0}{1,1,-1},{1,1}{1,0,1}},{{1,0}{1,1,-1},{1,1}{1,1,-1}},{{1,0}{1,1,-1},{1,1}{1,1,1}},{{1,0}{1,1,1},{1,1}{1,0,-1}},{{1,0}{1,1,1},{1,1}{1,0,1}},{{1,0}{1,1,1},{1,1}{1,1,-1}},{{1,0}{1,1,1},{1,1}{1,1,1}}}
In[]:=
FirstPosition[initn,#]&/@finn
Out[]=
{{1},{5},{9},{13},{2},{6},{10},{14},{3},{7},{11},{15},{4},{8},{12},{16}}
In[]:=
Flatten[%]
Out[]=
{1,5,9,13,2,6,10,14,3,7,11,15,4,8,12,16}
In[]:=
{HoldForm[Undefined],HoldForm[If[OddQ[i],1,Undefined]],HoldForm[Undefined],HoldForm[If[OddQ[i],1,Undefined]],HoldForm[2IntegerExponent[i+1,2]+1],HoldForm[1],HoldForm[If[EvenQ[i],1,Undefined]],HoldForm[1],HoldForm[Undefined],HoldForm[2IntegerExponent[i,2]+1],HoldForm[Undefined],HoldForm[2IntegerExponent[i,2]+1],HoldForm[2IntegerExponent[i+1,2]+1],HoldForm[1],HoldForm[If[EvenQ[i],1,Undefined]],HoldForm[1]}[[{1,5,9,13,2,6,10,14,3,7,11,15,4,8,12,16}]]
Out[]=
{Undefined,2IntegerExponent[i+1,2]+1,Undefined,2IntegerExponent[i+1,2]+1,If[OddQ[i],1,Undefined],1,2IntegerExponent[i,2]+1,1,Undefined,If[EvenQ[i],1,Undefined],Undefined,If[EvenQ[i],1,Undefined],If[OddQ[i],1,Undefined],1,2IntegerExponent[i,2]+1,1}
Uniqueness of Functions
Uniqueness of Functions
ReverseSort[Counts[Select[ParallelMap[TMComputeOutput[#,Range[30],100]&,EnumerateTuringMachines[2,2]],FreeQ[Undefined]]]]
In[]:=
all22=ParallelMap[#->Table[TuringMachineFunction[#,i,200],{i,50}]&,EnumerateTuringMachines[2,2]];
In[]:=
gall22=((First/@#)->#[[1,2]])&/@GatherBy[all22,Last];
In[]:=
sgall22=SortBy[gall22,Last];
In[]:=
TakeLast/@
,-20/.Undefined->-1//Grid
Out[]=
In[]:=
ArrayPlotMapIf[#==-1,-1,Log[#]]&,Last/@
,{2}
Out[]=
In[]:=
ArrayPlot[Map[If[#===Undefined,-1,Log[#]]&,ParallelTable[Table[TuringMachineFunction[{m,1,2},i,200],{i,20}],{m,0,15}]]]
Out[]=
[[[ Not correct ]]]
Closed Forms
Closed Forms
Run Times
Run Times
Undefined Values
Undefined Values