Block Simulation Network of Elementary Cellular Automata

A network showing how one elementary cellular automaton can emulate another if its states contain only particular blocks

Originator: Stephen Wolfram

All the 88 inequivalent elementary rules are included. This network originally appeared on page 702 of Stephen Wolfram’s A New Kind of Science.

(88 rows)

Examples

Basic Examples

Retrieve the resource:

In[1]:=
ResourceObject["Block Simulation Network of Elementary Cellular \
Automata"]
Out[1]=

Retrieve the default content:

In[2]:=
ResourceData["Block Simulation Network of Elementary Cellular \
Automata"]
Out[2]=

Find which rules can be emulated by rule 22:

In[3]:=
ResourceData[
  "Block Simulation Network of Elementary Cellular Automata"][
 Key[22], All, "Rule"]
Out[3]=

Find the details of the emulation of rule 90 by rule 22:

In[4]:=
ResourceData[
  "Block Simulation Network of Elementary Cellular Automata"][Key[22],
  Select[#Rule == 90 &]]
Out[4]=

Get the blocks:

In[5]:=
ResourceData[
   "Block Simulation Network of Elementary Cellular Automata"][
  Key[22], Select[#Rule == 90 &], "Blocks"] // Values
Out[5]=

Plot them:

In[6]:=
ArrayPlot[CellularAutomaton[22, {{1, 0, 0, 0}, {0, 0, 0, 0}}, 40]]
Out[6]=

Look at every 4th step:

In[7]:=
ArrayPlot[
 CellularAutomaton[22, {{1, 0, 0, 0}, {0, 0, 0, 0}}, {{0, 40, 4}}]]
Out[7]=

Convert the blocks to 0 and 1 respectively:

In[8]:=
Reverse /@ 
 Normal[Normal[
   First[ResourceData[
      "Block Simulation Network of Elementary Cellular Automata"][
     Key[22], Select[#Rule == 90 &], "Blocks"]]]]
Out[8]=
In[9]:=
ArrayPlot[(Partition[#, 
      4] /. {{0, 0, 0, 0} -> 0, {1, 0, 0, 0} -> 1}) & /@ 
  CellularAutomaton[22, {{1, 0, 0, 0}, {0, 0, 0, 0}}, {{0, 40, 4}}]]
Out[9]=

Plot the entire simulation network

In[10]:=
Graph[Flatten[Normal[KeyValueMap[Thread[#1 -> #2] &,
    ResourceData[
      "Block Simulation Network of Elementary Cellular Automata"][All,
      All, "Rule"]]]], VertexLabels -> Automatic]
Out[10]=

Wolfram Research, "Block Simulation Network of Elementary Cellular Automata" from the Wolfram Data Repository. (2017) https://doi.org/10.24097/wolfram.05827.data

Source Metadata