Cellular automata (CA for short) are discrete dynamical systems at the crossroad of several reasearch fields and points of view (dynamical systems theory, computer science, physical modeling, etc). In the pioneering works impulsed by J. von Neumann and S. Ulam in the 50-60s, when cellular automata were formally defined for the first time, two important themes were already present: universality [16, 13, 19] and growth dynamics . Since then, these themes have received a considerable attention in the literature. Concerning universality, production of examples [1, 18] was accompanied by progresses on the formalization and the theoretical analysis of the concept , in particular with the emergence of intrinsic simulations and universality [4, 5]. Growing dynamics in cellular automata were also much studied, mostly through (classes of) examples with different points of view [11, 12, 7, 2]. More recently, substantial work have been published on models of self-assembly tilings, most of which can be seen as a particular non-deterministic 2D CA where structures grow from a seed. Interestingly, the question of intrinsic universality was particularly studied in that case [6, 15].
A common feature of all these examples is that only a bounded number of changes per cell can occur during the evolution. To our knowledge, the first time that the class of CAs with that feature was considered as a whole is in  with a point of view of language recognition. More recently the notion of freezing CA was introduced in , which captures essentially the same idea with an explicit order on states, and a systematic study of this class (dynamics, predictability, complexity) was started. In particular it was established that the class is Turing universal (even in dimension 1).
In this paper, we study intrinsic universality in freezing CA as a first step to understand universality in growth dynamics in general. Our central result is the construction of such intrinsically universal freezing CA: it shows that the class of freezing CA is a natural computational model with maximally complex elements which can be thought of as machines that can be ‘programmed’ to produce any behavior of the class. Moreover, the universal CA that we construct are surprisingly small (5 states, see Section 6.3) which is in strong contrast with the complicated construction known to obtain intrinsic universality for the classical self-assembly aTAM model . Our contribution also lays in the negative results we prove (Theorems 4.1, 4.2 and 4.3): interpreting them as necessary conditions to achieve universality for freezing CA, we obtain a clear landscape of the fundamental computational or dynamical features of this class.
The paper is organized as follows. In Section 2 we define the main concepts (freezing CA, and intrinsic simulation) and prove that the use of context-free simulation cannot lead to universality. Section 3 gives a general construction scheme to obtain universal freezing CA giving three positive results in three different settings depending on the dimension, the neighborhood and the maximum number of state changes per cell. In section 4, we show several obstacles to the existence of universal freezing CA: dimension , 1 change per cell with von Neumann neighborhood in 2D, and monotonicity.
A cellular automaton of dimension and state set is a tuple , where , its dimension is an integer, , its set of states is a finite set, is its finite neighborhood, and is its local function.
It induces a global function, which we also note , acting on the set of configurations as follows:
Let be the canonical basis of ; is the von Neumann neighborhood. We also use the following neighborhoods in dimension 2: is the Moore Neighborhood; is the L-neighborhood.
In many cellular automata from the literature, there is a global bound on the number of times a cell can change: they are bounded-change cellular automata. This property is found in most of the Cellular Automata considered in bootsrap percolation, as well as in other well-known examples such as ’Life without death’  and various models of propagation phenomena like in . We say that a CA is -change if any cell in any orbit changes at most times of state.
Moreover, in all those examples, the bound is defined through an explicit order on states. Such an automaton is a freezing cellular automaton; they were introduced in . This freezing-order on state can also be used to define interesting subclasses (see Section 4.2).
Definition 2 (Freezing Cellular Automaton)
A CA is a -freezing CA, for some (partial) order on states, if for any configuration and any cell . A CA is freezing if it is -freezing for some order.
Any freezing CA is -change for some (at most the depth of its freezing order, but possibly less). For , we note for the class of -dimensional freezing cellular automata with neighborhood . Finally, we set and omit when context makes it clear.
Intrinsic universality is defined through a notion of simulation between CA. Roughly speaking, simulates if there is an encoding of configurations of into configurations of such that one step of is simulated through this encoding by a fixed number of steps of .
Definition 3 (Simulation)
Let , and be a
-dimensional rectangular block, with size-vector. Let be a finite set, with . Let and be two -dimensional cellular automata. simulates with slowdown , block and context if there is a coding map such that the global map verifies:
where is defined by: for ,
In the context of freezing CAs, context-free universality is prevented by the irreversibility of any computation performed by a putative combined with the injectivity of the coding map, as witnessed by the following theorem.
Theorem 2.1 (No freezing context-free universality)
Let , there is no which is context-free -universal.
Context-sensitive simulation can get us over this hurdle as we show below; it is akin to the notion of conjugacy in symbolic dynamics .
3 Constructing Intrinsically Universal FCA
We give a number of constructions for intrinsically universal freezing cellular automata. All of these exhibit the same running theme: if there is a means of crossing information asynchronously, then universality can be reached. This insight yields three constructions which are concrete implementations under various technical constraints of a common abstract construction. The abstract construction can be described by: the structure of macro-cells, the mechanism to trigger state change in each macro-cell, and the wiring between neighboring macro-cells to ensure communication. At this abstract level we assume that there is a mean to cross wires without interference. Another aspect of wiring is the necessity to put delays on some wires in order to keep synchronicity of information: it is a standard aspect of circuit encoding in CAs [1, 17], which we won’t address in detail here but which can be dealt with by having wires make zigzag to adjust their length as desired. The freezing condition imposes strong restrictions on the way we can code, transport and process information. We focus below on where our construction differs from the classical approach in general CAs.
Wires are Fuses. It is not possible to implement classical wires where bits of information travel freely without violating the freezing condition. In all of our constructions wires are actually fuses that can be used only once and they are usually implemented with two states: stays stable without presence of neighboring s and propagates over neighboring s. With that behavior our wires can be trees connecting various positions in such a way that a appearing at any position is broadcasted to the whole tree. A finite wire can either be uniformly in state in which case all leaves ’agree’ on the bit of information transported by it, or not uniform in which case information is incoherent between leaves. As it will become clear later, our constructions will use wires between adjacent blocks (or macro-cells) in the simulator CA and our encodings require that those wires are in a coherent state (uniformly ): it is precisely in this aspect that we use the power of context sensitive simulations, because the content of a block (or macro-cell) cannot be fixed independently of its neighbors in that case.
State Codification. In each macro-cell we must code in some way a (possibly very big) state that can change a (possibly very big) number of times: a classical binary encoding would violate the freezing condition so we actually use a unary coding. Given a finite set and a quasi order , let be a linearization of , and let . Then let , and . Note that for any we have (where is the lexicographic order). Since is a bijection, for any cellular automaton with state set , is a cellular automaton isomorphic to , with state set , which we call the unary representation of . If is -freezing, then its unary representation is -freezing. We will use this unary encoding everywhere in the structure of our macro-cells: each state of a simulated CA will be represented by a collection of wires representing the bits of an element of defined above. This encoding is coherent with the freezing property of the simulated CA because the fact that states can only decrease corresponds to the fact that the number of wires uniformly equal to increases.
Neighborhood Matchers. The fundamental basic block of our construction is a circuit that detects a fixed pattern in the neighborhood and outputs a bit of information saying: “given this particular neighborhood pattern , the new state of the macro-cell must be smaller than ”. Our unary encoding is adapted for this because the predicate “smaller than ” for a state translates into a condition on a single bit of an element of , that is to say a single wire in our concrete representation of states. Without loss of generality we assume that is a FCA with state in unary representation. Take , and . For , let . Take, for some state , a fixed neighborhood with output smaller than ; each state is in , so is a binary word in .
Given and , the logic gate diagram of Figure 1(a), the Neighborhood Matcher, called , outputs if and only if in the input in the wires is exactly or the output cable was already in state . The -th wire joins the -th letter in with either the gate on the left if the -th letter of is or the gate on the right if the -th letter of is . Gate triggers a on wire if at least on of its incoming wire is , while gate triggers a on wire if all incoming wires are . Note that both behaviors are compatible with the freezing conditions since the set of wires in state can only grow during evolution. The gate at the top triggers a on the output wire if wire is in state and wire is in state (see Figure 1(a)). It is also a freezing gate, meaning that once it has triggered a it will never change its state again, even if the wire turns to state . Moreover this gate also turns into “trigger” state as soon as the output wire is .
Local Function Computation. Now we can compute the local function of through a macro-cell , receiving the states of the neighborhood as input, and yielding the next state as output. For this we will divide the space into rows for , and some number of columns. Intuitively, the role of row is to maintain the information “the current state of the macro-cell is less than ”. For a given , contains all block for . The inputs are distributed to each block, and the outputs of all blocks in are connected together by a broadcast wire. Thus, the final output in is as soon as one block triggers, i.e. as soon as , see Figure 1(b). Notice that once a neighborhood matcher in row has output , the output of the macro-cell it belongs to must be less than for ever: indeed, at the time when the was triggered to output the output value of the Macro-Cell must be less than by definition of , after that time the output is always less than thanks to the freezing condition on the CA being simulated. Concatenating rows in the right order, we obtain as output of the gate the correct state codification for any state of the neighborhood received as input.
Information exchanging. Given these basic blocks, one needs to embed one macro-cell per simulated cell on the simulator CA, and wire the inputs and outputs of neighboring macro-cells, as in Figure 3. The wiring between macro-cells depends on the neighborhood of the simulated CA. In order to clarify the presentation we will always assume that the simulated CA has a von Neumann neighborhood which is enough to achieve universality thanks to the following lemma.
For any dimension and any there is with von Neumann neighborhood that simulates .
The von Neumann wiring between macro-cells in dimension is shown on Figure 3. It is straightforward to generalize it to any dimension. Technically, thanks to Lemma 1, all the encoding map we use later have a von Neumann neighborhood context ( in Definition 3).
Context-sensitive encoding. Given a configuration of the simulated CA, the encoding is defined as follows. All wires of the construction are in a coherent state (same state along the wire). Each macro-cell holds a state of the configuration represented in unary by the rows described above. Wires incoming from neighboring macro-cells hold the information about neighboring states (hence the context-free encoding) which is transmitted to each block . Inside each of this blocks the inputs arrive at gates “” and “” and these gates have eventually triggered a on wires and . However, gate “” has not yet triggered to preserve the property that the main wire of row is coherent and represents the information on the current state of the macro-cell. Starting from that well encoded configuration, a simulation cycle begins by the possible triggering of “” gates. After some time a well encoded configuration is reached again because changes coming from triggerings of gates are broadcasted on each row, and, in each block , the content up to the gate is determined by the inputs.
We can now state three variants of the construction which differ essentially in the way crossing of information is implemented.
with states which is -change and -universal.
with states which is -change and -universal.
with states which is -change and -universal.
4 Obstacles to -Universality
The one-dimensional case. Although one-dimensional freezing CA can be computationally universal , they cannot be -universal. This is a major difference with CA in general. The intuition behind this limitation is the following: in any given 1D freezing CA, there is a bound on the number of times a zone of consecutive cells can be crossed by a signal; and above this bound, the zone becomes a blocking word preventing any information flow between left and right halves around it.
Theorem 4.1 (Dimension 1)
There is no which is -universal, even with context-sensitive simulation.
2D von Neumann 1-change FCA: information crossing. We will show that there is no freezing universal FCA which is -change and has the von Neumann neighborhood. This result is to be contrasted with the case of self-assembly tiling where an intrinsically universal system exists  (although with an unavoidably more technical definition of simulation). The intuition is that the propagation of state changes in such FCA produces -connected paths that can not be crossed in the future of the evolution because only state change per cell is possible. As shown in the construction of Theorem 3.1, two changes per cell are enough to get rid of this limitation, even with the von Neumann neighborhood.
We will show that no -change von Neumann FCA can simulate the following 2-change FCA , with and where is defined by
and else, where stands for any state and the arguments of correspond to neighborhood LN in the following order: center, north, east.
There is no automaton in which is 1-change and able to simulate . Therefore there is no automaton in which is 1-change and -universal.
Monotone FCA: synchronous vs. asynchronous information. As for classical real function, we can consider the property of monotonicity in CA: given two configurations, one smaller that the other, their images by the CA compare in the same order. We are particularly interested in the case where the order on configurations is given by the order on states of a freezing CA. Several examples of such monotone FCAs were studied in literature. In particular, a simple model called bootstrap percolation was proposed by Chalupa in 1979  to understand the properties in some magnetic materials. This model and several variants were studied from the point of view of percolation theory [11, 2], but also from the point of view of complexity of prediction .
A -freezing CA of dimension with alphabet is monotone if it satisfies: , where is naturally extended to configurations by .
The intuitive limitation of monotone freezing CAs is that they must always produce a smaller state when two signals arrive simultaneously at some cell compared to when one of the two signals arrives before the other. We now exhibit a freezing non monotone CA that does precisely the opposite (non-simultaneous arrival produces a smaller state). Next theorem shows that cannot be simulated by any freezing monotone CA. is defined by with given by:
and unspecified transitions let the state unchanged. is -freezing for the following order on states: . Essentially is a FCA sending the signals and towards south or west along the wires materialized by state . can also move on wires made of . plays the role of a non-monotone local gate: when two signals arrive simultaneously, a -signal is sent to the south, but when only one signal arrives, a -signal is sent to the south. cannot be simulated by any monotone FCA, hence no monotone FCA can be -universal.
For any , there is no freezing monotone CA of dimension which is -universal.
Here are some questions or research directions that we think are worth being considered:
do CA with a bounded number of change per cell also exhibit intrinsic universality?
what about intrinsic universality for non-deterministic or asynchronous freezing CA as a generalization of aTAM models?
what are the limit sets of ?
what can be said about from an ergodic theory point of view (this includes questions from percolation theory)?
-  E. R. Banks. Universality in cellular automata. In Eleventh Annual Symposium on Switching and Automata Theory, Santa Monica, California, 1970. IEEE.
B. Bollobás, P. Smith, and A. Uzzell.
Monotone cellular automata in a random environment.
Combinatorics, Probability and Computing, 24(4):687–722, 2015.
-  J. Chalupa, P. L. Leath, and G. R. Reich. Bootstrap percolation on a Bethe lattice. Journal of Physics C Solid State Physics, 12:L31–L35, jan 1979.
-  M. Delorme, J. Mazoyer, N. Ollinger, and G. Theyssier. Bulking I: an abstract theory of bulking. Theor. Comput. Sci., 412(30):3866–3880, 2011.
-  M. Delorme, J. Mazoyer, N. Ollinger, and G. Theyssier. Bulking II: classifications of cellular automata. Theor. Comput. Sci., 412(30):3881–3905, 2011.
-  D. Doty, J. H. Lutz, M. J. Patitz, R. T. Schweller, S. M. Summers, and D. Woods. The tile assembly model is intrinsically universal. In FOCS 2012 Proceedings, pages 302–310, 2012.
-  M.A. Fuentes and M.N. Kuperman. Cellular automata and epidemiological models with spatial dependence. Physica A: Statistical Mechanics and its Applications, 267(3-4):471 – 486, 1999.
-  E. Goles, D. Maldonado, P. Montealegre, and N. Ollinger. On the computational complexity of the freezing non-strict majority automata. In AUTOMATA, pages 109–119, 2017.
-  E. Goles, P. Montealegre-Barba, and I. Todinca. The complexity of the bootstraping percolation and other problems. Theor. Comput. Sci., 504:73–82, 2013.
-  E. Goles, N. Ollinger, and G. Theyssier. Introducing freezing cellular automata. In J. Kari, I. Törmä, and M. Szabados, editors, Exploratory Papers of Cellular Automata and Discrete Complex Systems (AUTOMATA 2015), pages 65–73, 2015.
-  J. Gravner and D. Griffeath. Cellular automaton growth on z2: Theorems, examples, and problems. Advances in Applied Mathematics, 21(2):241 – 304, 1998.
-  D. Griffeath and C. Moore. Life without death is P-complete. Complex Systems, 10, 1996.
-  J. H. Holland. A universal computer capable of executing an arbitrary number of subprograms simultaneously. In A. W. Bukrs, editor, Essays on Cellular Automata, pages 264–276. U. of Illinois Press, 1970.
-  D. A. Lind and B. Marcus. An Introduction to Symbolic Dynamics and Coding. Cambridge U. Press, New York, NY, USA, 1995.
-  P.-E. Meunier, M. J. Patitz, S. M. Summers, G. Theyssier, A. Winslow, and D. Woods. Intrinsic universality in tile self-assembly requires cooperation. In SODA 2014 Proceedings, pages 752–771, 2014.
-  J. Von Neumann. Theory of Self-Reproducing Automata. U. of Illinois Press, 1966.
-  N. Ollinger. Universalities in cellular automata. In Handbook of Natural Computing, pages 189–229. Springer, 2012.
-  N. Ollinger and G. Richard. Four states are enough! Theor. Comput. Sci., 412(1-2):22–32, 2011.
-  J. W. Thatcher. Universality in the von neumman cellular model. In A. W. Bukrs, editor, Essays on Cellular Automata, pages 132–186. U. of Illinois Press, 1970.
-  S. M. Ulam. On some mathematical problems connected with patterns of growth of figures. In A. W. Bukrs, editor, Essays on Cellular Automata, pages 219–231. U. of Illinois Press, 1970.
-  R. Vollmar. On cellular automata with a finite number of state changes. In W. Knödel and H.-J. Schneider, editors, Parallel Processes and Related Automata, volume 3 of Computing Supplementum, pages 181–191. Springer Vienna, 1981.
6.1 Proof of Theorem 2.1
Let be any fixed dimension. By contradiction suppose that such an universal with alphabet exists and consider for any the CA with states and von Neumann neighborhood with the following rule: a cell in state changes to state if and all its neighbors are in state , otherwise it stays in state . is -freezing. By hypothesis must simulate each because they are all freezing CA by definition. For each let be the block size in the injection given by simulation of by (it is a context free simulation so the context is a singleton). Since is unbounded then is unbounded, so we can choose such that has at least one side which is at least two times the radius of the neighborhood of . Without loss of generality we suppose that the left to right side of is long. Consider the configuration of made by a block at position surrounded by blocks . Since on simulates on the configuration made of a surrounded by , the block at position in must become after some time and in particular it must change: let be the first time such that does not contain the block at position , and consider any position such that