Wolfram Function Repository
Instant-use add-on functions for the Wolfram Language
Function Repository Resource:
Implementation of the Busy Boxes 3D reversible cellular automaton
ResourceFunction["BusyBoxesAutomaton"][init] runs the BusyBoxes cellular automaton rule starting from an initial 3D state init. | |
ResourceFunction["BusyBoxesAutomaton"][init,n] runs for n steps. | |
ResourceFunction["BusyBoxesAutomaton"][init,-n] runs for n steps in reverse. | |
ResourceFunction["BusyBoxesAutomaton"][init,n,phase] runs with an initial integer phase. | |
ResourceFunction["BusyBoxesAutomaton"][state,"Step", phase] take a single step of the automaton. | |
ResourceFunction["BusyBoxesAutomaton"][state,"Swaps", phase] return an explicit list of swap rules for a single step starting from a state with an optional phase. | |
ResourceFunction["BusyBoxesAutomaton"][state,"Visualization"] return a 3D visualization for a state. | |
ResourceFunction["BusyBoxesAutomaton"][arguments][state] represents an operator form. |
-The X's are the knight's move positions for the pairs of cells represented by asterisks.
Run BusyBoxesAutomaton starting from a random initial condition for a single step:
In[1]:= |
Out[1]= |
Run BusyBoxesAutomaton for 3 steps and visualize it:
In[2]:= |
Out[2]= |
Run BBX for 100 steps and 100 more in reverse:
In[3]:= |
Out[3]= |
Gliders:
In[4]:= |
In[5]:= |
Out[5]= |
In[6]:= |
In[7]:= |
Out[7]= |
Start tracking circular motion:
In[8]:= |
Show the circular motion:
In[9]:= |
Out[9]= |
Compute box traces for all sizes up-to 100:
In[10]:= |
Out[10]= |
Plot circularity dependency on the number of boxes measured as standard deviation of average radius for each step:
In[11]:= |
Out[11]= |
Which proves Miller and Fredkin hypothesis wrong of circularity monotonically decreasing to zero. They've only computed this curve up-to 20 boxes, but the minimum is at 43.
Wolfram Language 13.0 (December 2021) or above
This work is licensed under a Creative Commons Attribution 4.0 International License