0% found this document useful (0 votes)
55 views16 pages

Cellular Automata: Jarkko Kari

This document provides an introduction to cellular automata. It defines cellular automata as discrete dynamical systems consisting of a regular grid of finite state automata that change states simultaneously based on a local update rule. Cellular automata are discrete in both space and time, homogeneous, and local in their interactions. They can model natural processes and perform computation. Conway's Game of Life is presented as a well-known example cellular automaton. The document outlines the basic definitions needed to describe cellular automata, including configuration, neighborhood, local update rule, and global transition function.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
55 views16 pages

Cellular Automata: Jarkko Kari

This document provides an introduction to cellular automata. It defines cellular automata as discrete dynamical systems consisting of a regular grid of finite state automata that change states simultaneously based on a local update rule. Cellular automata are discrete in both space and time, homogeneous, and local in their interactions. They can model natural processes and perform computation. Conway's Game of Life is presented as a well-known example cellular automaton. The document outlines the basic definitions needed to describe cellular automata, including configuration, neighborhood, local update rule, and global transition function.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

Cellular Automata

Jarkko Kari
Spring 2013

University of Turku

Preliminaries

1.1

Introduction

A cellular automaton is a discrete dynamical system that consists of a regular network


of finite state automata (cells) that change their states depending on the states of their
neighbors, according to a local update rule. All cells change their state simultaneously,
using the same update rule. The process is repeated at discrete time steps. It turns out that
amazingly simple update rules may produce extremely complex dynamics when applied in
this fashion. A well known example is the Game-of-life by John Conway. Cellular automata
are
discrete in both space and time,
homogeneous in space and time (same update rule at all cells at all times),
local in their interactions.
Many processes in nature are governed by local and homogeneous underlying rules, which
makes them amenable to modeling and simulation using cellular automata. For example,
fluid dynamics can be modeled by moving point particles in a regular lattice, and the local
update rule is designed to simulate particle collisions. Some of the most extensively investigated concepts in cellular automata theory such as reversibility and conservation laws are
motivated by physics.
Cellular automata are also mathematical models for massively parallel computation. Simple update rules can make the cellular automaton computationally universal, that is, capable
of performing arbitrary computation tasks. Above mentioned Game-of-life is a good example. This point of view raises interesting questions concerning the computational aspects of
cellular automata.
A combination of the two viewpoints above (computational universality and modeling
natural processes) have made cellular automata a useful theoretical tool in the study of
computation in nature and the physical aspects and physical limits of computation.
These notes cover the basic theory of cellular automata. The most extensively used mathematical tool is topology. It namely turns out to be a very natural and fruitful approach to
consider cellular automata as continuous functions on a compact metric space. This makes
cellular automata theory part of the field of topological dynamics, or more specifically, symbolic dynamics. Since only elementary topology is needed, no prior mathematics courses in
topology are required: the notes contain a review of all the topology and symbolic dynamics
that is needed.
Another tool that we use is the theory of computation and computability. We are often
interested in algorithmic questions related to cellular automata, and in many cases these
questions turn out to be undecidable. A short review of computation theory, including
universality and (un)decidability is included to help students who have no familiarity with
this topic.
1

We start the notes with basic definitions and several examples of interesting cellular automata. We then continue with classical results related to injectivity and surjectivity. Chapters that follow (not necessarily in this order) discuss linear (additive) cellular automata,
reversibility, limit sets, classifications of cellular automata, universality, conservation laws in
cellular automata, topological dynamics of cellular automata, algorithmic questions, etc.

1.2

First example: Game-of-life

We start with a well-known example, Game-of-life, invented by John Conway in 1970. It is


a cellular automaton that consists of an infinite grid of square cells like an infinite graph
paper where each square is colored white or black. The color is called the state of the
cell. We say that a black cell is alive while a white cell is not. A coloring of the entire grid
is called a configuration of Game-of-life.
There is a simple local update rule according to which the cells change their states. The
new state of a cell only depends on the current states of the cell itself and its eight nearest
neighbors:
A living cell stays alive if and only if there are exactly two or three living cells among
the eight surrounding cells. Fewer than two living neighbors causes death by isolation,
more than three living neighbors by overcrowding.
A non-living cell becomes alive if it has precisely three living neighbors each organism
has three parents!
All cells use the same update rule, and all cells change their states simultaneously. This
changes the coloring of the grid, i.e. the configuration changes into a new one. The process
is then repeated over and over again, which creates a time evolution of the system. Figure 1
shows an example of five consecutive generations of cells.

