Fast Simulation of Cellular Automata by Self-Composition
Joseph Natal, Oleksiy Al-saadi
TL;DR
The paper tackles speeding up the simulation of one-dimensional, two-color cellular automata by self-composing the local rule to form a composite rule with radius $kr$. It proves that a $k$-fold composition yields a time–space tradeoff, reducing generation-time complexity from $O(n^2)$ toward $O(n^2 / \log n)$ while increasing memory usage to $O(n^2 / (\log n)^3)$, with $k$ selected via a Lambert $W$-based optimization. The key contributions include a formal construction showing $X_{2n-1}^{\mathcal{H}} = X_n^{\mathcal{G}}$, the $k$-fold composition framework, and complexity analyses alongside experimental validation on Rule $30$. The findings indicate a principled avenue to accelerate CA simulations under RAM-based models, though practical gains are bounded by memory bandwidth and hardware constraints; the work also suggests memory-layout improvements (e.g., De Bruijn sequences) for potential practical gains.
Abstract
Computing the configuration of any one-dimensional cellular automaton at generation $n$ can be accelerated by constructing and running a composite rule with a radius proportional to $\log n$. The new automaton is the original one, but with its local rule function composed with itself. Consequently, the asymptotic time complexity to compute the configuration of generation $n$ is reduced from $O(n^2)$-time to $O(n^2 / \log n)$, but with $O(n^2/(\log n)^3)$-space, demonstrating a time-memory tradeoff. Experimental results are given in the case of Rule 30.
