A Billion Bits of the Center Column of the Rule 30 Cellular Automaton

The center column of the rule 30 cellular automaton over a billion steps of evolution

The resource contains a byte array of the data. Each byte gives 8 values from the center column, with the highest-order bit in each byte representing the value that appears first in the center column.

Examples

Basic Examples

Retrieve the sequence packed into bytes:

In[1]:=
bytes = ResourceData[
  "A Billion Bits of the Center Column of the Rule 30 Cellular Automaton"]
Out[1]=

Unpack the sequence as bits (this can take some time):

In[2]:=
bits = Flatten[IntegerDigits[#, 2, 8] & /@ Normal[bytes]];

The sequence contains a billion bits:

In[3]:=
Length[bits]
Out[3]=

It uses about 8 GB of memory:

In[4]:=
ByteCount[bits]
Out[4]=

Show the first 100 bits:

In[5]:=
Take[bits, 100]
Out[5]=

Compare with a direct computation:

In[6]:=
CellularAutomaton[30, {{1}, 0}, {100, {{0}}}]
Out[6]=

Count the total number of 1s and 0s in the full sequence:

In[7]:=
Counts[bits]
Out[7]=

Count the number of occurrences of possible 2-grams:

In[8]:=
SequenceCount[bits, #] & /@ Tuples[{1, 0}, 2]
Out[8]=

Compute the running excess of 1s over 0s:

In[9]:=
acc = Accumulate[2 bits - 1];

Find the extreme values:

In[10]:=
MinMax[acc]
Out[10]=

Plot the running excess:

In[11]:=
ListLinePlot[ArrayResample[acc, {1000}]]
Out[11]=

Wolfram Research, "A Billion Bits of the Center Column of the Rule 30 Cellular Automaton" from the Wolfram Data Repository (2019)  

Data Resource History

Source Metadata

Publisher Information