Figure 1: Five steps of a time evolution in Conways Game-of-life.


Game-of-life is remarkable because the local update rule is extremely simple, but the longtime behavior of configurations is unpredictable. In the following the term finite pattern
refers to a configuration in which the number of living cells is finite. Conway showed that it
is undecidable if a given finite pattern eventually dies completely out. In other words, there
is no (and never will be any as its existence is a logical contradiction) a computer program

that takes as input a finite pattern and always correctly determines if the input pattern
eventually dies out.
Over the years Game-of-life enthusiasts have compiled a vast library of patterns with
various behaviors. The following terminology is used for various categories of objects:
still life: a fixed point pattern. The update rule keeps each cell unchanged. The
simplest non-empty still life is the block, a two-by-two block of living cells. Another
still life is shown in Figure 2(a).
oscillator : temporally periodic pattern. The update rule may change the pattern but
after some number of steps the original pattern reappears in the same location and
orientation. Still life is a special type of oscillator. The smallest oscillator is the blinker
consisting of three living cells in a line. Another oscillator with period two is shown in
Figure 2(b).
spaceship: a pattern that after some number of steps reappears, possibly in a different
location of the grid. A particular spaceship called glider is shown in Figure 2(c). An
oscillator is a stationary spaceship that does not move.
gun: a finite pattern that like an oscillator periodically returns back to the
initial state, but in addition, emits spaceships. A glider gun emitting gliders is shown
in Figure 2(d).
Objects from different categories emerge when Game-of-life is started in a random initial
configuration. During the evolution the objects interact with each other through collisions
with gliders and other moving structures. Collisions create new objects which in turn participate in interactions, leading to extraordinary complexity.

1.3

Basic Definitions

This chapter introduces the most basic definitions and notations. Throughout these notes,
abbreviation CA refers to cellular automata (plural) or cellular automaton (singular).
Let d be a positive integer. A d-dimensional cellular space is Zd . Elements of Zd are
called cells. Let S be a finite state set. Elements of S are called states. A configuration of a
d-dimensional CA with state set S is a function
c : Zd S
that assigns a state to each cell. The state of cell ~n Zd is c(~n). A configuration should be
understood as an instantaneous description, or a snapshot, of all the states in the system of
cells at some moment of time. Most frequently we consider one- and two-dimensional spaces,
in which cases the cells form a line indexed by Z or an infinite checker board indexed by Z2 ,
respectively.

(a)

(b)

(c)

(d)

Figure 2: Sample Game of Life objects: (a) still life, (b) oscillator, (c) glider, (d) glider gun.
We adapt the common mathematical notation that the set of functions from set A into
d
set B is denoted by B A . So the set of all configurations is S Z . In the one-dimensional case
d = 1 the set of configurations is S Z , the set of functions Z S.
A d-dimensional neighborhood vector (of size m) is a tuple
N = (~n1 , ~n2 , . . . , ~nm )

(1)

where each ~ni Zd and ~ni 6= ~nj for all i 6= j. The elements ~ni specify the relative locations
of the neighbors of each cell: Cell ~n Zd has m neighbors ~n + ~ni for i = 1, 2, . . . , m.
The local update rule (or the local rule, the update rule, or simply the rule) of a CA with
state set S and size m neighborhood is a function
f : S m S
that specifies the new state of each cell based on the old states of its neighbors. If the
neighbors of a cell have states s1 , s2 , . . . , sm then the new state of the cell is f (s1 , s2 , . . . , sm ).
4

In cellular automata all cells use the same rule, and the rule is applied at all cells simultaneously. This causes a global change in the configuration: Configuration c is changed into
configuration c0 where for all ~n Zd
c0 (~n) = f [c(~n + ~n1 ), c(~n + ~n2 ), . . . , c(~n + ~nm )].

(2)

The transformation c 7 c0 is the global transition function of the CA. It is a function


d

