Reykjavík, August 23, 2006 Cellular Automata: Overview and classical results Silvio Capobianco Háskólinn í Reykjavík, Silvio@ru.is Università degli Studi di Roma La Sapienza, capobian@mat.uniroma1.it 1
Introduction Cellular automata are descriptions of global dynamics in terms of local transformations, applied at all points at the same time. By their own nature, they are easy to implement on a computer, and useful as tools for qualitative analysis of dynamical systems. Their properties are also a very vast research field. 2
Applications of cellular automata Population dynamics. Economics. Fluid dynamics. Simulations of geological phenomena. Symbolic dynamics. Approximation of differential equations. Screen savers. And much more... 3
Literature E. F. Moore, Machine models of self-reproduction, Proc. Symp. Appl. Math. 14 (1962), 17 33. J. Myhill, The converse of Moore s Garden-of-Eden theorem, Proc. Am. Math. Soc. 14 (1962), 685 686. G. A. Hedlund, Endomorphisms and automorphisms of the shift dynamical system, Math. Syst. Th. 3 (1969), 320 375. D. Richardson, Tessellations with local transformations, J Comp. Syst. Sci. 6 (1972), 373 388. S. Amoroso, Y. N. Patt, Decision procedures for surjectivity and injectivity of parallel maps for tessellation structures, J. Comp. Syst. Sci. 6 (1972), 448 464. J. Kari, Reversibility of 2D cellular automata is undecidable, Physica D 45 (1990), 379 385. 4
History von Neumann, 1950s: mechanical model of self-reproduction Moore, 1962: the Garden of Eden problem Hedlund, 1969: shift dynamical system Richardson, 1972: d-dimensional cellular automata Hardy, de Pazzis, Pomeau 1976: lattice gas cellular automata Amoroso and Patt, 1972; Kari, 1990: the invertibility problem 5
The original form John von Neumann s model of self reproduction, 1950s An infinite square grid A finite number of states for each point of the grid A finite number of neighbors for each point of the grid An evolution law where the next state of each point only depends on the current states of its neighbors 6
The importance of playing in life The Game of Life was ideated by John Horton Conway in the Sixties, and popularized by Martin Gardner the decade after. The checkboard is an infinite square grid. Each case of the checkboard is surrounded by those within a chess king s move, and can be living or dead. A dead case surrounded by exactly three living case, becomes living. A living case surrounded by two or three living cases, survives. A living case surrounded by less than two living cases, dies of isolation. A living case surrounded by more than three living cases, dies of overpopulation. 7
Simple rule, complex behavior The structures of the Game of Life can exhibit a wide range of behaviors. This is a glider, which repeats itself every four iterations, after having moved: Gliders can be used to transmit information between regions of the checkboard. Actually, using gliders and other complex structures, any planar circuit can be simulated inside the Game of Life. 8
On a more funny side, this is called the Cheshire cat: 9
... because it vanishes... 10
... and vanishes... 11
... and vanishes... 12
... more... 13
... and more... 14
... until the smile alone cheers at us... 15
... and at last, only a pawprint remains to tell it was there! 16
The ingredients of a classical recipe A cellular automaton is a quadruple A = d, Q, N, f where: d > 0 is an integer dimension; Q = {q 1,...,q n } is a finite set set of states; N = {n 1,...,n k } is a finite subset of Z d neighborhood index; f : Q N Q is a function local evolution function. Special neighborhood indexes are: the von Neumann neighborhood vn = {x Z d : d i=1 x i 1}; the Moore neighborhood M = {x Z d : max 1 i d x i 1}. 17
This is von Neumann s neighborhood... 18
and this is Moore s neighborhood, in dimension d = 2. 19
Examples of cellular automata 1 Put: d = 1; Q = {0, 1}; N = vn, the von Neumann neighborhood; f(α 1, α 0, α 1 ) = α 1 xorα 1. This is called Wolfram s rule 90, and its evolution from a single point is... 20
... Pascal s triangle, modulo 2. 21
Examples of cellular automata 2 Put: d = 2; Q = {0, 1}; N = M, the Moore neighborhood; 1 if x M\{0} α x = 3, f(α) = 1 if x M\{0} α x = 2 and α 0 = 1, 0 otherwise. This is Conway s Game of Life. 22
From local to global An element of Q Zd is called a configuration. The value of c Q Zd at x Z d is indicated as c x or c(x). A pattern is a chunk of configuration having finite size. The map F A : Q Zd Q Zd defined by (F A (c)) x = f(c x+n1,...,c x+nk ) is the global evolution function. 23
Finite configurations A state q is stable if it satisfies f(q,...,q) = q If A has one or more stable states, then one of them is chosen once and for all, indicated as q 0, and called the quiescent state. A configuration is finite if only a finite number of cells are nonquiescent. If c is finite, then F A (c) is finite as well. 24
Implementations Given their distinctive features, cellular automata rules are easy to implement on a computer. More difficult is to provide a general framework for cellular automata. Hardware CAM6 (Toffoli and Margolus, ca. 1985; expansion card for PC) CAM8 (Toffoli and Margolus, ca. 1990; external device for SparcStation) Software JCASim (Weimar; in Java) SIMP (Bach and Toffoli; in Python) These framework often work on a torus instead of the full plane. 25
Cellular automata and Turing machines Let T be a Turing machine with alphabet Σ and set of states. Then 1. put d = 1, 2. put Q = Σ ( {no head}), 3. put N = { 1, 0, 1}, and 4. construct f so that it reproduces the write operation of T on the first component, and the state update of T and the movement of T s head on the right component. Then A = d, Q, N, f simulates T, so that 1-dimensional cellular automata are capable of universal computation 26
Associate dynamics A dynamical system is a pair (X, Φ) where X is a compact metrizable space phase space, and Φ is a continuous function from X to X transition function. Observe that Q Zd, with the product topology, is compact by Tychonoff s Theorem. Moreover, putting (x 1,...,x d ) = max{ x 1,..., x d } the product topology is induced by the distance d(c 1, c 2 ) = 2 min{ x (c 1) x (c 2 ) x } i.e., near means equal on a large neighborhood of the origin. 27
Theorem (Hedlund, 1969) Let F : Q Zd Q Zd. The following are equivalent: 1. F is the global evolution function of a cellular automaton; 2. F is continuous in the product topology, and commutes with the translations, i.e., the transformations of Q Zd of the form c x (y) = c(x + y) y Z d Let A = d, Q, N, f be a cellular automaton. ) (Q Zd, F A By Hedlund s Theorem, is a dynamical system associate to A. We can thus say that a cellular automaton has a property, e.g., injectivity or surjectivity or chaoticity, if its associate dynamical system does. 28
Classification of cellular automata One-dimensional cellular automata were extensively studied by Stephen Wolfram. His work was both pioneering and influential. Among other things, he suggested the following, empirical classification: 1. evolution leads to homogenous state; 2. evolution leads to periodic structures; 3. evolution leads to chaotic space-time patterns; 4. evolution leads to complex localized structures. Wolfram s classification is much an appeal to common sense and cannot, for example, identify universal computation. A formalization was suggested by Culik and Yu and proved to be undecidable. 29
A way of labeling cellular automata rules also takes Wolfram s name. Given a 1-dimensional, 2-state rule with von Neumann neighborhood, 1. identify the sequence (α 1, α 0, α 1 ) with the the binary number α 1 α 0 α 1, and 2. associate to the rule f the number 7 j=0 2j f(j). This is called Wolfram s number of the rule f. Exercise: compute Wolfram s number for f(α 1, α 0, α 1 ) = α 1 xorα 1. Hint: α 1 1 1 1 1 0 0 0 0 α 0 1 1 0 0 1 1 0 0 α 1 1 0 1 0 1 0 1 0 f(α 1, α 0, α 1 ) 0 1 0 1 1 0 1 0 30
One after another Composition is well defined for cellular automata of same dimension and set of states. 1. Suppose A j = d, Q, N j, f j for j = 1, 2 are given. 2. Set N = {x Z d x 1 N 1, x 2 N 2 x = x 1 + x 2 }. 3. Define f : Q N Q as ( f(α) = f 2...,f1 (...,α n1,i +n 2,j,...,),... ) Then A = d, Q, N, f satisfies F A = F A2 F A1. In particular, the class of cellular automata with given dimension and set of states is a semigroup (monoid) under composition. 31
Reversibility A cellular automaton A is reversible if 1. A is invertible, and 2. F 1 A is the global evolution function of some CA. Equivalently, A is reversible if there exists a cellular automaton A such that both A A and A A are the identity cellular automaton. This seems more than just existence of inverse global evolution function. Reversible cellular automata are important because Physics, at microscopical scale, is itself reversible. 32
Theorem (Hedlund, 1969; Richardson, 1972 in a broader context) The following are equivalent: 1. A is reversible; 2. A is invertible. In other words: existence of inverse cellular automaton comes at no cost from existence of inverse evolution. In particular, the class of reversible cellular automata with given dimension and set of states is a group under composition. 33
Theorem (Toffoli, 1977) Every d-dimensional cellular automaton can be simulated by a (d + 1)-dimensional reversible cellular automaton. Corollary: reversible cellular automata are capable of universal computation. Theorem (Morita and Harao, 1989) Reversible Turing machines can be simulated by 1-dimensional reversible cellular automata. Corollary: there exist 1-dimensional reversible cellular automata that are computationally universal. 34
Gardens of Eden Let A = d, Q, N, f be a cellular automaton. A Garden of Eden (GoE) configuration for A is a configuration c such that F A (c ) c for all c ; i.e., it can be lost, but not regained. A Garden of Eden (GoE) pattern for A is a pattern that can only appear in GoE configurations for A. Lemma The following are equivalent: 1. A has a GoE configuration; 2. A has a GoE pattern. Corollary: determining whether a cellular automaton is surjective, is co-r.e. 35
Corollary: Conway s Game of Life is not surjective. Proof: The following 14 14 pattern is a GoE for Conway s Game of Life: Try it! 36
Preinjectivity A cellular automaton A is preinjective if it satisfies the following condition: for any two c 1, c 2 Q Zd, if {x Z d c 1 (x) c 2 (x)} is finite and nonempty, then F A (c 1 ) F A (c 2 ). This is a condition weaker than injectivity. If A has a quiescent state, this is the same as saying that A is injective on finite configurations 37
Cellular automata are not finite, but almost. Equivalent of surjectivity for cellular automata should be not injectivity, but almost. Theorem (Moore, 1962) If A is surjective, then it is preinjective. Theorem (Myhill, 1962) If A is preinjective, then it is surjective. 38
Corollary: if A is injective, then it is also surjective. (This is sometimes called Richardson s Lemma as well.) As a consequence, if we call CA the class of cellular automata, RCA the class of reversible cellular automata, PSCA the class of surjective, noninjective cellular automata, NCA the class of nonsurjective, noninjective cellular automata then we have CA = RCA PSCA NCA 39
An element of the class PSCA Wolfram s rule 90 is not injective. In fact, if c 0 (x) = 0 x Z ; c 1 (x) = 1 x Z then F 90 (c 0 ) = F 90 (c 1 ) = c 0. On the other hand, Wolfram s rule 90 is surjective. In fact, 1. for every a and k, the equation a xorx = k has a unique solution, and 2. for every b and k, the equation xxorb = k has a unique solution. Thus every configuration has exactly four predecessors for Wolfram s rule 90. (Can you see why?) 40
The invertibility problem Let C be a class of cellular automata. The invertibility problem for C states: given an element A of C, determine whether F A is invertible Saying that the invertibility problem for C is decidable, means that there exists an algorithm capable of stating the invertibility of the global dynamics described by an arbitrary element of C, only by looking at its local description. Thus, decidability of the invertibility problem is a strong requirement. 41
Let d-dca be the class of d-dimensional cellular automata. Theorem (Amoroso and Patt, 1972) The invertibility problem for 1-DCA is decidable. The proof of this result is somewhat complex, as Amoroso and Patt s algorithm checks, in the order: 1. whether A is surjective; 2. whether each state has the same number of preimages under f ; 3. whether A is injective and it is known that point 3 implies points 1 and 2. 42
Amoroso and Patt asked whether their techniques could be extended to greater dimensions. Theorem (Kari, 1990) The invertibility problem for 2-DCA is undecidable. Corollary: The invertibility problem for d-dca is undecidable for all d 2. Kari s proof involves a reduction from Hao Wang s Tiling Problem: given a collection of square tiles with colored edges, determine whether it can tile the whole plane so that adjacent edges always are the same color and it is known that is undecidable (Berger, 1966). 43
Lattice gases Structures on regular lattices, whose updating function is made of a propagation phase, with particles moving along the edges, and a collision phase, with particles interacting inside nodes. Origin: Fluid dynamics. Aim: approximate Navier-Stokes equations. 44
Example of lattice gas 1 HPP (Hardy, de Pazzis, Pomeau; 1976) Square grid. Up to four particles per cell. Collision rule: if exactly two particles coming from opposite directions: rotate of a right angle; else: proceed along original path. Pros: can reproduce macroscopical behavior. Cons: introduces spurious invariants. 45
Example of lattice gas 2 FHP (Frisch, Hasslacher, Pomeau; 1986) Triangular grid. Up to six particles per site. Probabilistic collision rule. FHP is immune to most of HPP s pathologies. 46
Cellular automata and lattice gases Every lattice gas is a cellular automaton. The invertibility problem for lattice gases is decidable. Every cellular automaton can be simulated by a lattice gas. Actually, this is was done in CAM8 and in SIMP until very recently. Not every cellular automaton can be rewritten as a lattice gas. (Toffoli, Capobianco and Mentrasti, 2006; in preparation.) Every reversible cellular automaton can be rewritten as a lattice gas. (Kari, 1996 for d 2; Durand-Lôse, 2001 for the general case.) 47
Conjecture (Toffoli, Capobianco and Mentrasti, 2006) Cellular automata that can be rewritten as lattice gases are precisely those in the classes RCA and NCA. That is: a cellular automaton can be rewritten as a lattice gas iff it is both injective and surjective, or neither. 48
Evolution of the species 1 The grid underlying a cellular automaton satisfies two constraints: 1. each node has a finite number of one-step neighbors, and 2. the shape of one-step neighborhood is the same for all nodes. This also happens with Cayley graphs of finitely generated groups. In this case, a natural action is defined (beware of order!) c g (h) = c(gh) h G so that a local map f : Q N Q still induces a global map (F(c)) g = f (c g N ) 49
Evolution of the species 2 Symbolic dynamics studies the properties of shift subspaces, i.e., closed, translation invariant subspaces of Q Z. This definition extends to subsets of Q G whatever G is. Cellular automata are called sliding block codes, and are seen mostly as transformations between shift subspaces. However, it is always possible to require F A (X) X. We can then define generalized cellular automata, whose phase spaces are shift subspaces X Q G. (Fiorenzi, 2000; Capobianco, 2004) 50
Evolution of the species 3 Given c 1, c 2 Q Z, we can consider the pseudodistance d(c 1, c 2 ) = sup n N {x Z x n, c 1 (x) c 2 (x)} 2n + 1 By identifying configurations having pseudodistance 0, we obtain a metrizable space. Cellular automata induce transformations of the quotient space, which can give information on the original cellular automaton. This can be done (with some caution) with more complicated groups in place of Z. (Formenti, 1998; Capobianco, 2006) 51
Cellular automata on the Web Cellular automata FAQ www.cafaq.com Ted Bach s SIMP pm.bu.edu/simp alpha/ Jörg R. Weimar s JCASim www.jweimar.de/jcasim/ Stephen Wolfram s articles www.stephenwolfram.com/publications/articles/ca/ Compendia T. Toffoli, N. Margolus, Invertible cellular automata: A review, Physica D 45 (1990), 229 253. J. Kari, Theory of cellular automata: A survey, Theor. Comp. Sci. 334 (2005), 3 33. 52
Thank you for your attention! 53