Reykjav´ ık, August 23, 2006
Cellular Automata: Overview and classical results
Silvio Capobianco H´ ask´
- linn ´
ı Reykjav´ ık, Silvio@ru.is Universit` a degli Studi di Roma “La Sapienza”, capobian@mat.uniroma1.it
1
Cellular Automata: Overview and classical results Silvio Capobianco - - PowerPoint PPT Presentation
Reykjav k, August 23, 2006 Cellular Automata: Overview and classical results Silvio Capobianco k, Silvio@ru.is H ask olinn Reykjav a degli Studi di Roma La Sapienza, capobian@mat.uniroma1.it Universit` 1
Reykjav´ ık, August 23, 2006
Silvio Capobianco H´ ask´
ı Reykjav´ ık, Silvio@ru.is Universit` a 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
3
Literature
(1962), 17–33.
system”, Math. Syst. Th. 3 (1969), 320–375.
(1972), 373–388.
parallel maps for tessellation structures”, J. Comp. Syst. Sci. 6 (1972), 448–464.
(1990), 379–385.
4
History
mechanical model of self-reproduction
the Garden of Eden problem
shift dynamical system
d-dimensional cellular automata
lattice gas cellular automata
the invertibility problem
5
The original form John von Neumann’s model of self reproduction, 1950s
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:
Special neighborhood indexes are:
i=1 |xi| ≤ 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:
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:
1 if
x∈M\{0} αx = 3,
1 if
x∈M\{0} αx = 2 and α0 = 1,
This is Conway’s Game of Life.
22
From local to global An element of QZd is called a configuration. The value of c ∈ QZd at x ∈ Zd is indicated as cx or c(x). A pattern is a “chunk” of configuration having finite size. The map FA : QZd → QZd defined by
(FA(c))x = f(cx+n1, . . . , cx+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 q0, and called the quiescent state. A configuration is finite if only a finite number of cells are nonquiescent. If c is finite, then FA(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.
– CAM6 (Toffoli and Margolus, ca. 1985; expansion card for PC) – CAM8 (Toffoli and Margolus, ca. 1990; external device for SparcStation)
– 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
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
Observe that QZd , with the product topology, is compact by Tychonoff’s Theorem. Moreover, putting
(x1, . . . , xd) = max{|x1|, . . . , |xd|}
the product topology is induced by the distance
d(c1, c2) = 2− min{x|(c1)x=(c2)x}
i.e., “near” means “equal on a large neighborhood of the origin”.
27
Theorem (Hedlund, 1969) Let F : QZd → QZd . The following are equivalent:
i.e., the transformations of QZd
cx(y) = c(x + y) ∀y ∈ Zd
Let A = d, Q, N, f be a cellular automaton. By Hedlund’s Theorem,
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:
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,
and
j=0 2jf(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
1 1 1 1
α1
1 1 1 1
f(α−1, α0, α1)
1 1 1 1
30
One after another Composition is well defined for cellular automata of same dimension and set of states.
f(α) = f2
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
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:
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
FA(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:
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 c1, c2 ∈ QZd , if {x ∈ Zd|c1(x) = c2(x)} is finite and nonempty, then FA(c1) = FA(c2). 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
then we have
CA = RCA ⊔ PSCA ⊔ NCA
39
An element of the class PSCA Wolfram’s rule 90 is not injective. In fact, if
c0(x) = 0 ∀x ∈ Z ; c1(x) = 1 ∀x ∈ Z
then F90(c0) = F90(c1) = c0. On the other hand, Wolfram’s rule 90 is surjective. In fact,
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 FA 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:
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
Origin: Fluid dynamics. Aim: approximate Navier-Stokes’ equations.
44
Example of lattice gas—1 HPP (Hardy, de Pazzis, Pomeau; 1976)
– 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)
FHP is immune to most of HPP’s pathologies.
46
Cellular automata and lattice gases
Actually, this is was done in CAM8—and in SIMP until very recently.
(Toffoli, Capobianco and Mentrasti, 2006; in preparation.)
(Kari, 1996 for d ≤ 2; Durand-Lˆ
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:
This also happens with Cayley graphs of finitely generated groups. In this case, a natural action is defined (beware of order!)
cg(h) = c(gh) ∀h ∈ G
so that a local map f : QN → Q still induces a global map
(F(c))g = f (cg|N )
49
Evolution of the species—2 Symbolic dynamics studies the properties of shift subspaces, i.e., closed, translation invariant subspaces of QZ. This definition extends to subsets of QG 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 FA(X) ⊆ X. We can then define generalized cellular automata, whose phase spaces are shift subspaces X ⊆ QG. (Fiorenzi, 2000; Capobianco, 2004)
50
Evolution of the species—3 Given c1, c2 ∈ QZ, we can consider the pseudodistance
d(c1, c2) = sup
n∈N
|{x ∈ Z | |x| ≤ n, c1(x) = c2(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
www.stephenwolfram.com/publications/articles/ca/
Compendia
(1990), 229–253.
3–33.
52
53