G : S Z S Z .
Function G is our main object of study. Typically, function G is iterated, i.e. applied
repeatedly, which produces a time evolution
c 7 G(c) 7 G2 (c) 7 G3 (c) 7 . . .
of the system. Here c is the initial configuration of the evolution, and the sequence
orb(c) = c, G(c), G2 (c), G3 (c), . . .
is the orbit of c. Time refers to the number of applications of G performed: Each application
of G takes one time step, so Gt (c) is the configuration at time t, for all t = 0, 1, 2, . . ..
Sometimes we also consider two-way infinite orbits, i.e. sequences
. . . , c2 , c1 , c0 , c1 , c2 , . . .
of configurations where G(ci ) = ci+1 for all i Z. Here time t flows through all integers and
there is no initial configuration.
In summary: To specify a CA one needs to specify the following items (some of which may
be clear from the context):
the dimension d Z+ ,
the finite state set S,
the neighborhood vector N = (~n1 , ~n2 , . . . , ~nm ), and
the local update rule f : S m S.
We therefore formally define the corresponding CA to be the 4-tuple A = (d, S, N, f ). The
global transition function determined by these items according to (2) will be denoted by
G[A], or simply by G when the CA A is clear from the context. Any function G that is the
transition function of some CA is called a CA function.
We usually identify a CA function G with the CA that determines it in the sense that
we talk about cellular automaton G. Strictly speaking, however, the same function G is
determined by different cellular automata (4-tuples). We say that two CA A and B are
equivalent if G[A] = G[B]. Clearly equivalent CA have the same dimension d and state
5

set S but they may differ in their neighborhood vectors. However, we see in the following
section that there is a unique equivalent CA whose neighborhood vector is minimal in the
sense that it is included in the neighborhoods of all equivalent CA. Other equivalent CA can
only have additional dummy neighbors that have no influence on the next state.
Example 1. (xor ) Let d = 1, S = {0, 1}, N = (0, 1) and f : {0, 1}2 {0, 1} be
f (a, b) = a + b

(mod 2).

The cells form a line, indexed by Z. Each cell changes its state by adding the state of its
right neighbor to its own old state modulo 2. This is known as the exclusive or (xor) logic
operation.
Consider, for example, the initial configuration c0 where c0 (0) = 1 and c0 (i) = 0 for
all i 6= 0, i.e. a single cell is in state 1. Then c1 = G(c0 ) has c1 (0) = c1 (1) = 1 and
c2 (i) = 0 for all i 6= 1, 0. Continuing likewise, we get the time evolution c2 = G(c1 ),
c3 = G(c2 ) etc. Figure 3 shows a diagram where we have drawn configurations as horizontal
rows of states and depicted values 0 and 1 by white and black squares as well typically do
in our examples. The topmost row shows the initial configuration c0 , and the following rows
represent consecutive elements of the orbit orb(c0 ). Time increases downwards.

Time

Figure 3: The space-time diagram of the xor CA of Example 1 starting from an initial
configuration with a single cell in state 1.

A space-time diagram is a pictorial representation of an orbit, similar to the one shown in


Example 1 above. In the case of one-dimensional CA configurations are drawn as horizontal
lines of colors, each state represented by its own color. Configuration G(c) is drawn under c,
so time flows downwards. The topmost row represents the initial configuration. The spacetime diagram of the orbit of c hence fills the lower half plane. In contrast, the space-time
diagrams associated with two-way infinite orbits fill the whole plane since there is no initial
time.
6

More generally, a space-time diagram of a d-dimensional CA is a (d + 1)-dimensional


drawing where d dimensions represent space and the additional dimension is used for
time. Time gets values in N or Z depending on whether the diagram is for an orbit with
an initial configuration or for a two-way infinite orbit. In the first case, the diagram is an
d
d
element of S Z N , and in the second case it belongs to S Z Z .
Following terminology is used: A configuration c is
a fixed point of G if G(c) = c.
(temporally) periodic if Gt (c) = c for some t Z+ . Any t satisfying Gt (c) = c is called
a period of c and the smallest such t is the least period of c.
eventually fixed if there is n N such that Gn+1 (c) = Gn (c), that is, Gn (c) is a fixed
point for some n.
eventually (temporally) periodic if there is n N and t Z+ such that Gn+t (c) = Gn (c),
that is, Gn (c) is periodic for some n.
Analogous terminology is used for orbits. A one- or two-way infinite orbit is a fixed
point orbit if all configurations it contains are fixed points (i.e. the orbit consists of copies
of the same fixed point configuration). It is periodic if it only contains temporally periodic
configurations, it is eventually fixed if it contains some fixed point configuration and it
is eventually periodic if it contains a temporally periodic configuration. See Figure 4 for
illustrations of these concepts on two-way infinite orbits. The figure shows parts of phase
spaces of some CA. A phase space is the infinite directed graph whose vertices are the
configurations and from each configuration c there is exactly one outgoing edge leading to
G(c). Note that the phase space has uncountably many vertices, so we always show just a
small portion of it, e.g. to plot some orbits as in Figure 4.

(a)

(b)

(c)

(d)

Figure 4: (a) a fixed point, (b) a periodic orbit, (c) an eventually fixed orbit and (d) an
eventually periodic orbit.
As a final observation of this section we state the following simple fact:
Proposition 1 If G and H are CA functions, so is their composition G H.
7

1.4

Neighborhoods

Let N = (~n1 , ~n2 , . . . , ~nm ) be a d-dimensional neighborhood vector. For any ~n Zd we denote
N (~n) = (~n + ~n1 , ~n + ~n2 , . . . , ~n + ~nm ),
and for any K Zd we denote
N (K) = {~n + ~ni | ~n K and i = 1, 2, . . . , m }.
In other words, N (~n) is the ordered sequence of the neighbors of cell ~n, while N (K) is
the unordered set of neighbors of cells in K. In particular, N ({~n}) is the unordered set
of neighbors of cell ~n. Clearly N = N (~0), and N ({~0}) is the unordered set that contains
the elements of the neighborhood vector N . The order of the elements in N is essentially
irrelevant: it only matters as the order in which the m input values are given in the local
rule f : S m S. So when specifying a CA it is enough to give the unordered version
N ({~0}) of N , as long as we make the role of different neighbors clear in the description of
the local rule.
In two-dimensional spaces the von Neumann- and the Moore- neighborhoods shown in
Figure 5 are often used. Game-of-life has the Moore-neighborhood. We generalize the
Moore-neighborhood and call the d-dimensional neighborhood Mrd consisting of all
(k1 , k2 , . . . , kd ) Zd where |ki | r for all i = 1, 2, . . . , d
the radius-r neighborhood. It contains (2r + 1)d elements. We also generalize the von
Neumann -neighborhood and call the d-dimensional neighborhood Vrd consisting of
d

(k1 , k2 , . . . , kd ) Z where

d
X

|ki | r

i=1

the radius-r von Neumann -neighborhood. The classical von Neumann and Moore neighborhoods of Figure 5 are then V12 and M12 . Note that in the one-dimensional case Vr1 = Mr1 .

(a)

(b)

Figure 5: The (a) von Neumann and (b) Moore neighbors of cell c.
8

The following, small neighborhoods will be sometimes used: The radius- 12 neighborhood
consists of all (k1 , k2 , . . . , kd ) Zd where each ki {0, 1}, and the radius- 21 von Neumann
-neighborhood consists of all (k1 , k2 , . . . , kd ) Zd where at most one ki is 1 and all others
are 0. In the one-dimensional case these both consist of the cell and its immediate right
neighbor. The xor CA of Example 1 has the radius- 12 neighborhood.
Consider a CA with neighborhood vector N = (~n1 , ~n2 , . . . , ~nm ) and local rule f : S m
S. We call ~nj a dummy neighbor if f (s1 , . . . , sm ) = f (t1 , . . . , tm ) whenever si = ti for all
i 6= j. This means that the the jth neighbor of a cell has no effect on the next state of that
cell, and hence ~nj can be removed from the neighborhood vector. We obtain an equivalent
CA with m 1 neighbors. Let us say a CA has minimal neighborhood if it has no dummy
neighbors. By removing all dummy neighbors from any CA we obtain an equivalent CA that
has minimal neighborhood. This minimal neighborhood CA is unique:
Proposition 2 If A and B are equivalent CA and have minimal neighborhoods then A = B
(up to reordering the neighbors in the neighborhood vector).
Proof. It is enough to show that the neighborhood vectors of A and B contain the same
elements. Let ~n be an arbitrary element of the neighborhood vector of A, that is, cell ~n is a
neighbor of cell ~0 in A. Because A has no dummy neighbors there exist two configurations
c and e such that c(~n) 6= e(~n), c(~k) = e(~k) for all ~k 6= ~n and c0 (~0) 6= e0 (~0) where we have
denoted c0 = G(c) and e0 = G(e) and G is the global transition function of A. Since A and
B are equivalent, G is also the transition function of B. This means that ~n has to be a
neighbor of ~0 also in B, as otherwise we would have c0 (~0) = e0 (~0).
In the same way, every neighbor in B is also a neighbor in A.

1.5

Elementary CA

Elementary CA are one-dimensional cellular automata with two states and radius-1 neighborhood: d = 1, S = {0, 1}, N = (1, 0, 1) and f : S 3 S. They differ from each other
only in the choice of the local rule f . There are 256 elementary CA because the number of
different local rules S 3 S is 28 = 256. Note, however, that some of the 256 elementary
rules are identical up to renaming the states or reversing right and left, so the number of
essentially different elementary rules is smaller, only 88.
Elementary rules were extensively studied and empirically classified by S.Wolfram in the
1980s. He introduced a naming scheme that has since become standard: Each elementary
rule is specified by an eight bit sequence
f (111) f (110) f (101) f (100) f (011) f (010) f (001) f (000)
where f is the local update rule of the CA. The bit sequence is the binary expansion of an
integer in the interval 0 . . . 255, called the Wolfram number of the CA.

Example 2. The 8 bit binary expansion of the decimal number 102 is 01100110 so the
elementary CA with Wolfram number 102 has the local update rule
f (111) = 0,
f (011) = 0,

f (110) = 1,
f (010) = 1,

f (101) = 1,
f (001) = 1,

f (100) = 0,
f (000) = 0,

This CA is equivalent to the xor CA of Example 1.

Example 3.(rule 110 ) The 8 bit binary expansion of the decimal number 110 is 01101110
so the elementary CA with Wolfram number 110 has the local update rule
f (111) = 0,
f (011) = 1,

f (110) = 1,
f (010) = 1,

f (101) = 1,
f (001) = 1,

f (100) = 0,
f (000) = 0,

This CA has become known since it was recently proved to be computationally universal.
The cover page of these notes contains a snapshot of the space-time diagram of rule 110
started from a random initial configuration.

Wolframs numbering scheme is easily generalized to larger neighborhoods and state sets.
One-dimensional, radius-r CA with k states is identified by a number that contains k 2r+1
base-k digits.
S.Wolfram experimented in the 80s with elementary CA, and based on empirical observations of their behavior on random initial configurations he classified them into four classes.
These are known as Wolfram classes of CA. The definitions are not mathematically rigorous, and more precise classifications (which well discuss later) have since been proposed.
Wolfram defined the classes as follows:
(W1) Almost all initial configurations lead to the same uniform fixed point configuration,
(W2) Almost all initial configurations lead to a periodically repeating configuration,
(W3) Almost all initial configurations lead to essentially random looking behavior,
(W4) Localized structures with complex interactions emerge.
Figure 6 shows examples of typical space-time diagrams in each class. Wolfram conjectured
that class (W4) cellular automata are computationally universal. In addition to rule 110
also elementary CA 54 is in class (W4).

1.6

Finite configurations
d

Let s S be an arbitrary state. The s-support of configuration c S Z is the set


supp s (c) = {~n Zd | c(~n) 6= s}

10

(class 1: rule 160)

(class 2: rule 108)

(class 3: rule 126)

(class 4: rule 110)

Figure 6: Space-time diagrams of sample cellular automata from each of the four Wolfram
classes.
of cells not in state s. Configuration c is called s-finite if supp s (c) is a finite set, that is, all
but a finite number of cells are in state s. Let us denote
d

Fs (d, S) = {c S Z | c is s-finite }.
d

Note that Fs (d, S) is countably infinite while S Z is uncountable.


Sometimes one state q Q is identified as the quiescent state of the CA. The quiescent
state q must satisfy
f (q, q, . . . , q) = q,
that is, a cell whose neighbors are all quiescent becomes quiescent. If a quiescent state q is
identified and fixed then the q-support of c is called simply the support of c and denoted
by supp(c). Moreover, q-finite configurations are called simply finite, and the set of finite
d
configurations in S Z is denoted by F(d, S), or simply by F when d and S are clear from
the context. The configuration in which every cell is in state q is called the quiescent
configuration.
11

Clearly, if c is s-finite then G(c) is t-finite where t = f (s, s . . . , s). In particular, in the
presence of quiescent state q, finite configurations are mapped into finite configurations. In
this case we denote by
GF : F F
the restriction of G on finite configurations.
In Example 1 (xor CA), we can name state 0 quiescent, in which case the space-time
diagram in Figure 3 depicts a time-evolution according to GF . In Game-of-life (Section 1.2)
the white square (no life) is taken as the quiescent state.

1.7

Periodic configurations

Let ~r Zd . Assuming a fixed and known state set S, the translation ~r determined by ~r
is the global transition function of the CA whose neighborhood contains only ~r and whose
local rule is the identity function. In other words,
d

~r : S Z S Z
d

maps c 7 c0 where c0 (~n) = c(~n + ~r) for all ~n S Z . It is obvious that for all ~r, ~s Zd and
k Z we have
~r ~s = ~r+~s , and
(3)
~rk = k~r .
For each dimension i = 1, 2, . . . , d we call the translation by one cell down in dimension
i a shift and denote it by i . More precisely, if we denote the ith coordinate unit vector
~ei = (0, . . . , 0, 1, 0, . . . 0),
then i = ~ei . It follows from (3) that every translation is a composition of shifts. In the
one-dimensional case the only shift 1 is called the left shift and we denote it simply by .
The following proposition states an elementary but important property of cellular automata, based on the fact that all cells use the same local update rule:
Proposition 3 Let G be an arbitrary CA function and a translation. Functions G and
commute, i.e., G = G:
d

G - Zd
S

SZ

Zd

G - Zd
S

12

Proof. Let be the translation determined by ~r Zd , and let G be the transition function
d
of CA A = (d, S, N, f ) where N is as in (1). For arbitrary c S Z and ~n Zd we have
(G(c))(~n) = G(c)(~n + ~r)
= f [c(~n + ~r + ~n1 ), c(~n + ~r + ~n2 ), . . . , c(~n + ~r + ~nm )]
= f [ (c)(~n + ~n1 ), (c)(~n + ~n2 ), . . . , (c)(~n + ~nm )]
= G( (c))(~n),
so (G(c)) = G( (c)) and, furthermore, G = G.

A configuration c S Z is called ~r-periodic if


c(~n) = c(~n + ~r) for all ~n Zd .
Another way to say this is c = ~r (c), i.e., c is invariant under the translation by ~r. A
configuration is called spatially periodic if it is ~r-periodic for some ~r 6= ~0.
A d-dimensional configuration is totally periodic if it is ~ri -periodic for some linearly
independent ~r1 , ~r2 , . . . , ~rd Zd . It follows easily that a totally periodic configuration is
ik -periodic for some k Z+ and all i = 1, 2, . . . , d. In other words, a totally periodic
configuration consists of a hypercubic pattern(D, p) that is repeated periodically in each of
the d-dimensions of the space. Let us denote by P(d, S) the set of totally periodic elements
d
of S Z , or if d and S are clear from the context we may simply denote P instead of P(d, S).
Set P is countably infinite.
In the one-dimensional case there is no difference between spatial periodicity and total
periodicity. In two- and higher dimensional spaces there is a difference. Figure 7(a) shows a
two-dimensional configuration (infinite horizontal stripe) that is ~e1 -periodic but not totally
periodic. Figure 7(b) shows a totally periodic configuration (infinite checker board).

(a)

(b)

Figure 7: (a) A spatially periodic configuration that is not totally periodic, and (b) a totally
periodic configuration.
Let G be a CA function and suppose configuration c is ~r-periodic. According to Proposition 3
~r (G(c)) = G(~r (c)) = G(c)
13

so also G(c) is ~r-periodic. In particular, if c is totally periodic then also G(c) is totally
periodic. We denote by
GP : P P
the restriction of G on totally periodic configurations.
Finite configurations and periodic configurations are used in effective simulations of cellular automata on computers. Periodic configurations are often referred to as the periodic
boundary conditions on a finite cellular array. For example, in the case d = 2 this is equivalent to running the CA on a torus that is obtained by gluing together the opposite sides
of a rectangle. One should, however, keep in mind that the behavior of a CA can be quite
different on finite, periodic and general configurations, so experiments done with periodic
boundary conditions may sometimes be misleading.
One final remark: Periodicity of a configuration defined in this section refers to spatial
periodicity. This should not be confused with temporal periodicity of a configuration defined
at the end of Section 1.3, that is, the property that the configuration repeats itself under
the CA evolution.

1.8

Compactness principle

Topology plays an important role in the theory of cellular automata. The configuration space
d
S Z can be given a compact topology under which all CA functions G are continuous. We
delay the detailed discussion of this. Instead we prove two statements that capture essential
features of the topological approach.
d
Consider an infinite sequence c1 , c2 , . . . of configurations, each ci S Z . We say that the
d
sequence converges and c S Z is its limit if for every ~n Zd there exists some k Z+ such
that ci (~n) = c(~n) for all i k. In other words: if we look at an arbitrary cell and browse
through a converging sequence c1 , c2 , . . . then from some moment on we always see the same
state. It is obvious that if a limit exists it is unique, and we denote this limit by
lim ci .

A subsequence of c1 , c2 , . . . is another sequence ci1 , ci2 , . . . where i1 < i2 < . . .. A subsequence is hence obtained by picking infinitely many elements of the sequence, preserving
their relative order. Obviously every subsequence of a converging sequence also converges
and has the same limit.
The first proposition states the compactness of the configuration space:
Proposition 4 Every sequence of configurations has a converging subsequence.
d

Proof. Let c1 , c2 , . . . be an arbitrary sequence, ci S Z . Let ~r1 , ~r2 , . . . be an enumeration of


elements of Zd . Let us choose indices i0 < i1 < i2 < i3 < . . . recursively as follows: i0 Z+
is arbitrary. Suppose then that ik1 has been chosen and we want to choose ik for k 1.
We choose ik to be the smallest integer that satisfies the following three conditions:
14

(1k ) ik > ik1 ,


(2k ) cik (~rj ) = cik1 (~rj ) for all j = 1, 2, . . . k 1.
(3k ) There exist infinitely many indices i such that ci (~rj ) = cik (~rj ) for all j = 1, 2, . . . k.
Numbers ik that satisfy (1k )(3k ) always exist for the following reasons: Because condition
(3k1 ) was satisfied when ik1 was chosen, we have infinitely many choices of ik that satisfy
(2k ). Set S k is finite so there is a finite number of combinations of states that can appear in
cells ~r1 , . . . , ~rk . Consequently, among the infinitely many indices ik that satisfy (2k ) there are
infinitely many choices that also satisfy (3k ). Some of them hence satisfy all requirements
(1k )(3k ).
It follows from properties (2k ) that ci1 , ci2 , . . . converges: For an arbitrary ~rk Zd all cij
for j k have the same state in cell ~rk .

Note: The proof is essentially the same as the proof of weak Konigs lemma which states
that an infinite binary tree contains an infinite path. The proof did not require the axiom
of choice. (The same result could also be briefly proved using Tychonoffs theorem, but that
is equivalent to the axiom of choice.)
Our next proposition states a continuity property of CA functions:
Proposition 5 Let G be a CA function and c1 , c2 , . . . a converging sequence of configurations. Then also the sequence G(c1 ), G(c2 ), . . . converges and
lim G(ci ) = G(c)

where
c = lim ci .
i

Proof. Let G be the transition function of A = (d, S, N, f ) where N is as in (1). Let ~n Zd


be arbitrary. Because c = limi ci we have that for every j = 1, 2, . . . , m there exists
kj Z+ such that
ci (~n + n~j ) = c(~n + n~j ) for all i kj .
Let k = max{k1 , k2 , . . . , km }. Then if i k we have
G(ci )(~n) = f [ci (~n + n~1 ), ci (~n + n~2 ), . . . , ci (~n + n~m )]
= f [c(~n + n~1 ), c(~n + n~2 ), . . . , c(~n + n~m )]
= G(c)(~n).
Because ~n Zd was arbitrary, we have that G(c1 ), G(c2 ), . . . converges to G(c).

15

You might also like