arXiv reader

Reliable Cellular Automata with Self-Organization

Peter Gacs

arXiv
math/0003117v2 · PDF · 25 January 2024
Categories
math.PR, cs.DC
Journal
J. of Stat. Phys. vol.103 (2001), no. 1/2, 45-267
DOI
10.1023/A:1004823720305
Licence
CC BY 4.0 The site shows the text.

Abstract

In a probabilistic cellular automaton in which all local transitions have positive probability, the problem of keeping a bit of information indefinitely is nontrivial, even in an infinite automaton. Still, there is a solution in 2 dimensions, and this solution can be used to construct a simple 3-dimensional discrete-time universal fault-tolerant cellular automaton. This technique does not help much to solve the following problems: remembering a bit of information in 1 dimension; computing in dimensions lower than 3; computing in any dimension with non-synchronized transitions. Our more complex technique organizes the cells in blocks that perform a reliable simulation of a second (generalized) cellular automaton. The cells of the latter automaton are also organized in blocks, simulating even more reliably a third automaton, etc. Since all this (a possibly infinite hierarchy) is organized in “software”, it must be under repair all the time from damage caused by errors. A large part of the problem is essentially self-stabilization recovering from a mess of arbitrary size and content. The present paper constructs an asynchronous one-dimensional fault-tolerant cellular automaton, with the further feature of “self-organization”. The latter means that the initial configuration does not have to encode an infinite hierarchy – this will be built up over time. This is a corrected and strengthened version of the journal paper of 2001.

Items 293

Remark

Remark 1.1

1OJM

A three-dimensional fault-tolerant cellular automaton cannot be built to arbitrary size in the physical space. Indeed, there will be an (inherently irreversible) error-correcting operation on the average in every constant number of steps in each cell. This will produce a steady flow of heat from each cell that needs therefore a separate escape route for each cell.

Proof

Proof (method simplification)

6M5N

Several methods have emerged that help managing the complexity of a large construction but the following two are the most important.

  • A number of “interface” concepts is introduced (generalized simulation, generalized cellular automaton) helping to separate the levels of the infinite hierarchy, and making it possible to speak meaningfully of a single pair of adjacent levels.

  • Though the construction is large, its problems are presented one at a time. For example, the messiest part of the self-stabilization is the so-called Attribution Lemma, showing how after a while all cells can be attributed to some large organized group (colony), and thus no “debris” is in the way of the creation of new colonies. This lemma relies mainly on the Freeze and Decay rules, and will be proved before introducing many other major rules. Other parts of the construction that are not possible to ignore are used only through “interface conditions” (specifications).

We believe that the new result and the new method of presentation will serve as a firm basis for other new results. An example of a problem likely to yield to the new framework is the growth rate of the relaxation time as a function of the size of a finite cellular automaton. At present, the relaxation time of all known cellular automata either seems to be bounded (ergodic case) or grows exponentially. We believe that our constructions will yield examples for other, intermediate growth rates.

Notation

Notation 2.1

Z7NP

Let \mathbb{R} be the set of real numbers, and \mathbb{Z}_{m}.cap.z@\mathbb{Z}_{m}.))) the set of remainders modulo m. For m=\infty, this is the set \mathbb{Z} of integers.

We will use the notation

\begin{aligned} f(n)\stackrel{{}_*}{<} g(n) \end{aligned}

for what usually is written as f(n)=O(g(n)): that is for the fact that f(n)\le c g(n) for some constant c. We write f(n)\stackrel{{}_*}{=} g(n) if f(n)\stackrel{{}_*}{<} g(n) and g(n)\le f(n).

The standard mathematical notation for open intervals and for pairs is the same; we hope that the context will make the meaning always clear. We will use the same notation for intervals of integers as for those of real numbers: the context will make it clear, whether [a,b] or [a,b]\cap \mathbb{Z} is understood. Given a set A of space or space-time and a real number c, we write

c A = \mathopen\{\verythinmathskipcv : v\in A\mskip 1mu\mathclose\},

and \overline{A} for its closure: for example, \overline{(a,b]}=[a,b]. Given two space-time sets A,B, we denote

\begin{aligned} A+B = \mathopen\{\verythinmathskipa+b : a\in A,b\in B\mskip 1mu\mathclose\}. \end{aligned}

Some lists of assertions are denoted by (a), (b), \dots and some by (1), (2), \dots. The attempted convention is that for a list properties that all hold or are required (conjunction) the items are labeled with (a),(b), \dots while if the list is a list of several possible cases (disjunction) then the items are labeled with (1), (2), \dots.

Maxima and minima will sometimes be denoted by \vee and \wedge"+@\vee,\wedge.))). We will write \log\log.))) for \log_{2}. For two strings u,v, we will denote by "+@\sqcup.)))

u\sqcup v

their concatenation.

Used by Proof
Definition

Definition 2.2 (Space and states)

K7CU

The set {\Lambda}.cap@{\Lambda}.))) of sites has the form \mathbb{Z}_{m} for finite or infinite m. This will mean that in the finite case, we take periodic boundary conditions. In a space-time vector (x,t), we will always write the space coordinate first. For a space-time set E, we will denote its space- and time projections by .greek@\boldsymbol{\pi}_{\text{s}}, \boldsymbol{\pi}_{\text{t}}.)))

\boldsymbol{\pi}_{\text{s}} E, \boldsymbol{\pi}_{\text{t}} E

respectively. We will have a finite set {\mathbb{S}}.cap.s@{\mathbb{S}}.))) of states, the potential states of each site. A configuration is a function .greek@\xi(x).)))

\xi(x)

for x\in{\Lambda}. Here, \xi(x) is the state of site x.

Definition

Definition 2.3 (Space-time)

APZ6

The time of work of our cellular automata will be the interval \left[0,\infty\right). Our space-time is given by

{\Lambda}\times\left[0,\infty\right).

A history is a space-time function \eta(x,t).greek.func@\eta(x,t).))) which for each t defines a configuration. If in a history \eta we have \eta(x,v)=s_{2} and \eta(x,t)=s_{1}\ne s_{2} for all t<v sufficiently close to v then we can say that there was a switch from state s_{1} to state s_{2} at time v. For ordinary discrete-time cellular automata, we allow only histories in which all switching times are natural numbers 0,1,2,\dots. The time 0 is considered a switching time. If there is an \varepsilon such that \eta(c,t) is constant for a-\varepsilon<t<a then this constant value will be denoted by -@\eta(c, a-).)))

\eta(c, a-).

The subconfiguration \xi(D') of a configuration \xi defined on D\supseteq D' is the restriction of \xi to D'. Sometimes, we write

\eta(V)

for the sub-configuration over the space-time set V.

Definition

Definition 2.4 (Deterministic cellular automata)

PJV7

A deterministic cellular automaton \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}, {\Lambda}).)))

\ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}, {\Lambda}).

is determined by a transition function \ensuremath{\mathord{\textit{Tr\/}}}:{\mathbb{S}}^{3}\to{\mathbb{S}}\ensuremath{\mathord{\textit{Tr\/}}}, \overline{\ensuremath{\mathord{\textit{Tr\/}}}}.))) and the set {\Lambda} of sites. We will omit {\Lambda} from the notation when it is obvious from the context. A history \eta is a trajectory of this automaton if

\eta(x,t)=\ensuremath{\mathord{\textit{Tr\/}}}(\eta(x-1,t-1), \eta(x,t-1), \eta(x+1,t-1))

holds for all x,t with t>0. For a history \eta let us write

\overline{\ensuremath{\mathord{\textit{Tr\/}}}}(\eta, x,t)=\ensuremath{\mathord{\textit{Tr\/}}}(\eta(x-1,t-1), \eta(x,t-1), \eta(x+1,t-1))

for the “intended” value of \eta(x,t).

Definition

Definition 2.5 (Capacity)

RUGJ

We will deal, from now on, only with cellular automata in which the set {\mathbb{S}} of local states consists of binary strings of some fixed length \ensuremath{\mathord{\textit{Cap\/}}}={\lVert {\mathbb{S}}\rVert}"|@{\lVert {\mathbb{S}}\rVert}.))) called the capacity of the sites. Thus, if the automaton has 16 possible states then its states can be considered binary strings of length 4.

Definition

Definition 2.6 (Fields)

6OUO

Nonempty subsets of the set \mathopen\{0,\dots,{\lVert {\mathbb{S}}\rVert}-1\mathclose\} will be called fields. Some of these subsets will have special names. Let \ensuremath{\mathord{\textsf{\slshape{All\/}}}}.)))

\ensuremath{\mathord{\textsf{\slshape{All\/}}}} = \mathopen\{0,\dots,{\lVert {\mathbb{S}}\rVert}-1\mathclose\}.

If s=\mathopen(\verythinmathskips(i) : i\in\ensuremath{\mathord{\textsf{\slshape{All\/}}}}\mskip 1mu\mathclose) is a bit string and \ensuremath{\mathord{\textsf{\slshape{F\/}}}}=\mathopen\{i_{1},\dots,i_{k}\mathclose\} is a field with i_{j}<i_{j+1} then we will write .@s.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}.)))

s.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}=\mathopen( s(i_{1}),\dots,s(i_{k})\mathclose)

for the bit string that is called field \ensuremath{\mathord{\textsf{\slshape{F\/}}}} of the state. The field consisting of the bits s(i),s(i+1),\dots,s(j-1) of the state will be denoted

\begin{aligned} \ensuremath{\mathord{\textsf{\slshape{F\/}}}}[i\mathord{:} j]. \end{aligned}

The array obtained from joining the same fields (say the Mail field) of all the different cells is called a track, (say the Mail track). (The terminology recalls tracks of a magnetic tape.) We will generally define fields that are either disjoint or contained in each other (but there may be some exceptions.) We will call the number of bits |\ensuremath{\mathord{\textsf{\slshape{F\/}}}}| in a field its \emph{width}, and and the proportion |F|/\ensuremath{\mathord{\textit{Cap\/}}} its relative width. The width and relative width of a track is defined to be the same as that of the corresponding field.

Example

Example 2.7

SR6F

If the capacity is 12 we could subdivide the interval [0,11] into subintervals of lengths 2,2,1,1,2,4 respectively and call these fields the input, output, mail coming from left, mail coming from right, memory and workspace. We can denote these as \ensuremath{\mathord{\textsf{\slshape{Input\/}}}}\ensuremath{\mathord{\textsf{\slshape{Input\/}}}}.))), \ensuremath{\mathord{\textsf{\slshape{Output\/}}}}\ensuremath{\mathord{\textsf{\slshape{Output\/}}}}.))), \ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}_{j}\ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}.))) (j=-1,1), \ensuremath{\mathord{\textsf{\slshape{Work\/}}}}\ensuremath{\mathord{\textsf{\slshape{Work\/}}}}.))) and \ensuremath{\mathord{\textsf{\slshape{Memory\/}}}}\ensuremath{\mathord{\textsf{\slshape{Memory\/}}}}.))). If s is a state then s.\ensuremath{\mathord{\textsf{\slshape{Input\/}}}} denotes the first two bits of s, s.\ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}_{1} means the sixth bit of s, etc. Treating these fields differently means we may impose some useful restrictions on the transition function. We might require the following, calling \ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}_{-1} the “right-directed mail field”:

The information in \ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}_{-1} moves always to the right. More precisely, in a trajectory \eta, the only part of the state \eta(x,t) that depends on the state \eta(x-1,t-1) of the left neighbor is the right-directed mail field \eta(x,t).\ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}_{-1}. This field, on the other hand, depends only on the right-directed mail field of the left neighbor and the workspace field \eta(x,t-1).\ensuremath{\mathord{\textsf{\slshape{Work\/}}}}. The memory depends only on the workspace.

Confining ourselves to computations that are structured in a similar way make reasoning about them in the presence of faults much easier. Indeed, in such a scheme, the effects of a fault can propagate only through the mail fields and can affect the memory field only if the workspace field’s state allows it.

Definition

Definition 2.8 (Legality)

MTPJ

Given a transition function \ensuremath{\mathord{\textit{Tr\/}}}, we say that state s' is a legal successor of state s if there are states r,t with s'=\ensuremath{\mathord{\textit{Tr\/}}}(r,s,t). We define

\begin{aligned} \ensuremath{\mathord{\textit{legal\/}}}(s,s') = 1 \end{aligned}

if this holds and 0 if it does not.

Definition

Definition 2.9

RWDJ

A random history is a pair (\mu,\eta).greek@\mu.))) where \mu is a probability measure over some measurable space (\Omega,\mathcal{A}).greek@\Omega,\omega.))).cap@\mathcal{A},\mathcal{A}(W),\mathcal{A}_{t}.))) together with a measurable function \eta(x,t,\omega) which is a history for every value of \omega\in\Omega. We will generally omit \omega from the arguments of \eta. When we omit the mention of \mu we will use \operatorname{\mathsf P}\operatorname{\mathsf P}.))) to denote it. If it does not lead to confusion, for some property of the form \mathopen\{\mskip 1mu\eta\in R\mskip 1mu\mathclose\}, the quantity \mu\mathopen\{\mskip 1mu\omega : \eta(\cdot,\cdot,\omega)\in R\mskip 1mu\mathclose\} will be written as usual, as

\mu\mathopen\{\mskip 1mu\eta\in R\mskip 1mu\mathclose\} .
Notation

Notation 2.10

W4OU

We will denote the expected value of f with respect to \mu by :cap @\operatorname{\mathsf{E}}_{\mu} f.)))

\operatorname{\mathsf{E}}_{\mu} f

where we will omit \mu when it is clear from the context.

Definition

Definition 2.11 (Events)

7SU8

A function f(\eta) with values 0, 1 (that is an indicator function) and measurable in the \sigma-algebra \mathcal{A} will be called an event function over \mathcal{A}. Let W be any subset of space-time that is the union of some rectangles. Then

\mathcal{A}(W)

denotes the \sigma-algebra generated by events of the form

\mathopen\{\mskip 1mu\eta(x,t)=s \text{\rmfamily\mdseries\upshape{ for }} t_{1}\le t < t_{2}\mskip 1mu\mathclose\}

for s\in{\mathbb{S}}, (x,t_{i})\in W.

Definition

Definition 2.12 (Filtration)

K684

For all times t, we assume the existence of a \sigma-algebra

\mathcal{A}_{t} \supseteq \mathcal{A}({\Lambda}\times[0,t]),\quad \mathcal{A}_{<t}=\bigcup_{u<t} \mathcal{A}_{u}.

The system \{\mathcal{A}_{t}\} is required to be increasing:

t < u \Rightarrow \mathcal{A}_{t} \subseteq \mathcal{A}_{u}.

The function t\mapsto\mathcal{A}_{t} is our filtration.

Used by Example 2.13
Definition

Definition 2.14 (Probabilistic cellular automaton)

UUYE

A transition matrix \mathbf{P}(s, (r_{-1},r_{0},r_{1})).cap@\mathbf{P}(s, (r_{-1},r_{0},r_{1})).))) is a function \mathbf{P}:{\mathbb{S}}^{4}\to[0,1] with the property \sum_{s}\mathbf{P}(s,{\mathbf{r}})=1. For an arbitrary history \eta, and space-time point (x,t), denote

\overline{\mathbf{P}}(\eta, s, x, t) = \mathbf{P}(s, (\eta(x-1,t),\eta(x,t),\eta(x+1,t))).

We will omit the parameter \eta when it is clear from the context.

A probabilistic cellular automaton \ensuremath{\mathord{\textit{PCA\/}}}(\mathbf{P}, {\Lambda}).)))

\ensuremath{\mathord{\textit{PCA\/}}}(\mathbf{P}, {\Lambda})

is characterized by saying which random histories are considered trajectories. Now a trajectory is not a single history (sample path) but a distribution over histories that satisfies the following condition, saying that the random history \eta is a trajectory if and only if the following holds. Let s_{1},\dots, s_{n}\in{\mathbb{S}}.

\operatorname{\mathsf P}{\Bigl(\mskip 1mu\bigcap_{i=1}^{n}\{\eta(x_{i},t)=s_{i}\} \Bigm\vert \mathcal{A}_{t-1}\mskip 1mu\Bigr)} = \prod_{i=1}^{n} \overline{\mathbf{P}}(\eta, s_{i}, x_{i}, t-1).

This expression uses the notion of conditional probability over sigma-algebras. For a more elementary statement of the same property, let x_{0},\dots,x_{n+1} be given with x_{i+1}=x_{i}+1. Let us fix an arbitrary history \zeta and an arbitrary event \mathcal{H}\ni\zeta in \mathcal{A}_{t-1}. Then we require

\begin{gathered} \operatorname{\mathsf P}{\Bigl(\mskip 1mu\bigcap_{i=1}^{n}\{\eta(x_{i},t)=\zeta(x_{i},t)\} \cap \mathcal{H}\cap\bigcap_{i=0}^{n+1}\{\eta(x_{i},t-1)=\zeta(x_{i},t-1)\}\mskip 1mu\Bigr)} \\ = \operatorname{\mathsf P}{\Bigl(\mskip 1mu\mathcal{H}\cap\bigcap_{i=0}^{n+1}\{\eta(x_{i},t-1)=\zeta(x_{i},t-1)\}\mskip 1mu\Bigr)} \prod_{i=1}^{n} \overline{\mathbf{P}}(\eta, \zeta(x_{i},t), x_{i}, t-1). \end{gathered}

A probabilistic cellular automaton is noisy if \mathbf{P}(s,{\mathbf{r}})>0 for all s,{\mathbf{r}}. Bandwidth can be defined for transition probabilities just as for transition functions.

Example

Example 2.15

KQG9

As a simple example, consider a deterministic cellular automaton with a “random number generator”. Let the local state be a record with two fields, \ensuremath{\mathord{\textsf{\slshape{Det\/}}}}\ensuremath{\mathord{\textsf{\slshape{Det\/}}}}.))) and \ensuremath{\mathord{\textsf{\slshape{Rand\/}}}} where \ensuremath{\mathord{\textsf{\slshape{Rand\/}}}}\ensuremath{\mathord{\textsf{\slshape{Rand\/}}}}.))) consists of a single bit. In a trajectory (\mu,\eta), the field \eta.\ensuremath{\mathord{\textsf{\slshape{Det\/}}}}(x,t+1) is computed by a deterministic transition function from \eta(x-1,t), \eta(x,t), \eta(x+1,t), while \eta.\ensuremath{\mathord{\textsf{\slshape{Rand\/}}}}(x,t+1) is obtained by coin-tossing.

Definition

Definition 2.16 (Transition rate matrix)

N82Q

Let us call a transition rate matrix a function \mathbf{R}:{\mathbb{S}}^{4}\to\left[0,\infty\right),:cap@\mathbf{R}(s, {\mathbf{r}}).))) written as

\begin{aligned} \mathbf{R}(s, {\mathbf{r}})\ge 0, \end{aligned}

with the normalization property \mathbf{R}(r_{0}, \mathopen( r_{-1},r_{0},r_{1}\mathclose))=0 for all {\mathbf{r}}. Its elements are called the transition rates.

Definition

Definition 2.17

DW5P

Consider a generalization

\begin{aligned} \ensuremath{\mathord{\textit{PCA\/}}}(\mathbf{P}, {B} , \delta, {\Lambda}) \end{aligned}

of probabilistic cellular automata in which the sites are at positions i{B} for some fixed {B} called the body size and integers i, and the switching times are at 0,\delta,2\delta,3\delta,\dots for some small positive \delta:greek@\delta.))).

Definition

Definition 2.18 (Interacting particle system)

R96V

The random process defined by the above procedure will be denoted by \ensuremath{\mathord{\textit{CCA\/}}}(\mathbf{R}, {\Lambda}).)))

\ensuremath{\mathord{\textit{CCA\/}}}(\mathbf{R}, {\Lambda}),

and called the (continuous-time) interacting particle system with the given rate matrix. We call this system noisy if \mathbf{R}(s,{\mathbf{r}})>0 for all s\ne r_{0}.

Definition

Definition 2.19 (Random perturbation of a deterministic system)

ACQB

We will say that a random history (\mu,\eta) is a trajectory of the \varepsilon-perturbation \ensuremath{\mathord{\textit{CA\/}}}_{\varepsilon}(\ensuremath{\mathord{\textit{Tr\/}}}, {\Lambda}).)))

\ensuremath{\mathord{\textit{CA\/}}}_{\varepsilon}(\ensuremath{\mathord{\textit{Tr\/}}}, {\Lambda})

of the transition function \ensuremath{\mathord{\textit{Tr\/}}} if the following holds. For all x_{0},\dots x_{n+1},t with x_{i+1}=x_{i}+1 for all 0<i_{1}<\cdots<i_{k}<n,

\mu{\Bigl(\mskip 1mu\bigcap_{j=1}^{k}\{\eta(x_{i_{j}},t)\ne\overline{\ensuremath{\mathord{\textit{Tr\/}}}}(\eta, x_{i_{j}},t-1)\} \Bigm\vert \mathcal{A}_{t-1}\mskip 1mu\Bigr)} \le\varepsilon^{k}.

Here is the same property without using conditional probability over sigma-algebras: for events \mathcal{H} in \mathcal{A}_{<(t-1)} with \mu(\mathcal{H})>0,

\mu{\Bigl(\mskip 1mu\bigcap_{j=1}^{k} \{\eta(x_{i_{j}},t)\ne\overline{\ensuremath{\mathord{\textit{Tr\/}}}}(\eta, x_{i_{j}},t-1)\} \Bigm| \mathcal{H}\cap\bigcap_{i=0}^{n+1}\{\eta(x_{i},t-1)=s_{i}\}\mskip 1mu\Bigr)}\le \varepsilon^{k}.
Definition

Definition 2.20 (Random perturbation of a continous-time system)

17R1

By the \varepsilon-perturbation of a continuous-time interacting particle system with transition rates given by \mathbf{R}(s,{\mathbf{r}}), we understand the following: in the above construction of a process, perturb the matrix elements \mathbf{R}(s,{\mathbf{r}}) by some arbitrary amounts smaller than \varepsilon.

Definition

Definition 3.1 (Remembering some bits)

8OPH

Suppose that the bit string that is a local state has some field \ensuremath{\mathord{\textsf{\slshape{F\/}}}} (it can for example be the first two bits of the state). We will say that \ensuremath{\mathord{\textit{Tr\/}}} remembers field \ensuremath{\mathord{\textsf{\slshape{F\/}}}} over an infinite set of sites {\Lambda} if there is an \varepsilon>0 such that for each string s\in\{0,1\}^{|\ensuremath{\mathord{\textsf{\slshape{F\/}}}}|} there is a configuration \xi_{s} such that for all trajectories (\mu,\eta) of the \varepsilon-perturbation \ensuremath{\mathord{\textit{CA\/}}}_{\varepsilon}(\ensuremath{\mathord{\textit{Tr\/}}}, {\Lambda}) with \eta(\cdot,0)=\xi_{s}, for all x,t we have

\mu\mathopen\{\mskip 1mu\eta(x,t).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}\ne s\mskip 1mu\mathclose\}< f(t)+O(\varepsilon)\text{ where } \lim_{t\to\infty}f(t)=0.

We define similarly the notions of remembering a field for a probabilistic transition matrix \mathbf{P} and a probabilistic transition rate matrix \mathbf{R}.

Let us call a configuration \xi homogeneous if there is a state q\in{\mathbb{S}} such that \xi(x)=q for all x. We say that \ensuremath{\mathord{\textit{Tr\/}}} remembers \ensuremath{\mathord{\textsf{\slshape{F\/}}}} in a self-organizing way if the initial configurations \xi_{s} can be made homogeneous.

Theorem

Theorem 1 (Remembering a field in discrete time)

LGPK

For any constant c_{1}>1 there is a one-dimensional probabilistic transition matrix that remembers a field, in a self-organizing way; the function f(t) in (3.1) can be chosen as t^{-c_{1}}. If the space is finite with size N then in any cell, at time t, the probability of forgetting it at time t is bounded by \varepsilon^{h_{0}(N,c_{2})} for an appropriate constant c_{2}.

Remark

Remark 3.2

10S5

The error term in (3.1) improves with time, but why does it not decrease with \varepsilon? Technically, in our proofs it is the price of the need for symmetry-breaking random choices in self-organization, but it still seems improvable.

Theorem

Theorem 2 (Remembering a field in continuous time)

DG1O

There is a one-dimensional transition-rate matrix that remembers a field in a self-organizing way.

Theorem

Theorem 3 (Remembering a long string)

LNM8

Given some alphabet \Sigma there is a one-dimensional deterministic cellular automaton \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}) with a field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}, a code \psi_{*}:\Sigma^{\mathbb{Z}_{N}}\to{\mathbb{S}}^{\mathbb{Z}_{N}} for finite or infinite N and a constant c>1 such that for sufficiently small \varepsilon, if \eta is the trajectory of an \varepsilon-perturbation \ensuremath{\mathord{\textit{CA\/}}}_{\varepsilon}(\ensuremath{\mathord{\textit{Tr\/}}}) with \eta(\cdot,0)=\psi_{*}(\rho) then for all x,t we have

\begin{aligned} \operatorname{\mathsf P}\mathopen\{\mskip 1mu\eta(x,t).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}\ne\rho(x)\mskip 1mu\mathclose\} = O(\varepsilon)+\varepsilon^{h_{0}(N,c)}t. \end{aligned}
Uses Definition 2.19 · Used by Proof
Definition

Definition 3.4 (Specification relation between strings)

CTD0

Each field \ensuremath{\mathord{\textsf{\slshape{F\/}}}} of a cell state such that the field size is even, can be considered not only a binary string but a string of (half as many) symbols in the standard alphabet. If r,s are strings in (\Sigma_{0})^{n} then "<@\preceq.)))

r\preceq s

will mean that s(i)=r(i) for all 0\le i<n such that r(i)\ne *. For functions f, g, with values in \Sigma_{0}^{*} we will write f\preceq g if for all s we have f(s)\preceq g(s).

Definition

Definition 3.5

3X93

Let \ensuremath{\mathord{\textit{Tr\/}}} be any deterministic transition function with states in some alphabet \mathbb{A} with distinguished fields \ensuremath{\mathord{\textsf{\slshape{Input\/}}}}, \ensuremath{\mathord{\textsf{\slshape{Output\/}}}} in the standard alphabet. We say that \ensuremath{\mathord{\textit{Tr\/}}} has monotonic output if for all trajectories \eta of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}) we have

\eta(x,t).\ensuremath{\mathord{\textsf{\slshape{Output\/}}}} \preceq \eta(x,t+1).\ensuremath{\mathord{\textsf{\slshape{Output\/}}}}.

We call the transition function \ensuremath{\mathord{\textit{Tr\/}}}, all of whose fields have even size (that is they are in the standard alphabet) together with some distinguished fields \ensuremath{\mathord{\textsf{\slshape{Input\/}}}}, \ensuremath{\mathord{\textsf{\slshape{Output\/}}}}, a standard computing transition function if it

Cjenum.
  • never changes \ensuremath{\mathord{\textsf{\slshape{Input\/}}}};

  • has monotonic output;

  • does not change anything if

    the middle argument has all \#’s in its input field, or if all three arguments have * in all their fields.

  • We will call a cellular automaton with such a transition function a standard computing medium. Our construction uses for this a special field called

    \begin{aligned} \ensuremath{\mathord{\textsf{\slshape{Color\/}}}}. \end{aligned}

    It can take a constant number of values; in one case, only -1,0,1.

    Definition

    Definition 3.6 (Init)

    524M

    Let \Sigma_{0} be the standard input/output alphabet, and {\mathbb{S}} a set of states with {\mathbb{S}}.\ensuremath{\mathord{\textsf{\slshape{Input\/}}}}=\Sigma_{0}, having another field \ensuremath{\mathord{\textsf{\slshape{Color\/}}}}\in\{-1,0,1\}, and a distinguished “latent” state s_{0}. Let \psi_{*}:\Sigma_{0}^{*}\to{\mathbb{S}}^{*} be an encoding. For any finite string \rho\in\Sigma_{0}^{n}, let n'=|\psi_{*}(\rho)|. For any finite or infinite N>|\rho'|, we construct the initial configuration \ensuremath{\mathord{\textit{Init\/}}}_{\psi_{*}}(\rho).)))

    \xi'=\ensuremath{\mathord{\textit{Init\/}}}_{\psi_{*}}(\rho)\in{\mathbb{S}}^{N}

    as follows. Define \xi by setting \xi(x)=\psi_{*}(\rho)(x) for each x\in\left[0,n'\right), and s_{0} for all other x. In case N=\infty, obtain \xi' from \xi by setting

    \begin{aligned} \xi'(x).\ensuremath{\mathord{\textsf{\slshape{Color\/}}}}= \begin{cases} 0 & \text{ for } 0\le x<n, \\ -1 & \text{ for } x<0, \\ 1 & \text{ for } x\ge n. \end{cases} \end{aligned}

    When the space is the finite one \mathbb{Z}_{N} then, with r=(N-n)/2, set \xi'(x).\ensuremath{\mathord{\textsf{\slshape{Color\/}}}}=-1 for -r\le x<0, and 1 for n\le x < n+r.

    Theorem

    Theorem 4 (Reliable computation in dim 1)

    BGGH

    Let \ensuremath{\mathord{\textit{Tr\/}}} be a standard computing transition function over an alphabet \Sigma, and \delta>0 a constant. There is

    • a transition function \ensuremath{\mathord{\textit{Tr\/}}}' with a state space {\mathbb{S}} having fields \ensuremath{\mathord{\textsf{\slshape{Input\/}}}}, \ensuremath{\mathord{\textsf{\slshape{Output\/}}}}, \ensuremath{\mathord{\textsf{\slshape{Color\/}}}}, with {\mathbb{S}}.\ensuremath{\mathord{\textsf{\slshape{Input\/}}}}={\mathbb{S}}.\ensuremath{\mathord{\textsf{\slshape{Output\/}}}}=\Sigma_{0}.

    • a code \psi_{*}: \Sigma_{0}^{*}\to {\mathbb{S}}^{*}, with |\psi_{*}(\rho)|\le 2|\rho|;

    • a constant c_{1}>1

    such that the following holds for all \rho\in\Sigma_{0}^{*}. Let \zeta(x,t) be any trajectory of \ensuremath{\mathord{\textit{Tr\/}}} with \zeta(x,0).\ensuremath{\mathord{\textsf{\slshape{Input\/}}}}=\rho(x) for x\in\left[0,|\rho|\right) and filled with *’s otherwise. Let \eta be any trajectory of an \varepsilon-perturbation of \ensuremath{\mathord{\textit{Tr\/}}}', with \eta(\cdot,0)=\ensuremath{\mathord{\textit{Init\/}}}_{\psi_{*}}(\rho). For all t, all t'> t\cdot h_{1}(t,c_{1}), all x\in\mathbb{Z} we have for all sufficiently small \varepsilon:

    \operatorname{\mathsf P}\mathopen\{\mskip 1mu\zeta(x, t).\ensuremath{\mathord{\textsf{\slshape{Output\/}}}} \not\preceq \eta(x, t').\ensuremath{\mathord{\textsf{\slshape{Output\/}}}}\mskip 1mu\mathclose\} <\delta.
    Remarks

    Remarks 3.7

    E81U
    1. This note is similar to Remark 3.2, but is even more important, as the error term does not even decrease with increasing t.

    2. The initialization via \ensuremath{\mathord{\textit{Init\/}}} avoids building up an infinite hierarchy in the initial configuration, leaving this to self-organization. But it introduces a huge asymmetry by coloring the left of the input with -1 and the right with 1. This has an effect similar to making the space infinite in only one direction, and placing the input into the beginning.

    Definition

    Definition 4.1 (Colony)

    RM9N

    Let x be a site and {Q} a positive integer. The set of {Q}.cap@{Q}.))) sites x+i for i\in\left[0,{Q}\right) will be called the {Q}-colony with base x, and site x+i will be said to have address i in this colony.

    Definition

    Definition 4.2 (Address)

    6F1L

    An address field is a field of our cells that we will denote \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}.))): we will always have it when we speak about colonies. The value \xi(x).\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}} is a binary string which will be interpreted as an integer in \left[0,{Q}\right).

    Definition

    Definition 4.4

    2BR3

    Let us denote by M_{1} the fault-tolerant cellular automaton to be built.

    Definition

    Definition 4.5 (Code on strings)

    H4TQ

    A code \varphi.greek@\varphi_{*},\varphi_{*}.))) between two sets R,S is a pair (\varphi^{*},\varphi_{*}) where \varphi_{*}: R\to S is the encoding function and \varphi^{*}: S\to R is the decoding function, and the relation

    \varphi^{*}(\varphi_{*}(r)) = r

    holds. We will be particularly interested in the example when for a positive integer {Q} called the block size and some finite sets {\mathbb{S}}_{1},{\mathbb{S}}_{2} we have R={\mathbb{S}}_{2}, S={\mathbb{S}}_{1}^{{Q}}. Such a code is called a block code. In a block code, strings of the form \varphi_{*}(r) are called codewords. The elements of a codeword s=\varphi_{*}(r) are numbered as s(0),\dots,s({Q}-1).

    The codes \varphi between sets R, S used in our simulations will have a feature similar to the acceptance and rejection of Example 4.7. The set R will always have a subset of symbols called vacant, and among them a distinguished special symbol \ensuremath{\mathord{\textit{Vac\/}}}\ensuremath{\mathord{\textit{Vac\/}}}.))). An element s\in S will be called accepted by the decoding if \varphi^{*}(s)\ne \ensuremath{\mathord{\textit{Vac\/}}}, otherwise it is called rejected.

    Remark

    Remark 4.6

    WE7K

    The notation (\varphi^{*},\varphi_{*}) to use for decoding and encoding is not in common use: I find it suggestive, though, since \varphi^{*} is something like an inverse function without actually being one.

    Example

    Example 4.7

    HDDS

    Suppose that {\mathbb{S}}_{1}={\mathbb{S}}_{2}=\{0,1\}^{12} is the state set of both cellular automata M_{1} and M_{2}. Let us introduce the fields s.\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}} and s.\ensuremath{\mathord{\textsf{\slshape{Info\/}}}}\ensuremath{\mathord{\textsf{\slshape{Info\/}}}}.))) of a state r=(s_{0},\dots, s_{11}) in {\mathbb{S}}_{1}. The \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}} field consists of the first 5 bits s_{0},\dots,s_{4}, while the \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} field is the last bit s_{11}. The other bits do not belong to any named field. Let {Q}=31. Thus, we will use codewords of size 31, formed of the symbols (local states) of M_{1}, to encode local states of M_{2}. The encoding funcion \varphi_{*} assigns a codeword \varphi_{*}(r)=(s(0),\dots, s(30)) of elements of {\mathbb{S}}_{1} to each element r of {\mathbb{S}}_{2}. Let r=(r_{0},\dots, r_{11}). We will set s(i).\ensuremath{\mathord{\textsf{\slshape{Info\/}}}}=r_{i} for i=0,\dots,11. The 5 bits in s(i).\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}} will denote the number i in binary notation. This did not determine all bits of the symbols s(0),\dots, s(30) in the codeword. In particular, the bits belonging to neither the \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}} nor the \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} field are not determined, and the values of the \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} field for the symbols s(i) with i\not\in\left[0,12\right) are not determined. To determine \varphi_{*}(r) completely, we could set these bits to 0.

    The decoding function is simpler. Given a word s=(s(0),\dots,s(30)) we first check whether it is a “normal” codeword, and as such, has s(0).\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}=0 and s(i).\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}\ne 0 for i\ne 0. If yes then r=\varphi^{*}(s) is defined by r_{i}=s(i).\ensuremath{\mathord{\textsf{\slshape{Info\/}}}} for i\in\left[0,12\right), and the word is accepted’. Otherwise \varphi^{*}(s)=0\cdots 0, and the word is rejected.

    Informally, the symbols of the codeword use their first 5 bits to mark their address within the codeword. The last bit is used to remember their part of the information about the encoded symbol.

    Example

    Example 4.8

    6KHM

    The trivial example here will not be really used as a code but rather as a notational convenience. For every symbol set {\mathbb{S}}_{1}, blocksize {Q} and {\mathbb{S}}_{2}={\mathbb{S}}_{1}^{{Q}}, there is a special block code \iota_{{Q}}:greek@\iota_{{Q}}.))) called aggregation defined by

    \iota_{{Q}}^{*}((s(0),\dots,s({Q}-1)))=s(0)\sqcup\cdots\sqcup s({Q}-1),

    and \iota_{{Q}*} defined accordingly. Thus, \iota_{{Q}}^{*} is essentially the identity: it just aggregates {Q} symbols of {\mathbb{S}}_{1} into one symbol of {\mathbb{S}}_{2}. We use concatenation here since we identify all symbols with binary strings.

    Definition

    Definition 4.9 (Aggregating a field)

    1JAP

    Let \varphi be a block code from {\mathbb{S}}_{2} to {\mathbb{S}}_{1}^{{Q}}, and \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1},\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{2} be fields of {\mathbb{S}}_{i}. We will say that \varphi aggregates field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1} into \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{2} if

    \begin{aligned} \varphi^{*}((s(0),\dots,s({Q}-1))).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{2}=s(0).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1}\sqcup\dots\sqcup s({Q}-1).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1}. \end{aligned}

    Hence for u,v\in{\mathbb{S}}_{2} the assumption u.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{2}=v.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{2} implies that for all a\in\left[0,{Q}\right) we have

    \begin{aligned} \varphi_{*}(u)(a).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1}=\varphi_{*}(v)(a).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1} . \end{aligned}
    Definition

    Definition 4.10 (Controlling by a field)

    753P

    Assume that code \varphi aggregates field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1} into \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{2}. We say that field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1} controls address a for code \varphi via a function \gamma:{\mathbb{S}}_{1}.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1}\to{\mathbb{S}}_{1} if in all codewords w of the form w=\varphi_{*}(u), we have w(a)=\gamma(w(a).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1}).

    Definition

    Definition 4.12 (Lattice configuration)

    2Z83

    A configuration is a lattice configuration if all cells are at sites of the form i{B} for integers i. We can also talk about lattice histories: these have space-time bodies of the form

    \left[i{B} ,(i+1){B} \right)\times\left[j{T} ,k{T} \right)

    for integers i,j<k.

    Definition

    Definition 4.13 (Deterministic cellular automaton with size parameters)

    L4ZX

    A deterministic cellular automaton \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}, {B} , {T} , {\Lambda}).)))

    \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}, {B} , {T} , {\Lambda})

    is determined by parameters {B} ,{T} >0 and a transition function \ensuremath{\mathord{\textit{Tr\/}}}:{\mathbb{S}}^{3}\to{\mathbb{S}}. We may omit some obvious arguments from this notation. A lattice history \eta with parameters {B} ,{T} is a trajectory of this automaton if

    \eta(x,t)=\ensuremath{\mathord{\textit{Tr\/}}}(\eta(x-{B} ,t-{T} ), \eta(x,t-{T} ), \eta(x+{B} ,t-{T} ))

    holds for all x,t with t\ge {T}. For a history \eta let us write

    \overline{\ensuremath{\mathord{\textit{Tr\/}}}}(\eta, x,t,{B} )=\ensuremath{\mathord{\textit{Tr\/}}}(\eta(x-{B} ,t), \eta(x,t), \eta(x+{B} ,t)).
    Definition

    Definition 4.14 (Variable-period cellular medium)

    P2FO

    A medium is said to have a variable period if in its histories, not all dwell periods have necessarily the same size.

    Definition

    Definition 4.15 (Overlap-free)

    XN6O

    A block code will be called overlap-free if for every string \mathopen( s(0),\dots s(n-1)\mathclose), and all i\le n-{Q}, if both strings \mathopen( s(0),\dots,s({Q} -1)\mathclose) and \mathopen( s(i+1),\dots,s(i+{Q} -1)\mathclose) are accepted then i\ge {Q}.

    Definition

    Definition 4.16 (Block code on configuration)

    0H45

    Suppose that a configuration \xi of M_{2}, which is a cellular medium \ensuremath{\mathord{\textit{AMed\/}}}({Q} {B} ), is given. Then we define the encoded configuration \xi_{*}=\varphi_{*}(\xi) of M_{1}, which is an \ensuremath{\mathord{\textit{AMed\/}}}({B} ), by setting for each cell x of \xi and 0\le i < {Q},

    \xi_{*}(x + i {B} )=\varphi_{*}(\xi(x))(i).

    Suppose that a configuration \xi of M_{1} is given. We define the decoded configuration \xi^{*}=\varphi^{*}(\xi) of M_{2} as follows: for site x, set \xi'(x)=\varphi^{*}(s) where

    s = \mathopen( \xi(x), \xi(x + {B} ), \dots, \xi(x + ({Q} - 1){B} )\mathclose).

    We define \xi^{*}(x)=\xi'(x) if the latter is vacant or there is no y closer than {Q} {B} to x with \xi'(y) non-vacant; otherwise \xi^{*} = \ensuremath{\mathord{\textit{Vac\/}}}.

    Proposition

    Proposition 4.17

    WHJD

    Given a block code \varphi=(\varphi_{*},\varphi^{*}), its extension to configurations is also a code in the sense that the equation

    \begin{aligned} \varphi^{*}(\varphi_{*}(\xi))=\xi \end{aligned}

    still holds.

    Definition

    Definition 4.18 (Code configuration)

    5FZ6

    A configuration \xi is called a code configuration if \varphi_{*}(\varphi^{*}(\xi))=\xi and the decoded configuration \varphi^{*}(\xi) covers the space with adjacent cells.

    Definition

    Definition 4.19 (Block simulation between deterministic cellular automata)

    9ZDG

    Suppose that M_{1} and M_{2} are deterministic cellular automata where M_{i}=\ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}_{i},{B} _{i},{T}_{i}), and \varphi is a block code with

    {B} _{1}={B} ,\qquad {B} _{2}={Q} {B} .

    The decoding function may be as simple as in Example 4.7: there is an \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} track and once the colony is accepted the decoding function depends only on this part of the information in it.

    For each history \eta of M_{1}, we define the history \eta^{*}=\varphi^{*}(\eta) of M_{2} by setting

    \eta^{*}(\cdot,t)=\varphi^{*}(\eta(\cdot,t)).

    We will say that the code \varphi is a simulation if for each configuration \xi of M_{2}, for the (unique) trajectory \eta of M_{1}, such that \eta(\cdot,0)=\varphi_{*}(\xi), the history \eta^{*} is a trajectory of M_{2}.

    Example

    Example 4.20

    56TB

    Let us show one particular way in which the transition function \ensuremath{\mathord{\textit{Tr\/}}}_{1} can make the code \varphi a simulation. Assume that

    {T}_{1}={T} ,\ {T}_{2}={U} {T}

    for some positive integer {U} called the work period size. Each cell of M_{1} will go through a period consisting of {U} steps in such a way that the \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} field will be changed only in the last step of this period. The initial configuration \eta(\cdot,0)=\varphi_{*}(\xi) is chosen in such a way that each cell is at the beginning of its work period. By the nature of the code, in the initial configuration, cells of M_{1} are grouped into colonies.

    Once started from such an initial configuration, during each work period, each colony, in cooperation with its two neighbor colonies, computes the new configuration. With the block code in Example 4.7, this may happen as follows. Let us denote by r_{-1},r_{0},r_{1} the value in the first 12 bits of the \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} track in the left neighbor colony, in the colony itself and in the right neighbor colony respectively. First, r_{-1} and r_{1} are shipped into the middle colony. Then, the middle colony computes s=\ensuremath{\mathord{\textit{Tr\/}}}_{2}(r_{-1},r_{0},r_{1}) where \ensuremath{\mathord{\textit{Tr\/}}}_{2} is the transition function or M_{2} and stores it on a memory track. (It may help understanding how this happens if we think of the possibilities of using some mail, memory and workspace tracks.) Then, in the last step, s will be copied onto the \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} track.

    Example

    Example 4.21 (Aggregated transition)

    E86T

    Here is a trivial example of a block simulation which will be applied, however, later in the paper. Given a one-dimensional transition function \ensuremath{\mathord{\textit{Tr\/}}}(x,y,z) with state space {\mathbb{S}}, we can define for all positive integers {Q} an aggregated transition function \ensuremath{\mathord{\textit{Tr\/}}}^{{Q} }(u,v,w)\ensuremath{\mathord{\textit{Tr\/}}}^{{Q} }(u,v,w).))) as follows. The state space of \ensuremath{\mathord{\textit{Tr\/}}}^{{Q} } is {\mathbb{S}}^{{Q} }. Let {\mathbf{r}}_{j}=\mathopen( r_{j}(0),\dots, r_{j}({Q} -1)\mathclose) for j=-1,0,1 be three elements of {\mathbb{S}}^{{Q} }. Concatenate these three strings to get a string of length 3{Q} and apply the transition function \ensuremath{\mathord{\textit{Tr\/}}} to each group of three consecutive symbols to obtain a string of length 3{Q} - 2 (the end symbols do not have both neighbors). Repeat this {Q} times to get a string of {Q} symbols of {\mathbb{S}}: this is the value of \ensuremath{\mathord{\textit{Tr\/}}}^{{Q} }({\mathbf{r}}_{-1},{\mathbf{r}}_{0},{\mathbf{r}}_{1}), defining an aggregated cellular automaton \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}^{{Q}},{Q},{Q}) where we used the notation in Definition 4.13.

    For M_{1}=\ensuremath{\mathord{\textit{CA\/}}}({\mathbb{S}},\ensuremath{\mathord{\textit{Tr\/}}},{B} ,{T} ) and M_{2}=\ensuremath{\mathord{\textit{CA\/}}}({\mathbb{S}}^{{Q} },\ensuremath{\mathord{\textit{Tr\/}}}^{{Q} },{Q} {B} ,{Q} {T} ), the aggregation code \iota_{{Q} } defined in Example 4.8 will be a block simulation of M_{2} by M_{1} with a work period consisting of {U} ={Q} steps. If along with the transition function \ensuremath{\mathord{\textit{Tr\/}}}, there were some fields \ensuremath{\mathord{\textsf{\slshape{F\/}}}},\ensuremath{\mathord{\textsf{\slshape{G\/}}}},\dots\subseteq\ensuremath{\mathord{\textsf{\slshape{All\/}}}} also defined then we define, say, the field \ensuremath{\mathord{\textsf{\slshape{F\/}}}} in the aggregated cellular automaton as \bigcup_{i=0}^{{Q} -1}(\ensuremath{\mathord{\textsf{\slshape{F\/}}}}+i{\lVert {\mathbb{S}}\rVert}). Thus, if {\mathbf{r}}=r(0)\sqcup\dotsm\sqcup r({Q} -1) is a state of the aggregated cellular automaton then {\mathbf{r}}.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}=r(0).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}\sqcup r(1).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}\sqcup\dotsm\sqcup r({Q} -1).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}.

    We may allow only less communication with the neighbors, and then modify the above as follows to a function \ensuremath{\mathord{\textit{Tr\/}}}^{{Q},w } as follows, where we call \delta the slowdown rate, where we assume that both \delta{Q} and 1/\delta are integers. The state space is still {\mathbb{S}}^{{Q} }. Let {\mathbf{r}}_{j}=\mathopen( r_{j}(0),\dots, r_{j}({Q} -1)\mathclose) for j=-1,0,1 be three elements of {\mathbb{S}}^{{Q} }. Concatenate these three strings to get a string of length 3{Q} and apply the transition function \ensuremath{\mathord{\textit{Tr\/}}} to each group of three consecutive symbols to obtain a string of length 3{Q} - 2 (the end symbols do not have both neighbors). Repeat this only w{Q} times to get a string of {Q} symbols of {\mathbb{S}}: this is the value of \ensuremath{\mathord{\textit{Tr\/}}}^{{Q},\delta }(r_{-1},r_{0},r_{1}). This defines the cellular automaton \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}^{{Q},\delta},{Q},\delta{Q}). The function \ensuremath{\mathord{\textit{Tr\/}}}^{{Q}} becomes the special case \ensuremath{\mathord{\textit{Tr\/}}}^{{Q},1}. Denoting by s.\ensuremath{\mathord{\textsf{\slshape{slice\/}}}}^{\delta,-1}, s.\ensuremath{\mathord{\textsf{\slshape{slice\/}}}}^{\delta,1} the leftmost and rightmost \delta|{Q}| symbols of a string s in {\mathbb{S}}^{{Q}}, then in fact \ensuremath{\mathord{\textit{Tr\/}}}^{{Q},\delta}({\mathbf{r}}) depends only on r_{-1}.\ensuremath{\mathord{\textsf{\slshape{slice\/}}}}^{\delta,1},r_{0},r_{1}.\ensuremath{\mathord{\textsf{\slshape{slice\/}}}}^{\delta,-1}.

    Definition

    Definition 4.22 (Intrinsically universal cellular automata)

    3ONZ

    A transition function \ensuremath{\mathord{\textit{Tr\/}}} is intrinsically universal if for every other transition function \ensuremath{\mathord{\textit{Tr\/}}}' there are {Q} ,{U} and a block code \varphi such that \varphi is a block simulation of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}',{Q} ,{U} ) by \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}},1,1).

    Definition

    Definition 4.23 (General simulation)

    W37P

    A simulation of medium M_{2} by medium M_{1} having the same system \{\mathcal{A}_{t}\}_{t\ge 0} of \sigma-algebras is given by a pair .greek.cap@\Phi^{*}.)))

    \begin{aligned} \Phi=(\varphi, \Phi^{*}) \end{aligned}

    where \Phi^{*} is a mapping of the set of histories of M_{1} into those of M_{2} (the decoding), \varphi_{*} is a mapping of the set of configurations of M_{2} to the set of configurations of M_{1} (the encoding for initialization). We will assume to \varphi_{*} always belongs also a decoding function \varphi^{*}, so they form a code \varphi=(\varphi_{*},\varphi^{*}). Denote

    \eta^{*}=\Phi^{*}(\eta).

    We require that for each configuration \xi of M_{2}, each trajectory of \eta of M_{1} with \eta(\cdot,0) = \varphi_{*}(\xi) the decoded history\eta^{*} is a trajectory of M_{2} with \eta^{*}(\cdot,0)=\xi.

    Definition

    Definition 4.24 (Local simulation)

    B9N8

    A simulation will be called non-anticipating if for each t the random function \eta^{*}(\cdot,t) is measurable in the \sigma-algebra \mathcal{A}_{t} (this says that it does not depend on the future). Let \sigma be the shift on one-dimensional configurations and histories: that is (\sigma\xi)(x)=\xi(x+1), (\sigma\eta)(x,t)=\eta(x+1,t). A simulation (\varphi,\Phi^{*}) is called shift-invariant if both \varphi and \Phi^{*} commute with the shift. It is called local if there is a finite space-time rectangle V^{*}=I\times (u,0].cap@V^{*}.))) with u\ge 0 such that \Phi^{*}(\eta)(w,t) depends only on \eta((w,t)+V^{*}). A local simulation is both non-anticipating and shift-invariant.

    All our simulations will be local, unless stated otherwise. It follows from the non-anticipating property that \eta^{*}(\cdot,0) depends only on \eta(\cdot,0), and therefore the simulation always defines a decoding function

    \begin{aligned} \varphi^{*} \end{aligned}

    on configurations (as already stipulated in Definition 4.23).

    If u=0 and so the configuration \eta^{*}(\cdot,t) depends only on the configuration \eta(\cdot,t), then the simulation will be called memoryless.

    Definition

    Definition 4.25 (Trickle-down)

    6VD7

    Let \Phi=(\varphi,\Phi^{*}) be a simulation as in (4.23) whose encoding \varphi_{*} is a block code with block size {Q}, between abstract cellular media M_{k} (k=1,2). Let D_{k}>0 (k=1,2) be some parameters, and \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1} a field of the medium M_{1}. We say that \Phi has the \varepsilon-trickle-down property of field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k+1} into field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1} with respect to D_{1}, D_{2} if the following holds for every configuration \xi of M_{2} and every trajectory (\mu,\eta) of M_{1} with \eta(\cdot, 0)=\varphi_{*}(\xi).

    Recall the notation \preceq in Definition 3.4. Let \eta^{1}=\eta, \eta^{2}=\Phi^{*}(\eta). Let x_{1},x_{2} be sites where x_{1} has address a in the {Q}-colony with base x_{2}, let t_{0} be some time. For k=1,2 let \mathcal{E}_{k}(x) be the event that \eta^{k}(x,t) is non-vacant and \eta^{k}(x,t).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k} does not change during (t_{0}-D_{k},t_{0}+D_{k}]. Let \mathcal{E}'_{1} be the event that \mathcal{E}_{1}(x_{1}) holds and also

    \eta(x_{1}, t).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1} \succeq \varphi_{*}(\eta^{*}(x_{2}, t))(a).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1}

    during this time. Then \operatorname{\mathsf P}( \mathcal{E}_{2}(x_{2})\setminus\mathcal{E}')<\varepsilon.

    Definition

    Definition 4.26 (Initial stability)

    CUQQ

    A cellular medium M is called initially stable for an initial configuration \xi with parameters (\varepsilon,{T} ) if for each trajectory \eta of M with \eta(\cdot,0)=\xi, for each site x, we have

    \operatorname{\mathsf P}\mathopen\{\mskip 1mu\cmexists\, t < {T} \;\eta(x,t) \ne \eta(x,0)\mskip 1mu\mathclose\} < \varepsilon.
    Example

    Example 4.27

    QI2Q

    Consider the perturbation M=\ensuremath{\mathord{\textit{CA\/}}}_{\varepsilon}(\ensuremath{\mathord{\textit{Tr\/}}},{B} ,{T} ) of a 1-dimensional deterministic cellular automaton. Then for any configuration \xi and arbitrary \delta>0 the medium M is initially stable for initial configuration \xi and parameters (\delta,{T} ). Indeed, by definition no cell is changing it state before time {T}.

    Definition

    Definition 5.1 (Composition of codes)

    X7WN

    If \varphi,\psi are two codes then \varphi\circ\psi is defined by (\varphi\circ\psi)_{*}(\xi)=\varphi_{*}(\psi_{*}(\xi)) and (\varphi\circ\psi)^{*}(\zeta)=\psi^{*}(\varphi^{*}(\zeta)). It is assumed that \xi and \zeta are here configurations of the appropriate cellular automata, that is the cell body sizes are in the corresponding relation. The code \varphi\circ\psi"+@\circ.))) is called the composition of \varphi and \psi.

    Example

    Example 5.2

    FSNJ

    Let M_{1},M_{2},M_{3} have cell body sizes 1,31,31^{2} respectively. Let us use the code \varphi from Example 4.7. The code \varphi^{2}=\varphi\circ\varphi maps each cell c of M_{3} with body size 31^{2} into a “supercolony” of 31\cdot 31 cells of body size 1 in M_{1}.

    Suppose that \zeta=\varphi_{*}^{2}(\xi) is a configuration obtained by encoding from a lattice configuration of body size 31^{2} in M_{3}, where the bases of the cells are at positions -480 + 31^{2} i. (We chose -480 only since 480=(31^{2}-1)/2 but we could have chosen any other number.) Then \zeta can be grouped into colonies of size 31 starting at any of those bases. Cell 55 of M_{1} belongs to the colony with base 47=-480+17\cdot 31 and has address 8 in it. Therefore the address field of \zeta(55) contains a binary representation of 8. The last bit of this cell encodes the 8-th bit the of cell (with base) 47 of M_{2} represented by this colony. If we read together all 12 bits represented by the \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} fields of the first 12 cells in this colony we get a state \zeta^{*}(47) (we count from 0). The cells with base -15+31j for j\in\mathbb{Z} with states \zeta^{*}(-15+31j) obtained this way are also broken up into colonies. In them, the first 5 bits of each state form the address and the last bits of the first 12 cells, when put together, give back the state of the cell represented by this colony. Notice that these 12 bits were really drawn from 31^{2} cells of M_{1}. Even the address bits in \zeta^{*}(47) come from different cells of the colony with base 47. Therefore the cell with state \zeta(55) does not contain information allowing us to conclude that it is cell 55. It only “knows” that it is the 8-th cell within its own colony (with base 47) but does not know that its colony has address 17 within its supercolony (with base -15\cdot 31) since it has at most one bit of that address.

    Definition

    Definition 5.3 (Hierarchical code)

    FO0V

    A hierarchical code is given by a sequence .greek.hier@\varphi_{k*}.))) {\mathbb{S}}_{k},\varphi_{k*}, (k\ge 1) where {\mathbb{S}}_{k} is an alphabet and \varphi_{k*} is a code on configurations. In the present work we will also assume that \varphi_{k*} always comes from a block code

    \begin{aligned} \varphi_{k*}:{\mathbb{S}}_{k+1}\to{\mathbb{S}}_{k}^{{Q}_{k}}. \end{aligned}

    .cap@{Q}_{k}.))) Since {\mathbb{S}}_{k} and {Q}_{k} are implicitly defined by \varphi_{k*} we can refer to the code as just (\varphi_{k*})_{k\ge 1}. Consider a hierarchical code (\varphi_{k*})_{k\ge 1} with state sequence ({\mathbb{S}}_{k}) and block sizes ({Q}_{k}). If for each {\mathbb{S}}_{k} a field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k} is also given, and the code \varphi_{k*} is aggregating from \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k} to \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k+1} as in Definition 4.9, then the hierarchical code (\varphi_{k*})_{k\ge 1} will be called aggregating for the field sequence (\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k}). If also \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k} controls address 1 via a function \gamma_{k} (as by Definition 4.10) then sequence of triples

    \begin{aligned} \mathbf{H} = (\varphi,\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k}, \gamma_{k})_{k\ge 1} \end{aligned}

    will be called a centrally aggregating hierarchical code, or shortly, a code complex.

    Definition

    Definition 5.4

    U3F5

    Given a hierarchical code as above, for a configuration \xi we define the higher-order configurations \xi^{k} by the recursion

    \begin{aligned} \xi^{1} &=\xi, \\ \xi^{k+1} &=\varphi_{k}^{*}(\xi^{k}). \end{aligned}

    The configuration \xi is called a code configuration for the given hierarchical code if \xi^{k} is a code configuration for the code \varphi_{k} for each k in the sense of Definition 4.18.

    Definition

    Definition 5.5

    Y20C

    Suppose that a code configuration \xi of a hierarchical code (\varphi_{k})_{k\ge 1} with block sizes {Q}_{k} is given. The sizes of the higher-order cells are defined by .cap@B_{k}.))) {B} _{1}= 1, {B} _{k+1} = Q_{k}{B}_{k}. For a finite or infinite n, let .cap@K_{0}(n).)))

    \begin{aligned} K_{0}(n) = \sup_{{B} _{k}\le n} k. \end{aligned}

    If n<\infty then this is the largest k for which a k-cell can fit into \mathbb{Z}_{n}. As long as k< K_{0}(n) the origin of our space {\Lambda} will be contained in some cell x_{k} of level k. Since it is in our power to define the code configuration \xi, for simplicity we will always arrange that x_{k} is the second cell (the cell with address 1) of the colony coding cell x_{k+1}. In general, we could use any addresses 0<a_{k}<{Q}-1 instead of setting them always to 1, but this is not important now. Setting a_{k}=1 gives

    \begin{aligned} x_{1}=0, \quad x_{k} = -{B} _{1} - \cdots - {B} _{k-1} \text{ for } k>1. \end{aligned}
    Definition

    Definition 5.8 (Encoding of infinite sequences)

    DXFD

    Let \rho\in ({\mathbb{S}}_{1}.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1})^{\mathbb{Z}} be an infinite sequence, we define its encoding \psi_{*}(\rho) as follows. Define for each k the following segment of \rho using the notation of Definition 5.5:

    \begin{aligned} \rho_{k}&= (\rho(x_{k}),\rho(x_{k}+1),\dots,\dots,\rho(x_{k}+{B}_{k}-1)). \end{aligned}

    The sequence s_{k}=\gamma_{k}(\rho_{k}), k=1,2,\dots is fitted, allowing via Proposition 5.7 to encode \rho into an infinite code configuration

    \begin{aligned} \xi=\xi^{1}=\psi_{*}(\rho) . \end{aligned}
    Definition

    Definition 5.9 (Encoding of finite sequences)

    45EQ

    Given a code complex \mathbf{H} as above and a string \rho\in\Sigma_{0}^{n} we define its encoding \xi=\psi_{*}(\rho)\in{\mathbb{S}}^{\infty} which has the property that except for an interval of size \le 2 n, \xi(x)=q_{{\mathbb{S}}} with q_{{\mathbb{S}}} as in Definition 3.6. Let k=K_{0}(n) as in (5.5). Create the string

    \begin{aligned} \rho'=*^{-x_{k}}\rho *^{l} \end{aligned}

    where -x _{k} stars come at the front and the l stars at the back are the fewest to make |\rho'|=m{B}_{k} an integer multiple of {B}_{k}. Now create a string r_{k}\in {\mathbb{S}}_{k}^{m} as follows. First let r'_{k}=q_{{\mathbb{S}}}^{m}, and then obtain r_{k} by replacing the track r'_{k}.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k} in it with \rho'. Define the string r_{k-1}=\varphi_{i*}(r_{k})\in{\mathbb{S}}_{k-1}^{m{Q}_{k-1}}. Similarly, for each 1\le i<k let r_{i}=\varphi_{(i+1)*}(r_{i+1}). By definition of the codes \varphi_{i*}, string r_{i} consists of m{Q}_{k-1}{Q}_{k-2}\cdots{Q}_{i} symbols of {\mathbb{S}}_{i}. Then r_{1} consists of m{B}_{k} symbols of {\mathbb{S}}={\mathbb{S}}_{1}. Finally obtain \xi as follows: \xi(x)=r(x-x_{k}) for 0\le x-x_{k}<m{B}_{k} and q_{{\mathbb{S}}} otherwise.

    Definition

    Definition 5.11 (Trickle-down and initial stability for amplifiers)

    ZSSM

    Suppose that an amplifier \mathbf{\Psi}=(M_{k},\Phi_{k})_{k\ge 1} is given along with the sequences of parameters D_{k},

    \varepsilon''_{k}, \varepsilon_{k}, and fields \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k}. Assume that each \varphi_{k} aggregates field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k} into \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k+1}, as in Definition 4.9.

    1. \mathbf{\Psi} has the trickle-down property if for each k, the simulation \Phi_{k} has the trickle-down property of \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k+1} to \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k} with parameters D_{k}, D_{k+1} and \varepsilon''_{k}, as in Definition 4.25.

    2. Suppose that the sequence \varepsilon_{k}>0, k=1,2,\dots is given with \sum_{k}\varepsilon_{k}<1/6, and also a configuration \xi of M_{1} that is a code configuration of the code sequence (\varphi_{k}) (as introduced in Definition 5.3). We say that \mathbf{\Psi} has the initial stability property with respect to the initial configuration \xi and parameters ((\varepsilon_{k},{T}_{k}))_{k\ge 1} if for each k the medium M_{k} has the initial stability property for initial configuration \xi^{k} and parameters (\varepsilon_{k},2D_{k}).

    Lemma

    Lemma 5.12 (Initially stable trickle-down amplifier)

    GAK1

    We can construct the following objects.

    Cjenum.
  • Parameters \varepsilon_{k}<\varepsilon''_{k}, {B} _{1}, {Q}_{k}, D_{k} with D_{k+1} \ge D_{k} for k\ge 1, with \sum_{k}\varepsilon''_{k}<1/6.

  • Media M_{k} with local state spaces {\mathbb{S}}_{k}, with a distinguished field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k}.

    \begin{aligned} M_{1} = \ensuremath{\mathord{\textit{CA\/}}}_{\varepsilon_{1}}(\ensuremath{\mathord{\textit{Tr\/}}}_{1}, {B} _{1}, {T}_{1}, \mathbf{Z}), \end{aligned}

    and an amplifier \mathbf{\Psi}=((M_{k}),(\Phi_{k})) with simulations \Phi_{k}=(\varphi_{k},\Phi_{k}^{*})

    where the codes \varphi_{k} are block codes with blocksize {Q}_{k} that are aggregating field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k} into field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k+1} as per Definition 4.9,

    and where \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k} controls address 1 as in Definition 4.10.

  • For each infinite sequence \rho\in\Sigma_{0}^{*} an initial configuration \xi^{1}=\psi_{*}(\rho) of M_{1} as obtained in Proposition 5.7 such that for each k the sequence \xi^{k} covers the space with non-vacant cells of M_{k}.

  • \mathbf{\Psi} is trickle-down and initially stable for \xi, with the parameter sequences (\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k}), (D_{k}) , (\varepsilon''_{k}), (\varepsilon_{k}).

  • Definition

    Definition 5.13 (Error-correcting code)

    8FN8

    A block code \varphi=(\varphi_{*}, \varphi^{*}) with \varphi^{*}: R^{{Q} }\to S will be called is t-error-correcting if for all x\in\Sigma, y\in\Sigma^{\\Q } we have \varphi^{*}(y)=x whenever y differs from \varphi_{*}(x) in at most t symbols. It is (\beta,t)-burst-error-correcting if for all x\in S, y\in R^{\\Q } we have \varphi^{*}(y)=x whenever y differs from \varphi_{*}(x) in at most t intervals of size \le\beta. For such a code, we will say that a word y\in R^{\\Q } is (\beta, r)-compliant if it differs from a codeword of the code by at most r intervals of size \le\beta.

    Assume that strings R and S are in \{0,1\}^{*}. In the context of error-correcting codes, elements of R will be called the symbols of the codewords, as opposed to bits, since each symbol may consist of several bits.

    Example

    Example 5.14

    PVSU

    A popular kind of error-correcting code are codes \psi such that \psi_{*} is a linear mapping when the binary strings in S and R^{{Q} } are considered vectors over the field \{0,1\}. These codes are called linear codes. It is sufficient to consider linear codes \psi that are systematic: for all s, the first {\lVert S\rVert} bits of the codeword \psi_{*}(s) are identical to s: they are called the information bits. (If a linear code is not such, it can always be rearranged to have this property.) In this case, the remaining bits of the codeword are called error-check bits, and they are linear functions of s. For correcting a single error, in the tripling method outlined in Section ?, the error check bits are simply the twice repeated information bits.

    Example

    Example 5.15

    MWE4

    Here we define the linear code we will be using in later construction (a generalization of the so-called Reed-Solomon code, see [Blahut83]). In its application in our paper only its basic quantitative properties are used, so the details can safely be skipped at first reading.

    Let our codewords (information symbols and check symbols together) be binary strings of length N l:cap@N.)))l.))) for some l, N. The symbols of our codewords, binary strings of length l, will be interpreted as elements of the finite field \mathrm{GF}(2^{l})\mathrm{GF}(2^{l}).))) and thus, each binary string c of length N l will be treated as a vector \mathopen( c(0),\dots,c(N - 1)\mathclose) over \mathrm{GF}(2^{l}). (Note that the word “field” is used in two different senses in the present paper.) Let us fix N distinct nonzero elements \alpha_{i}.greek@\alpha_{i}.))) of \mathrm{GF}(2^{l}) and let t < N/2 be a positive integer. The codewords are those vectors c that satisfy the equations

    \sum_{i = 0}^{N - 1}\alpha_{i}^{j}c(i).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}^{k} = 0\ (j = 1,\dots, 2t)

    where the addition, multiplication and taking to power j are performed in the field \mathrm{GF}(2^{l}). These are 2t linear equations. If we fix the first N - 2t elements of the vector in any way, (these are the information symbols) the remaining 2t elements (the error check symbols) can be chosen in a way to satisfy the equations. This set of equations is always solvable, since its determinant is a Vandermonde determinant.

    Below, we will show a procedure for correcting any \nu \le t nonzero errors. This demonstrates that for the correction of error in any \le t symbols, only 2t error-check symbols are needed. (Robert Solovay noticed that in our applications, with a little deterioration of efficiency, even the most brute-force decoding algorithm is sufficient. We will never have to correct more than some constant number c of errors, so the complexity of decoding would never go much over n^{c} steps.)

    If E =\mathopen( e_{0},\dots, e_{N - 1}\mathclose) is the sequence of errors then C + E will be the observed the word. Only e_{i_{r }} are nonzero for r =1,\dots,\nu. Let Y_{r }=e_{i_{r }}, X_{r }=\alpha_{i_{r }}. We define the syndrome S_{j} for j=1,\dots,2t by

    \label{eq:S_{j}} S_{j} = \sum_{i} (c_{i}+e_{i})\alpha_{i}^{j} = \sum_{i} e_{i}\alpha_{i}^{j} = \sum_{r } Y_{r } X_{r }^{j}

    which can clearly be computed from the codeword: it is the amount by which the codeword violates the j-th error check equation. We will show, using the last expression, that Y_{r } and X_{r } can be determined using S_{j}. Define the auxiliary polynomial

    \Lambda(x)=\prod_{r }(1-xX_{r })=\sum_{s=0}^{\nu} \Lambda_{s} x^{s}

    whose roots are X_{r }^{-1}. Let us show how to find the coefficients \Lambda_{s} for s>0. We have, for any r = 1,\dots, \nu, and any j = 1, \dots, 2t - \nu:

    0 = Y_{r }X_{r }^{j+\nu}\Lambda(X_{r }^{-1}) = \sum_{s} \Lambda_{s} Y_{r } X_{r }^{j+\nu-s}.

    Hence, summing for r,

    0 = \sum_{s = 0}^{\nu} \Lambda_{s}(\sum_{r } Y_{r } X_{r }^{j+\nu-s}) = \sum_{s = 0}^{\nu} \Lambda_{s} S_{j+\nu-s}\ (j = 1,\dots, 2t - \nu)

    hence using \Lambda_{0}=1, \sum_{s=1}^{\nu} \Lambda_{s} S_{j+\nu-s}=-S_{j+\nu}. This is a system of linear equations for \Lambda_{s} whose coefficients are the syndroms, known to us, and whose matrix M_{\nu} is nonsingular. Indeed, M_{\nu} = ABA^{T} where B is the diagonal matrix {\mathopen\langle Y_{r }X_{r }\mathclose\rangle} and A is the Vandermonde matrix A_{j,r }=X^{j-1}_{r }.

    A decoding algorithm now works as follows. For \nu = 1,2,\dots,t, see if M_{\nu} is nonsingular, then compute \Lambda(x) and find its roots by simple trial-and-error, computing \Lambda(\alpha_{i}^{-1}) for all i. Then, find Y_{r } by solving the set of equations (?) and see if the resulting corrected vector C satisfies (?). If yes, stop. (There is also a faster way for determining \Lambda(x), via the Euclidean algorithm, see [Blahut83]).

    To make the code completely constructive we must find an effective representation of the field operations of \mathrm{GF}(2^{l}). This finite field can be efficiently represented as the set of remainders with respect to an irreducible polynomial of degree l over \mathrm{GF}(2), so what is needed is a way to generate large irreducible polynomials. Now, it follows from the theory of fields that

    x^{2\cdot 3^{s}} + x^{3^{s}} +1

    is irreducible over \mathrm{GF}<(2) for any s. So, the scheme works for all l of the form 2\cdot 3^{s}.

    Example

    Example 5.16

    JP82

    Let us use the notation of Proposition 5.7 with a_{k}=1 for all k. Our goal is to give more details of state spaces {\mathbb{S}}_{k} and codes \varphi_{k} satisfying the conditions of that Proposition. See Figure ?. The error check symbols for \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k} are on a track \ensuremath{\mathord{\textsf{\slshape{Redun\/}}}}^{k}. As the address a_{k}=1 is controlled by \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k}, the cell with address 1 is not used for error checks. The other parts of the information needed to represent the big cell are on track \ensuremath{\mathord{\textsf{\slshape{L\/}}}}^{k}. It contains in its different segments the fields \ensuremath{\mathord{\textsf{\slshape{L\/}}}}^{k+1}, \ensuremath{\mathord{\textsf{\slshape{Redun\/}}}}^{k+1}, \ensuremath{\mathord{\textsf{\slshape{Work\/}}}}^{k+1} of the big cell represented by the colony, as well as its own error check symbols. There is also a collection of tracks shown here as a single track \ensuremath{\mathord{\textsf{\slshape{Work\/}}}}^{k}: it contains for example \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}^{k}, \ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}^{k}.

    Proposition

    Proposition 5.17

    BRS1

    In a hierarchical code (\varphi_{k}) let \ensuremath{\mathord{\textsf{\slshape{H\/}}}}_{k} denote any track of M_{k} that is not needed to restore information in a cell of M_{k+1} from the colony coding it. (It may contain error-checks or other administrative information like addresses.) Then \sum_{k} |\ensuremath{\mathord{\textsf{\slshape{H\/}}}}_{k}|/\ensuremath{\mathord{\textit{Cap\/}}}_{k} < 1.

    Notation

    Notation 6.1

    ON9W

    Let {\Lambda}(n).cap.s@{\Lambda}(n).))) be an increasing sequence of finite subsets of {\Lambda} with \bigcup_{n}{\Lambda}(n)={\Lambda}, for example

    {\Lambda}(n)=([-n,n]\cap \mathbb{Z})^{d}

    if {\Lambda}=\mathbb{Z}^{d}. We can view an element {\mathbf{s}} of {\mathbb{S}}^{{\Lambda}(n)} as a vector whose components are indexed with the elements of {\Lambda}(n). For a measure \nu over configurations, denote :greek@\nu({\mathbf{s}}).)))

    \nu({\mathbf{s}})= \nu\mathopen\{\mskip 1mu\xi : \xi(x) = s_{x}\text{ for all }x\in{\Lambda}(n)\mskip 1mu\mathclose\}.

    For n=0, we have the special case \nu(s)=\nu\mathopen\{\mskip 1mu\xi : \xi(0)=s\mskip 1mu\mathclose\}.

    If (\mu,\eta) is a random trajectory of a probabilistic cellular automaton then let \mu^{t}.greek@\mu^{t}.))) be the distribution of the configuration \eta(\cdot,t).

    Definition

    Definition 6.2 (Weak convergence)

    HQQP

    A sequence \nu_{k} of measures over {\mathbb{S}}^{{\Lambda}} weakly converges to measure \nu if \lim_{k}\nu_{k}({\mathbf{s}})=\nu({\mathbf{s}}) for all n and for all {\mathbf{s}}\in{\mathbb{S}}^{{\Lambda}(n)}.

    Definition

    Definition 6.3 (Markov operator, invariance)

    TTN3

    Assuming for simplicity, {\Lambda}=\mathbb{Z}, we define the Markov operator P on measures by

    (P\mu)({\mathbf{s}})= \sum_{\mathbf{r}} \prod_{j=-n+1}^{n-1} \mathbf{P}(s_{j},(r_{j-1},r_{j},r_{j+1})) \mu({\mathbf{r}})

    where the summation goes over all possible strings \mathbf{r}=(r_{-n},\dots,r_{n})\in{\mathbb{S}}^{2n+1}. Given a Markov operator, we call a measure \alpha over configurations invariant if P\alpha=\alpha.

    Remark

    Remark 6.5

    NFKY

    No examples are known of noisy cellular automata over an infinite space that satisfy 6.4 but not 6.4. In one dimension and continuous time there is no such example, as shown in [Mountford95].

    Definition

    Definition 6.6 (Toom rule)

    BVY2

    A deterministic cellular automaton R:cap@R.))) given by Toom can be defined as follows. We start from a two-dimensional deterministic cellular automaton R with set of states \{0,1\}, by the neighborhood H= \mathopen\{(0,0),(0,1),(1,0)\mathclose\}. The transition function \ensuremath{\mathord{\textit{Tr\/}}}_R(x_{1},x_{2},x_{3}) is the majority of x_{1},x_{2},x_{3}.

    Remark

    Remark 6.7

    NEKG

    The notion of ergodicity was defined only for trajectories of R_{\varepsilon} that are also trajectories of some probabilistic cellular automaton R' (as defined in Section ?) such that R'\subseteq R_{\varepsilon}, that is that all trajectories of R' are trajectories of R_{\varepsilon}. The difference between R_{\varepsilon} and R' is that the local transition probabilities of a trajectory of R' are fixed and the same everywhere in space-time, while R_{\varepsilon} requires them only to be within some range. Toom’s theorem implies that no such R' is ergodic.

    Definition

    Definition 6.8 (Variation distance)

    N0HV

    Let us define the variation distance for measures \mu and \nu are restricted to {\mathbb{S}}^{{\Lambda}(n)}: d^{n}(\mu, \nu).)))

    d^{n}(\mu,\nu) = \sum\mathopen\{\mskip 1mu|\mu({\mathbf{s}})-\nu({\mathbf{s}})|\text{ for all } {\mathbf{s}}\in{\mathbb{S}}^{{\Lambda}(n)}\mskip 1mu\mathclose\}.
    Definition

    Definition 6.9

    ZAAV

    For the set of sites .cap@{\Lambda}_{m}.)))

    {\Lambda}_{m}=\mathbb{Z}_{m}\times\mathbb{Z}_{m}

    where m can be finite or infinite, suppose that the local transition matrix (for simplicity, with nearest-neighbor interaction) gives rise to an ergodic Markov process with Markov operator P_{m}.cap@P_{m}.))). Let :cap@D^{n}_{m}(t).)))

    D^{n}_{m}(t) = \bigvee_{\mu,\nu} d^{n}(P_{m}^{t}\mu, P_{m}^{t}\nu),

    where the dependence on the transition matrix is understood but is not shown.

    Definition

    Definition 6.10 (Relaxation time)

    EJKI

    We will call the function r_{m}(n,\delta).)))

    r_{m}(n,\delta) := \sup\mathopen\{\verythinmathskipt : D^{n}_{m}(t)>\delta\mskip 1mu\mathclose\}<\infty

    the relaxation time.

    Lemma

    Lemma 6.11

    807I

    For all n<(m-1)/2, for all \delta with r_{\infty}(n,\delta)<(m-1)/2-n we have

    r_{m}(n,\delta)\le r_{\infty}(n,\delta).
    Example

    Example 6.12

    BDOW

    Let \xi_{0} be the configuration over the one-dimensional integer lattice that is 0 in the even places and 1 in odd places, and \xi_{1} the one that is 1 in the even places and 0 in the odd places. For b=0,1 let \mu_{b} be the measure concentrated on \xi_{b}, and let P be the linear operator obtained from some transition function. Suppose that the measures P^{n}\mu_{0} converge to some measure \nu_{0}. Then the measures P^{n}\mu_{1} converge to some measure \nu_{1}. Even if \nu_{1} is different from \nu_{0} they differ only by a translation in space. If the translations of \nu_{0} are the only invariant measures of P then we would still say that in some sense, P loses all information about the initial configuration: we might say, it loses all “local” information. Indeed, a cell has no way of knowing whether it has even or odd coordinates.

    Definition

    Definition 6.13

    ECL7

    We can call the Markov operator P strongly not forgetful if it has two disjoint (weakly) closed translation-invariant sets of measures.

    Definition

    Definition 6.14

    EV8A

    Let us be given an arbitrary one-dimensional transition function \ensuremath{\mathord{\textit{Tr\/}}} and the integers N,L. We define the three-dimensional transition function \ensuremath{\mathord{\textit{Tr\/}}}' as follows. The interaction neighborhood is H\times\{-1,0,1\} with the neighborhood H defined in Section ? above. The transition function \ensuremath{\mathord{\textit{Tr\/}}}' says: in order to obtain your state at time t+1, first apply the transition function R in each plane defined by fixing the third coordinate. Then, apply transition function \ensuremath{\mathord{\textit{Tr\/}}} on each line obtained by fixing the first and second coordinates. (The papers [GacsReif3dim88] and [Gacs2dim89] use a neighborhood instead of H that makes some proofs easier: the northern, south-eastern and south-western neighbors.)

    For an integer m, define the space {\Lambda} =\mathbb{Z}_{m}^{2}\times \mathbb{Z}_{N}. For a trajectory \xi of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}) on \mathbb{Z}_{N}, define the trajectory \zeta of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}') on {\Lambda} by

    \zeta(i,j,n,t)=\xi(n,t).

    Thus, each cell of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}) is repeated m^{2} times, on a whole “plane” (a torus for finite m) in {\Lambda}.

    Proposition

    Proposition 6.15 (Gács-Reif)

    BIEP

    There are constants \varepsilon_{0},c_{1},d_{1}>0 such that the following holds. For all N,L, and m=c_{1} \log(N L), for any trajectory \xi of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}) over \mathbb{Z}_{N}, if the trajectory \zeta of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}') is defined by (?) then for any \varepsilon<\varepsilon_{0}, any trajectory (\mu,\eta) of \ensuremath{\mathord{\textit{CA\/}}}_{\varepsilon}(\ensuremath{\mathord{\textit{Tr\/}}}') such that \eta(\cdot,0)=\zeta(\cdot,0) we have for all t in (0,L] and all w\in {\Lambda}

    \mu\mathopen\{\mskip 1mu\eta(w,t)\ne \zeta(w,t)\mskip 1mu\mathclose\} \le d_{1}\varepsilon .
    Theorem

    Theorem 6 (Reliable computation in finite or infinite space)

    VH7M

    Let \ensuremath{\mathord{\textit{Tr\/}}} be a standard computing transition function over an alphabet \Sigma, and \delta>0 a constant. There is

    • a transition function \ensuremath{\mathord{\textit{Tr\/}}}' with a state space {\mathbb{S}} having fields \ensuremath{\mathord{\textsf{\slshape{Input\/}}}}, \ensuremath{\mathord{\textsf{\slshape{Output\/}}}};

    • a code \psi_{*}: \Sigma_{0}^{*}\to {\mathbb{S}}^{*} with |\psi_{*}(\rho)|\le 2|\rho|,

    • constants c_{1}, c_{2}>1

    such that the following holds for all sufficiently small \varepsilon. Let N be the size of our space, and \rho\in\Sigma_{0}^{*} with 2|\rho|<N, \varepsilon<\varepsilon_{0}. Let \zeta(x,t) be any trajectory of \ensuremath{\mathord{\textit{Tr\/}}} with \zeta(x,0).\ensuremath{\mathord{\textsf{\slshape{Input\/}}}}=\rho(x) for x\in\left[0,|\rho|\right) and filled with *’s otherwise. Let \eta be any trajectory over the space \mathbb{Z}^{N} of an \varepsilon-perturbation of \ensuremath{\mathord{\textit{Tr\/}}}', with \eta(\cdot,0)=\ensuremath{\mathord{\textit{Init\/}}}_{\psi_{*}}(\rho). For all sufficiently small \varepsilon, for all t for which \zeta(\cdot,t) does not use more space than N, all t'>t\cdot h_{1}(t,c_{1}), all x\in\mathbb{Z} we have

    \operatorname{\mathsf P}\mathopen\{\mskip 1mu\zeta(x, t).\ensuremath{\mathord{\textsf{\slshape{Output\/}}}} \not\preceq \eta(x, t').\ensuremath{\mathord{\textsf{\slshape{Output\/}}}}\mskip 1mu\mathclose\} < \delta + t'\varepsilon^{h_{0}(N,c_{2})}.
    Example

    Example 7.1

    8BXJ

    Let V=(a_{1},a_{2}]\times(t,u], {B} < d = 0.2 (a_{2}-a_{1}). Suppose that we are given some {\mathbf{r}}\in{\mathbb{S}}^{3}, s\in{\mathbb{S}}. Let {g}(\eta)=1 if there is a space-time point (x,t_{0}) in V, and an \varepsilon<d such that \eta(x+i{B} ,t)=r_{i} for i = -1, 0, 1 during the interval \left[t_{0}-\varepsilon,t_{0}\right) and \eta(x,t_{0})=s. Thus, the event {g}(\eta)=1 marks a certain kind of transition in the window.

    Definition

    Definition 7.2 (Trajectory)

    RM83

    A random history \eta will be called a trajectory of medium M given in (?) if for each time u\ge 0, for each set of disjoint local conditions

    (\alpha_{i},V_{i})_{i\le N}

    with (\cmforall{i})\inf\boldsymbol{\pi}_{\text{t}} V_{i}\ge u (where \inf\emptyset=\infty), we have

    \operatorname{\mathsf{E}}{\Bigl[ \prod_{i}{g}(\alpha_{i}, V_{i},\eta)\Bigm\vert \mathcal{A}_{<u}\Bigr]} \le \prod_{i} b(\alpha_{i}).
    Example

    Example 7.3

    23I8
    Sloppypar.

    Let us be given a probabilistic cellular automaton \ensuremath{\mathord{\textit{PCA\/}}}(\mathbf{P},{B} ,{T} ). For each state vector {\mathbf{r}}\in {\mathbb{S}}^{3} and state s, let us form type \alpha(s,{\mathbf{r}}). The condition of this type will say that the transition rules are obeyed at times of the form n{T}. Namely for cell x, time t of the form n{T} with n>0, let

    \begin{aligned} {g}\bigl(\alpha(s,{\mathbf{r}}),\;\{x\} &\times(t-{T} ,t],\;\eta\bigr) \\ &= \{ \eta(x+i{B} ,t-{T} /2)=r_{i}\;(i=-1,0,1),\;\eta(x,t)=s \}, \\ b(\alpha(s,r)) &= \mathbf{P}(s,{\mathbf{r}}). \end{aligned}

    For all cells x and rational times u we define a new type \beta=\beta(x,u) by b(\beta(x,u)) = 0 and

    {g}{\bigl(\mskip 1mu\beta(x,u),\;\{x\}\times[{T} {\lfloor u/{T} \rfloor},u],\;\eta\mskip 1mu\bigr)} = \mathopen\{\mskip 1mu\eta(x,u)\ne\eta(x,{T} {\lfloor u/{T} \rfloor})\mskip 1mu\mathclose\}.

    This condition says that \eta(x,u)=\eta(x,{T} {\lfloor u/{T} \rfloor}) with probability 1. For all other combinations \alpha,V we set {g}(\alpha,V,\eta)=0. It is easy to see that the trajectories of \ensuremath{\mathord{\textit{PCA\/}}}(\mathbf{P},{B} ,{T} ) are trajectories of the medium defined this way.

    Definition

    Definition 7.4 (Local state subset functions)

    C1AO

    In a probabilistic cellular automaton \ensuremath{\mathord{\textit{PCA\/}}}(\mathbf{P},{B} ,{T} ) for each set of states E and state vector {\mathbf{r}}=(r_{-1},r_{0},r_{1}) let \mathbf{P}(E,{\mathbf{r}})=\sum_{q\in E}\mathbf{P}(q,{\mathbf{r}}). Let \mathbf{K}.cap@\mathbf{K}.))) be the set of functions K:{\mathbb{S}}^{3}\to 2^{{\mathbb{S}}} such that

    K({\mathbf{r}})\subseteq \mathopen\{\verythinmathskips\ne r_{0}: \mathbf{P}(s,{\mathbf{r}})>0\mskip 1mu\mathclose\}.

    For a space-time trajectory \eta and a K\in\mathbf{K} let us write .cap@\overline{K}(x,t,\eta).)))

    \overline{K}(x,t,\eta)=K(\eta(x-{B} ,t), \eta(x,t), \eta(x+{B} ,t)).

    For all K',K''\in\mathbf{K} with K'\supseteq K'' (that is K'({\mathbf{r}})\supseteq K''({\mathbf{r}}) for all {\mathbf{r}}), let .cap@c(K',K'').)))

    c(K',K'') =\bigvee_{{\mathbf{r}}} \frac{\mathbf{P}(K''({\mathbf{r}}),{\mathbf{r}})}{\mathbf{P}(K'({\mathbf{r}}),{\mathbf{r}})}

    be the maximum conditional probability, over all {\mathbf{r}}, of getting into the set K''({\mathbf{r}}) provided we get into the set K'({\mathbf{r}}).

    In case of a continuous-time cellular automaton \ensuremath{\mathord{\textit{CCA\/}}}(\mathbf{R},{B} ), for any functions K,K',K''\in\mathbf{K} with \mathbf{R}(K,{\mathbf{r}}) = \sum_{q\in K}\mathbf{R}(q,{\mathbf{r}}) we define the corresponding quantity c(K',K'').)))

    \begin{aligned} c(K',K'') = \bigvee_{{\mathbf{r}}}\frac{\mathbf{R}(K''({\mathbf{r}}),{\mathbf{r}})}{\mathbf{R}(K'({\mathbf{r}}),{\mathbf{r}})}. \end{aligned}
    Example

    Example 7.5

    IT3E

    In case of a probabilistic cellular automaton \ensuremath{\mathord{\textit{PCA\/}}}(\mathbf{P},{B} ,{T} ), for each pair of such functions K',K''\in \mathbf{K} with K'\supseteq K'' let us form the type .greek@\alpha(K',K'').)))

    \alpha =\alpha(K', K'').

    For each cell x and times u\le v of the form n{T}, let us form the rectangle V=\{x\}\times(u,v]. For each such pair \alpha,V let {g}(\alpha,V,\eta)=1 if there is a first t\in(u,v] with \eta(x,t)\in \overline{K}'(x,t-{T} ,\eta) and in it, we have \eta(x,t)\in \overline{K}''(x,t-{T} ,\eta). Also, let b(\alpha)=c(K',K''). The condition of type \alpha bounds the probability that as soon as we get into the set K' we also get into the set K''.

    Proposition

    Proposition 7.6

    R3LQ

    If M is the medium defined by the conditions above then all trajectories of \ensuremath{\mathord{\textit{PCA\/}}}(\mathbf{P}, {B} , {T} ) are trajectories of M.

    Example

    Example 7.7

    WOWX

    In case of a continuous-time cellular automaton \ensuremath{\mathord{\textit{CCA\/}}}(\mathbf{R},{B} ) we define each \alpha(K',K''), V=\{x\}\times(u,v] and {g}(\alpha,V,\eta) as in Example 7.5, but now for all rational u<v.

    Theorem

    Theorem 7

    3KX2

    Every trajectory of \ensuremath{\mathord{\textit{CCA\/}}}(\mathbf{R},{B} ) is a trajectory of the medium defined in the above example.

    Definition

    Definition 7.8 (Stopping time)

    BUX9

    A real random variable \sigma with values in \left[0,\infty\right) is a stopping time if for each t the event \{\sigma\le t\} is in \mathcal{A}_{t}. Let \mathcal{A}_{\sigma}.cap@\mathcal{A}_{\sigma}.))) be the algebra of events A with the property that A\cap\{\sigma\le t\}\in \mathcal{A}_{t}.

    Definition

    Definition 7.9 (Constraint process)

    5QSZ

    For some time interval J\subset(0,\infty], assume that there is a stopping time \sigma\in J, and random variables \alpha(\eta)\in\mathbb{T}, V(\eta)\in\ensuremath{\mathord{\textit{Rectangles\/}}} .cap@V^{t}(\eta).))) measurable in \mathcal{A}_{\sigma}, with

    \boldsymbol{\pi}_{\text{t}} V^{\sigma}(\eta)\subseteq J\cap[\sigma,\infty].

    The tuple (J,\sigma,\alpha(\eta),V(\eta)) will be called a constraint process.

    Definition

    Definition 7.10 (Strong trajectory)

    RCQ9

    A random history \eta will be called a strong trajectory if for each system of disjoint constraint processes

    \begin{aligned} (J,\sigma_{i},\alpha_{i}(\eta), V_{i}(\eta))_{i\in N} \end{aligned}

    (where V_{i}(\eta) are disjoint for each \eta), h an event function over \mathcal{A}_{<\boldsymbol{\pi}_{\text{t}} J}, we have

    \operatorname{\mathsf{E}}{\bigl(\mskip 1mu h \prod_{i}{g}(\alpha_{i}(\eta),V_{i}(\eta),\eta)\mskip 1mu\bigr)} \le \operatorname{\mathsf{E}} h\operatorname{\mathsf{E}}\prod_{i} b(\alpha_{i}(\eta)).
    Proposition

    Proposition 7.12

    BFSX

    Proposition 7.6 and Theorem 7 can be strengthened: all trajectories of \ensuremath{\mathord{\textit{PCA\/}}}(\mathbf{B}, {B} , {T} ) and \ensuremath{\mathord{\textit{CCA\/}}}(\mathbf{R},{B}) are strong trajectories of the corresponding media.

    Definition

    Definition 7.13

    3DH5

    Let M, M^{*} be media where the functions g,b define the constraints on M, and g^{*},b^{*} define those for M^{*}, and let \varphi^{*} be a mapping from the histories of M into those of M^{*}: we will write \eta^{*}=\varphi^{*}(\eta). We say that \varphi^{*} is a canonical simulation map if the following holds. Let (\alpha,V) be any local condition for M^{*} with \alpha\in\mathbb{T}^{*}. Then there is a system of constraint processes \beta_{i,j}(\alpha).))) W^{t}_{i,j}(\eta).))) \tau_{i,j}.)))

    {\bigl(\mskip 1mu\boldsymbol{\pi}_{\text{t}} V, \tau_{i,j},\beta_{i,j}(\eta), W_{i,j}(\eta)\mskip 1mu\bigr)}

    with i=1,\dots,n(\alpha,V), j=1,\dots,k(\alpha,V,i) with the following properties. For each fixed i, the subsystem containing elements for that i forms a system of disjoint constraint processes with W_{i,j}(\eta)\subseteq V, and for almost all \eta we have

    \begin{aligned} {g}^{*}(\alpha,V,\eta^{*}) & \le \sum_{i}\prod_{j}{g}(\beta_{i,j}(\eta), W_{i,j}(\eta),\eta), \\ b^{*}(\alpha) &\ge \sum_{i}\prod_{j} b(\beta_{i,j}(\eta)). \end{aligned}
    Theorem

    Theorem 8

    TH1G

    If \varphi^{*} is a canonical simulation map then for each strong trajectory \eta of M, the expression \varphi^{*}(\eta) defines a strong trajectory of M^{*}.

    Proof of Theorem 8

    et \eta be a strong trajectory of M and

    \begin{aligned} (J, \sigma_{l}, \alpha_{l}(\eta^{*}),V_{l}(\eta^{*}))_{l\in N} \end{aligned}

    a system of disjoint random local conditions in M^{*}. Let h be an event function measurable in \mathcal{A}_{<\inf J}. We must show

    \operatorname{\mathsf{E}} {\bigl(\verythinmathskiph\prod_{l}{g}^{*}_{l}(\alpha_{l}(\eta^{*}),V_{l}(\eta^{*}),\eta^{*})\mskip 1mu\bigr)} \le \operatorname{\mathsf{E}} h \operatorname{\mathsf{E}}\prod_{l} b^{*}(\alpha^{\sigma_{l}}_{l}(\eta^{*})).

    By the assumption, for each value (a,v) of the random (\alpha_{l}(\eta^{*}), V_{l}(\eta^{*})) there is a system of constraint processes

    {\bigl(\mskip 1mu\boldsymbol{\pi}_{\text{t}} v,\tau_{l,i,j}(a,v),\beta_{l,i,j}(a,v,\eta), W_{l,i,j}(a,v,\eta)\mskip 1mu\bigr)}

    for i=1,\dots,n(a,v), j=1,\dots,k(a,v,i), with the properties defined for canonical simulations, so \tau_{l.i,j}\in\boldsymbol{\pi}_{\text{t}} v. This implies

    \begin{aligned} \tau_{l,i,j}(\alpha_{l}(\eta^{*}),V_{l}(\eta^{*}))\ge\sigma_{l} \end{aligned}

    for all l,i,j. We will use the shorthand notation

    \begin{aligned} \bar W_{l,i,j}(\eta)=W_{l,i,j}(\alpha_{l}(\eta^{*}),V_{l}(\eta^{*}),\eta), \end{aligned}

    and \bar\tau_{l,i,j}, \bar \beta_{l,i,j}(\eta) means similarly not showing the dependence on \alpha_{l},V_{l}.

    Claimnonumber.

    For each l,i,j, the tuple

    \begin{aligned} (J,\bar\tau_{l,i,j},\bar\beta_{l,i,j}(\eta), \bar W_{l,i,j}(\eta)) \end{aligned}

    is a constraint process.

    Proof.

    Let us first show that \bar\tau_{l,i,j} is a stopping time. Let

    \begin{aligned} E_{a,v}\mathrel{\;\Leftrightarrow\;} (\alpha_{l}(\eta^{*}),V_{l}(\eta^{*}))=(a,v). \end{aligned}

    We have

    \begin{aligned} \bar\tau_{l,i,j}\le t \mathrel{\;\Leftrightarrow\;} \bigvee_{a,v}\tau_{l,i,j}(a,v)\le t\land E_{a,v}. \end{aligned}

    From (Proof) we get that \bar\tau_{l,i,j}\le t implies \sigma_{l}\le t, therefore

    \begin{aligned} \bar\tau_{l,i,j}\le t\land E_{a,v}\mathrel{\;\Leftrightarrow\;} \bar\tau_{l,i,j}\le t\land\sigma_{l}\le t\land E_{a,v}. \end{aligned}

    By the definition of stopping times, \{\tau_{l,i,j}(a,v)\le t\}\in\mathcal{A}_{t}. Because (Proof) is a constraint process for each l, we have also

    \begin{aligned}\label{eq:E_{a,v}} \{\sigma_{l}\le t\land E_{a,v}\}\in\mathcal{A}_{t}, \end{aligned}

    hence the countable union (?) is also in \mathcal{A}_{t}. Similarly, for all (b, w)\in \mathbb{T}\times\ensuremath{\mathord{\textit{Rectangles\/}}}, the event

    \begin{aligned} \bar\tau_{l,i,j}\le t \land (\bar\beta_{l,i,j}(\eta),\bar W_{l,i,j}(\eta))=(b,w) \end{aligned}

    can be written as

    \begin{aligned} \bigvee_{a,v}{\bigl(\mskip 1mu\sigma_{l}\le t \land E_{a,v}\land \bar\tau_{l,i,j}\le t \land (\beta_{l,i,j}(a,v,\eta),W_{l,i,j}(a,v,\eta))=(b,w)\mskip 1mu\bigr)}. \end{aligned}

    We have seen (?), (?), and because (Proof) is a system of constraint processes, also

    \begin{aligned} \{\bar\tau_{l,i,j}\le t\land (\beta(a,v,\eta),W_{l,i,j}(a,v,\eta))=(b,w)\}\in\mathcal{A}_{t} , \end{aligned}

    therefore (?) is in \mathcal{A}_{t}.

    By (7.13) we have, with \bar\alpha_{l}=\alpha_{l}(\eta*), \bar V_{l}=V_{l}(\eta^{*}) and the notation in (Proof)

    {g}^{*}(\bar\alpha_{l},\bar V_{l},\eta^{*}) \le \sum_{i=1}^{n}\prod_{j=1}^{k} {g}(\bar\beta_{l,i,j}(\eta),\eta),\bar W_{l,i,j}(\eta),\eta).

    Here we did not make n dependent on \bar\alpha_{l}, \bar V_{l}, nor k dependent on these and i, setting them to the maxima of all the possible values. Recall the special types \omega, \delta defined in (?). Whenever i>n(\bar\alpha_{l},\bar V_{l}), we set \beta_{l,i,j}=\omega, meaning that the ith additive term is omitted. And whenever j>k(\bar\alpha_{l},\bar V_{l},i), we set \beta_{l,i,j}=\delta, meaning that the jth multiplicative factor is omitted. Now

    \prod_{l} b^{*}(\bar\alpha_{l})\ge \prod_{l}\sum_{i}\prod_{j}b(\bar\beta_{l,i,j}(\eta)) = \sum_{i(\cdot)}\prod_{l,j} b(\bar\beta_{l,i(l),j}(\eta))

    where the last sum is over all functions i(\cdot) with i(l)\in[1,n]. Similarly, by (?)

    {g}^{*}(\bar\alpha_{l},\bar V_{l},\eta^{*}) \le \sum_{i(\cdot)}\prod_{l,j}{g}(\bar\beta_{l,i,j}(\eta),\bar W_{l,i,j}(\eta),\eta).

    Therefore it is sufficient to show for a fixed function i(\cdot),

    \operatorname{\mathsf{E}} {\bigl(\verythinmathskiph\prod_{l,j} g(\bar\beta_{l,i(l),j}(\eta),\bar W_{l,i(l),j}(\eta),\eta)\mskip 1mu\bigr)} \le \operatorname{\mathsf{E}} h\operatorname{\mathsf{E}}\prod_{l,j} b(\bar\beta_{l,i(l),j}(\eta)).

    For any l,i, the rectangles \bar W_{l,i,j}(\eta) defined in (Proof) are all disjoint, and belong to V_{l}(\eta^{*}). Also the sets V_{l}(\eta^{*}) are disjoint, therefore all rectangles \bar W_{l,i(l),j}(\eta) are disjoint. The Claim has shown that the system

    {\bigl(\verythinmathskipJ,\bar\tau_{l,i(l),j},\bar\beta_{l,i(l),j}(\eta), \bar W_{l,i(l),j}(\eta)\mskip 1mu\bigr)}_{l\in N}

    is a system of disjoint constraint processes for M, and hence the proof is finished by the strong trajectory property of \eta.

    Example

    Example 7.14

    DAWL

    Let M_{1} be the \varepsilon-perturbation \ensuremath{\mathord{\textit{CA\/}}}_{\varepsilon}(\ensuremath{\mathord{\textit{Tr\/}}},{B}_{1},{T}_{1}) of the cellular automaton with {\mathbb{S}}_{1}=\{0,1\} and the trivial transition function \ensuremath{\mathord{\textit{Tr\/}}}(x,y,z)=0 for all x,y,z. Then \eta is a trajectory if for t>0, \eta(x,t) are random variables such that for any u and any finite set S of space-time points (x,t) with t\ge u, the conditional probability that \eta(x,t)=1 in all (x,t)\in S no matter how the \eta(x',t') are fixed for all t'<t, is bounded by \varepsilon^{|S|}. The set of constraint types consists of a single element, \mathbb{T}_{1}=\{\alpha_{1} \} with b_{1}(\alpha_{1})=\varepsilon. For the event function we have g_{1}(\alpha_{1},V,\eta)=1 if and only if for some (x,t) of the form (m{B}_{1}, n{T}_{1}) with integers m,n and n>0, V=\left[x,x+{B}_{1}\right)\times(t-T_{1},t], and \eta(x,t)=1.

    Let M_{2} be a medium with {\mathbb{S}}_{2}=\{0,1\}. For integers {Q}_{1},{U}_{1}>0 let {B}_{2}={Q}_{1}{B}_{1}, {T}_{2}={U}_{1}{T}_{1}. The histories will be of the form \eta(x,t) with x=m{B}_{2}, t=n{T}_{2} for n\ge 0. The set of constraint types consists of a single element, \mathbb{T}_{2}=\{\alpha_{2} \} with b_{2}(\alpha_{2})=3{Q}_{1}{U}_{1}\varepsilon^{2}. For the event function we have g_{2}(\alpha_{2},V,\eta)=1 if and only if for some (x,t) of the form (n{B}_{1}, n{T}_{1}) with integers m,n and n>0, V=\left[x-{B}_{2},x+2{B}_{2}\right)\times(t-2{T}_{2},t], and \eta(x,t)=1.

    Let us define the simulation \varphi^{*} as follows. If \eta^{*}=\varphi^{*}(\eta) then \eta^{*}(x,t)=1 if and only if (x,t) has the form (m{B}_{2}, n{T}_{2}) with integers m,n and n>0, and in V=\left[x-{B}_{2},x+2{B}_{2}\right)\times(t-2{T}_{2},t] there are at least two elements (x_{1},t_{1})\ne (x_{2},t_{2}) with \eta(x_{i},t_{i})=1. To show that this is a simulation we define the system of local conditions

    {\bigl(\mskip 1mu\beta_{i,j}(\alpha_{2},V), W_{i,j}(\alpha,V)\mskip 1mu\bigr)}

    as follows. These are nonempty if and only if for some (x,t) of the form (m{B}_{2}, n{T}_{2}) with integer m,n and n>0, V=\left[x-{B}_{2},x+2{B}_{2}\right)\times(t-2{T}_{2},t]. In this case, let P=\{p_{1},\dots,p_{N}\} be a list of all distinct pairs \{ (x_{1},t_{1}), (x_{2},t_{2})\} in V, where N=\binom{6{Q}_{1}{U}_{1}}{2}. For p_{i}=\{ (x_{i,1},t_{i,1}), (x_{i,2},t_{i,2})\}, let \beta_{i,j}(\alpha_{2},V)=\alpha_{1} for all i,j, and

    \begin{aligned} W_{i,j}(\alpha_{2},V)=\left[x_{i,j},x_{i,j}+{B}_{1}\right)\times(t_{i,j}-{T}_{1},{T}_{i,j}]. \end{aligned}

    Then {g}_{2}(\alpha_{2},V,\eta^{*}) is the event that \eta(x,t)=1 for at least two pairs (x,t)\in V, and this is upper-bounded by

    \begin{aligned} \sum_{i}\prod_{j}g_{1}(\alpha_{1},W_{i,j}(\alpha_{2},V)) \end{aligned}

    as required. Also

    \begin{aligned} b_{2}(\alpha_{2})=3{Q}_{1}{U}_{1}\varepsilon^{2}>N\varepsilon^{2} =\sum_{i=1}^{N}\prod_{j=1}^{2}g_{1}(\alpha_{1},W_{i,j}(\alpha_{2},V)) \end{aligned}

    as required.

    Definition

    Definition 7.15 (Injective canonical simulation)

    DDON

    We will call a canonical simulation injective if the mapping \varphi^{*} is the identity, and the functions b_{2}(\alpha),{g}_{2}(\alpha,\cdot,\cdot) differ from b_{1},{g}_{1} only in that they are defined for some additional types \alpha, too.

    Definition

    Definition 7.16 (Subset-function switching times)

    AG73

    For some function K\in\mathbf{K} let a_{-1}(K), a_{1}(K).)))

    \begin{alignedat}{3} &a_{-1}(K) &&= \bigwedge_{{\mathbf{r}}}\mathbf{R}(K({\mathbf{r}}),{\mathbf{r}}), \\ &a_{1}(K) &&= \bigvee_{{\mathbf{r}}}\mathbf{R}(K({\mathbf{r}}),{\mathbf{r}}). \end{alignedat}

    Let us call a time u of the history \eta a K-switching-time of a cell x if for all t<u sufficiently close to u we have \eta(x,t)\notin \overline{K}(x,t,\eta) and \eta(x,u)\in \overline{K}(x,t,\eta), that is we have just jumped into the target set determined by K(\cdot). For some rational constant D>0, integers k\ge 0 and j=-1,1 let .greek@\alpha(K,D,k,j).)))

    {g}{\bigl(\mskip 1mu\alpha(K,D,k,j),\;\{x\}\times(u,u + D],\;\eta\mskip 1mu\bigr)}

    be the event function of type \alpha(K,D,k,j) for j=-1 [j=1] for the event that site x has at most [at least] k times during (u,u+D], that are K-switching times.

    Proposition

    Proposition 7.17

    D17G

    Let us define, with a_{j}=a_{j}(K) and every possible h>0:

    \begin{aligned} b(\alpha(K, D, a_{j}D+j h\sqrt{D}, j)) &= 1\land \frac{a_{j}}{h^{2}}, \end{aligned}

    except that in case j = 1 and a_{1}D+h\sqrt D= 1 we set it to a_{1}D when the latter is smaller. Let b(\alpha(K,D,k,j))=1 for all other k. For each transition rate matrix \mathbf{R} and function K\in\mathbf{K}, the trajectories of \ensuremath{\mathord{\textit{CCA\/}}}(\mathbf{R},{B} ) are also trajectories of the medium obtained by adding all these conditions defined by \alpha(K,D,\dots), b(\alpha(\dots)).

    Definition

    Definition 7.19 (Primitive variable-period medium)

    9643

    The medium -var.)))

    -var(\ensuremath{\mathord{\textit{Tr\/}}}, {B} , {T_{\bullet}}, T^{\bullet}, \varepsilon).

    is defined as follows. The set {\mathbb{S}} of states is implicit in the transition function therefore from now on, it will be omitted. We have dwell period lower and upper bounds {T_{\bullet}}\leT^{\bullet} and a failure probability bound \varepsilon>0. The local state, as in Example 2.15, is a record with two fields, \ensuremath{\mathord{\textsf{\slshape{Det\/}}}} and \ensuremath{\mathord{\textsf{\slshape{Rand\/}}}} where \ensuremath{\mathord{\textsf{\slshape{Rand\/}}}} consists of a single bit. To simplify the upper-bounding of dwell periods, we assume that the transition function has the property

    \ensuremath{\mathord{\textit{Tr\/}}}(r_{-1},r_{0},r_{1}).\ensuremath{\mathord{\textsf{\slshape{Det\/}}}}\ne r_{0}.\ensuremath{\mathord{\textsf{\slshape{Det\/}}}},

    that is the deterministic part of a cell will change at every transition. In a more general setting later this will be called “time marking”, see Condition 10.9. For a history \eta, site x let a \ge 0 be a rational number. If a>0 then let \sigma_{1}=\sigma_{1}(x,a,\eta), and \sigma_{2} be the first and second switching times t>a of \eta in x. If a=0 then let \sigma_{1}=0 and let \sigma_{2} be the first switching time >0. Let us list the different types of local condition.

    Cjenum.
  • Conditions of type \alpha(\ensuremath{\mathord{\textit{dw-p-lb\/}}}) imposing {T_{\bullet}} as a dwell period lower bound. We have b(\alpha(\ensuremath{\mathord{\textit{dw-p-lb\/}}}))=\varepsilon, and

    {g}{\bigl(\mskip 1mu\alpha(\ensuremath{\mathord{\textit{dw-p-lb\/}}}),\; \{x\}\times(a,a+T^{\bullet}],\; \eta\mskip 1mu\bigr)}

    is the event that \eta(x,t) has two switching times closer than {T_{\bullet}} to each other during (a,a+{T_{\bullet}}].

  • Conditions of type \alpha(\ensuremath{\mathord{\textit{dw-p-ub\/}}}) imposing T^{\bullet} as a dwell period upper bound. We have b(\alpha(\ensuremath{\mathord{\textit{dw-p-ub\/}}}))=\varepsilon, and

    {g}{\bigl(\mskip 1mu\alpha(\ensuremath{\mathord{\textit{dw-p-ub\/}}}),\;\{x\}\times(a,a+T^{\bullet}],\; \eta\mskip 1mu\bigr)}

    is the event that \eta(x,t) has no switching times in (a,a+T^{\bullet}].

  • Conditions of type \alpha(\ensuremath{\mathord{\textit{comput\/}}}) saying that the new value of the \ensuremath{\mathord{\textsf{\slshape{Det\/}}}} field at a switching time obeys the transition function. We have b(\alpha(\ensuremath{\mathord{\textit{comput\/}}})) = \varepsilon, and

    \begin{gathered} {g}{\bigl(\mskip 1mu\alpha(\ensuremath{\mathord{\textit{comput\/}}}),\; \{x\}\times(a,a+2T^{\bullet}],\; \eta\mskip 1mu\bigr)} \\ = \{\eta(x,\sigma_{2}).\ensuremath{\mathord{\textsf{\slshape{Det\/}}}}\not\in \mathopen\{\mskip 1mu\overline{\ensuremath{\mathord{\textit{Tr\/}}}}(\eta,x,t,{B} ).\ensuremath{\mathord{\textsf{\slshape{Det\/}}}} : t\in(\sigma_{1},\sigma_{2}-{T_{\bullet}}/2]\mskip 1mu\mathclose\}\}. \end{gathered}

    Here we used the notation (4.13).

  • Conditions of type \alpha(\ensuremath{\mathord{\textit{coin\/}}},j) for j=0,1 saying that the new value of the \ensuremath{\mathord{\textsf{\slshape{Rand\/}}}} field at a switching time is obtained nearly by a fresh coin-toss:

    \begin{alignedat}{3} & b(\alpha(\ensuremath{\mathord{\textit{coin\/}}},j)) &&= 0.5 + \varepsilon, \\ &{g}{\bigl(\mskip 1mu\alpha(\ensuremath{\mathord{\textit{coin\/}}},j),\; \{x\}\times[a,a+2T^{\bullet}],\; \eta\mskip 1mu\bigr)} &&= \{\eta(x,\sigma_{2}).\ensuremath{\mathord{\textsf{\slshape{Rand\/}}}} = j\}. \end{alignedat}

    When there is no \sigma_{2} then {g}(\alpha(\ensuremath{\mathord{\textit{coin\/}}},j),\cdot,\cdot)=0, so this condition has no effect.

  • Example

    Example 7.20

    VWX9

    All trajectories of the ordinary deterministic cellular automaton \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}},{B} ,{T} ) are also strong trajectories of -var(\ensuremath{\mathord{\textit{Tr\/}}},{B} ,{T} ,{T} ,0).

    Theorem

    Theorem 9 (Simulation by \( )

    QE6I

    For medium

    M=-var(\ensuremath{\mathord{\textit{Tr\/}}},1,{T_{\bullet}},1,\varepsilon)

    with (7.19) and {T_{\bullet}}<1 there is a noisy transition rate \mathbf{R}(s,{\mathbf{r}}) over some state space {\mathbb{S}}' and a function \pi:{\mathbb{S}}'\to{\mathbb{S}} such that \pi(\eta(x,t)) is a strong trajectory of M for each trajectory \eta of \ensuremath{\mathord{\textit{CCA\/}}}(\mathbf{R},1).

    Theorem

    Theorem 10

    QT9S

    Theorem 1 also holds when we allow a perturbed primitive variable-period medium -var(\ensuremath{\mathord{\textit{Tr\/}}}',1, 0.5, 1,\varepsilon) with strong trajectories instead of a perturbed discrete-time cellular automaton.

    Theorem

    Theorem 11

    TBS8

    Theorem 3 also holds (with the same encoding \psi_{*}) and strong trajectories when we allow a primitive variable-period perturbation instead of a discrete-time perturbation.

    Theorem

    Theorem 12

    722A

    Theorem 6 holds (with the same encoding \psi_{*}) also with -var(\ensuremath{\mathord{\textit{Tr\/}}}',1, 0.5, 1,\varepsilon) and strong trajectories in place of \ensuremath{\mathord{\textit{CA\/}}}_{\varepsilon}(\ensuremath{\mathord{\textit{Tr\/}}}').

    Uses Definition 2.14 · Used by Proof
    Corollary

    Corollary 7.21

    L2F3

    In Theorems 10, 11, 12, we can replace \ensuremath{\mathord{\textit{Tr\/}}}' with a rate matrix \mathbf{R}, and -var(\ensuremath{\mathord{\textit{Tr\/}}}',1,{T_{\bullet}},1,\varepsilon) with a \ensuremath{\mathord{\textit{CCA\/}}} with rates coming from an arbitrary \varepsilon-perturbation of \mathbf{R}. This proves, in particular, Theorem 2.

    Definition

    Definition 8.1 (Totally asynchronous cellular automata)

    WNK1

    We define the totally asynchronous cellular automaton \ensuremath{\mathord{\textit{ACA\/}}}.)))

    \ensuremath{\mathord{\textit{ACA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}})=\ensuremath{\mathord{\textit{ACA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}},1,1)

    associated with transition function \ensuremath{\mathord{\textit{Tr\/}}} as follows: \eta is a trajectory if for all x,t we have either \eta(x,t+1)=\eta(x,t) or the usual

    \eta(x,t+1)=\ensuremath{\mathord{\textit{Tr\/}}}(\eta(x-1,t),\eta(x,t),\eta(x+1,t)).
    Definition

    Definition 8.2

    GEWU

    A site x is free in a configuration \xi if \ensuremath{\mathord{\textit{Tr\/}}}(\xi(x-1),\xi(x),\xi(x+1))\ne \xi(x). The set of free sites will be denoted by L(\xi):cap@L(\xi).))). For a space configuration \xi and a set E of sites, let us define the new configuration \ensuremath{\mathord{\textit{Tr\/}}}(\xi,E)\ensuremath{\mathord{\textit{Tr\/}}}(\xi,E).))) by

    \ensuremath{\mathord{\textit{Tr\/}}}(\xi,E)(x) = \begin{cases} \ensuremath{\mathord{\textit{Tr\/}}}(\xi(x-1),\xi(x),\xi(x+1)) &\text{if $x\in E$} \\ \xi(x) &\text{otherwise.} \end{cases}
    Definition

    Definition 8.3 (Update set)

    6JY3

    Let the update set .cap@U(t,\eta).)))

    U(t,\eta)

    be the set of sites x with \eta(x,t+1)\ne \eta(x,t).

    Notation

    Notation 8.4 (Indicator function)

    LOG3

    For any set A, let us use the indicator function .greek@\chi(x,A).)))

    \chi(x,A)=\begin{cases} 1 &\text{if $x\in A$,} \\ 0 &\text{otherwise.} \end{cases}
    Definition

    Definition 8.5 (Effective age)

    EM8J

    For given history \eta, we define the function \tau(x,t)=\tau(x,t,\eta):greek@\tau(x,t).))) as follows:

    \begin{alignedat}{3} &\tau(x,0) &&= 0, \\ &\tau(x,t+1) &&= \tau(x,t)+ \chi(x,U(t,\eta)). \end{alignedat}

    We can call \tau(x,t) the effective age of x in \eta at time t: this is the number of effective updatings that x underwent until time t.

    Definition

    Definition 8.6 (Invariant histories)

    IYFY

    Given a transition function \ensuremath{\mathord{\textit{Tr\/}}} and an initial configuration \xi, we say that the function has invariant histories if there is a function \zeta(x,u)=\zeta(x,u,\xi) such that for all trajectories \eta(x,t) of \ensuremath{\mathord{\textit{ACA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}) with \eta(\cdot,0)=\xi we have

    \eta(x,t) = \zeta(x,\tau(x,t,\eta),\xi).
    Notation

    Notation 8.7

    3P3N

    Denote

    \ensuremath{\mathord{\textit{Tr\/}}}(\xi,E,F)=\ensuremath{\mathord{\textit{Tr\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}(\xi,E),F).
    Notation

    Notation 8.9

    F2RZ

    We will denote the smallest absolute-value remainders \mskip-\medmuskip\mkern5mu\mathbin {\operator@font amod}\penalty900 \mkern5mu\mskip-\medmuskip.)))

    b \mskip-\medmuskip\mkern5mu\mathbin {\operator@font amod}\penalty900 \mkern5mu\mskip-\medmuskip m

    with respect to a positive integer m>2, defined by the requirement -m/2< b \mskip-\medmuskip\mkern5mu\mathbin {\operator@font amod}\penalty900 \mkern5mu\mskip-\medmuskip m \le m/2.

    Theorem

    Theorem 13 (Commutative Simulation)

    E6OZ

    Let \ensuremath{\mathord{\textit{Tr\/}}}_{2} be an arbitrary transition function with state space {\mathbb{S}}_{2}. Then there is a commutative transition function \ensuremath{\mathord{\textit{Tr\/}}}_{1} with state space {\mathbb{S}}_{1}={\mathbb{S}}_{2}\times R (for an appropriate finite set R) with the following property. Each state s\in {\mathbb{S}}_{1} can be represented as (s.\ensuremath{\mathord{\textsf{\slshape{F\/}}}},s.\ensuremath{\mathord{\textsf{\slshape{G\/}}}}) where s.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}\in {\mathbb{S}}_{2}, s.\ensuremath{\mathord{\textsf{\slshape{G\/}}}}\in R. Let \xi_{2} be an arbitrary configuration of {\mathbb{S}}_{2} and let \xi_{1} be a configuration of {\mathbb{S}}_{1} such that for all x we have \xi_{1}(x).\ensuremath{\mathord{\textsf{\slshape{F\/}}}}=\xi_{2}(x), \xi_{1}(x).\ensuremath{\mathord{\textsf{\slshape{G\/}}}}=0\cdots 0\in R. Then for the trajectory \eta_{1} of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}_{1}), with initial configuration \xi_{1}, the function \eta_{1}(x,t).\ensuremath{\mathord{\textsf{\slshape{F\/}}}} is a trajectory of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}_{2}). Moreover, in \eta_{1}, the state of each cell changes in each step.

    Corollary

    Corollary 8.11 (Variable-period simulation)

    9I68

    For every deterministic transition function \ensuremath{\mathord{\textit{Tr\/}}}_{2} over some state-space {\mathbb{S}}_{2}, there is a set of states {\mathbb{S}}_{1}, a transition function \ensuremath{\mathord{\textit{Tr\/}}}_{1} over {\mathbb{S}}_{1}, and a code that for any values {T_{\bullet}}_{1}\leT^{\bullet}_{1}, is a simulation of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}_{2}) by -var(\ensuremath{\mathord{\textit{Tr\/}}}_{1},1,{T_{\bullet}}_{1},T^{\bullet}_{1},0).

    Definition

    Definition 9.1 (Computation result)

    CHR8

    For a standard computing medium with transition function \ensuremath{\mathord{\textit{Tr\/}}}, integers s and t and string X consider a trajectory \eta of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}) over the rectangle [0,s]\times[0,t] with an initial configuration in which \eta(0,0)=\eta(s,0)=\#\cdots \#, further X is on the input track on the interval [1,s-1] (padded with *’s to fill up [1,s-1]), *’s on the output track and 0’s on the other tracks. This defines a trajectory \eta since the \#’s on the input field in cells 0 and s imply that the cells outside the interval [0,s] will have no effect. Assume that, at time t, the \ensuremath{\mathord{\textsf{\slshape{Output\/}}}} track has no * on the interval [1,s-1]. The string w on the \ensuremath{\mathord{\textsf{\slshape{Output\/}}}} track on [1,s-1] will be called the result of the computation, denoted by \ensuremath{\mathord{\textit{Tr\/}}}(X; s, t).)))

    w= \ensuremath{\mathord{\textit{Tr\/}}}(X; s, t).
    Definition

    Definition 9.2 (Efficient universality)

    63QD

    The standard computing transition function \ensuremath{\mathord{\textit{Tr\/}}}_{0} is efficiently universal if for every standard computing transition function \ensuremath{\mathord{\textit{Tr\/}}}, there is a string \ensuremath{\mathord{\texttt{\slshape{prog\/}}}} and constants c,d such that for all strings X and positive integers s,t we have \ensuremath{\mathord{\texttt{\slshape{prog\/}}}}.)))

    \ensuremath{\mathord{\textit{Tr\/}}}(X; s, t) = \ensuremath{\mathord{\textit{Tr\/}}}_{0}(\ensuremath{\mathord{\texttt{\slshape{prog\/}}}}\sqcup X; c\cdot s, d\cdot t)

    whenever the left-hand side is defined.

    Definition

    Definition 9.3

    FDDN

    We fix an efficiently universal standard computing transition function \ensuremath{\mathord{\textit{Univ\/}}}.)))

    \ensuremath{\mathord{\textit{Univ\/}}}

    for the definition of various string functions. In view of Theorem 13, we can (and will) also assume that \ensuremath{\mathord{\textit{Univ\/}}} is commutative as in Definition 8.8. For a string function f(X) defined over some domain E we will say that \ensuremath{\mathord{\texttt{\slshape{prog\/}}}} is a program for f with time complexity bound t and space complexity bound s over E if the relation

    \ensuremath{\mathord{\textit{Univ\/}}}(\ensuremath{\mathord{\texttt{\slshape{prog\/}}}}\sqcup X;s,t) = f(X)

    holds.

    Remark

    Remark 9.4 (Self-simulation)

    GBTN

    Let us denote the output of a universal machine (it does not matter, whether it is a Turing machine or cellular automaton) computing the universal partial recursive function u(p,x), where p is the program, and x is the input. Let \tau be an arbitrary computable transformation of strings into strings. Kleene’s Fixpoint Theorem (Recursion Theorem) says that there is a program q with the property that for all x we have u(q,x)=u(\tau(p),x). What does this theorem have to do with our problem of self-simulation? Suppose that we have some program p, and a transformation \tau(p) of p that carries out a simulation of the action of p, with possibly some modifications and extra properties (say, error-corrections, and the change of some parameters). The theorem says that there is a program q which already acts as \tau(q).

    One intuitive proof of the fixpoint theorem goes as follows. Assume that we have a programming language that has at least the following ingredients: 1) We can define functions (procedures) in it. 2) It contains a function \mathtt{U(p,x)} that computes u(p,x), that is it interprets the string p as a program on input x. 3) It contains a function \mathtt{MyText()},(The parentheses \mathtt{()}, used for example in the programming language C, are a useful reminder that even when it has no explicit arguments, the function depends on the internal state of the machine at the time of execution.) which returns the string that is the text of the program. One implementation of such a function in a modern computer uses the fact that the program is stored at some standard place in memory: it is enough to go there and read it out. Let \mathtt{T(p)} be the expression of the transformation \tau(p) in our programming language: then the fixedpoint program is

    \begin{aligned} q=\mathtt{U(T(MyText()),x)} \end{aligned}

    (the \mathtt{x} in the program is just a symbol in the program, not something the program q depends on).

    Notation

    Notation 9.5

    TBKB

    For a field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}, if \eta is the current configuration and x is a site then we will sometimes write

    \begin{aligned} \ensuremath{\mathord{\textsf{\slshape{F\/}}}}(x) \text{ for } \eta.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}(x). \end{aligned}

    We will write .greek@\vartheta_{j}(x).)))

    \vartheta_{j}(x) = x + j{B}

    for the site j steps from site x. In a semi-formal description of a rule, {\mathbf{x}}{\mathbf{x}}.))) refers to the cell to which it is applied (the “current” cell). In the condition as well as the action of the rule, a field \ensuremath{\mathord{\textsf{\slshape{F\/}}}}({\mathbf{x}})=\eta.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}({\mathbf{x}}) will simply be written as \ensuremath{\mathord{\textsf{\slshape{F\/}}}}. Denote .cap@\ensuremath{\mathord{\textsf{\slshape{F\/}}}}^{j}.)))

    \ensuremath{\mathord{\textsf{\slshape{F\/}}}}^{j}=\eta.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}(\vartheta_{j}({\mathbf{x}})).
    Definition

    Definition 9.6 (Rules)

    HRMR

    An elementary rule has the following form:

    Algo (H).

    C_{1} and \dotsm and C_{k} \ensuremath{\mathord{\textsf{\slshape{F\/}}}} \gets f(\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1}^{j_{1}},\dots,\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{n}^{j_{n}})

    Sloppypar.

    Here \ensuremath{\mathord{\textsf{\slshape{F\/}}}},\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{i} are fields (possibly specified as bit segments like in (2.6)), j_{i}\in\mathopen\{-1,0,1\mathclose\}. Each of the conditions C_{i} has the form a_{1}\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1}^{j_{1}}+\dots+a_{n}\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{n}^{j_{n}}\le b with integer constants a_{i}, b. (When the condition is not applicable, the rule does not change the state.) The function f(x_{1},\dots,x_{n}) must be computable on \ensuremath{\mathord{\textit{Univ\/}}} in linear time. This allows for many functions: for example, if x ,y are integers in binary notation then x\cdot y, {\lfloor x/y\rfloor}, x\bmod y are all computable in linear time by known cellular automata algorithms, see for example [Leighton92].

    A rule is a sequence of elementary rules. The transition function will be defined by a set of rules. In case some rules contradict each other, they will be ordered by explicit priority. Rules will sometimes be associated with certain fields. The lowest-priority rule referring to a field is called the default.

    Definition

    Definition 9.7 (Combination of rules)

    4EWC

    When a sequence of rules is combined, this is a parallel combination: all the rules apply to the same transition, and do not refer to consecutive times. Sometimes we may use the notation "+@\texttt{;},\hbox{$\mskip\medmuskip\parallel\mskip\medmuskip$}.)))

    \ensuremath{\mathord{\texttt{\slshape{R\/}}}}_{1}\hbox{$\mskip\medmuskip\parallel\mskip\medmuskip$} \ensuremath{\mathord{\texttt{\slshape{R\/}}}}_{2} \hbox{$\mskip\medmuskip\parallel\mskip\medmuskip$} \dots \hbox{$\mskip\medmuskip\parallel\mskip\medmuskip$} \ensuremath{\mathord{\texttt{\slshape{R\/}}}}_{n}

    for a combination of n rules. As a shorthand, we may also combine rules in series: the rule

    \ensuremath{\mathord{\texttt{\slshape{R\/}}}}_{1};\ensuremath{\mathord{\texttt{\slshape{R\/}}}}_{2}

    asks for carrying out the rules \ensuremath{\mathord{\texttt{\slshape{R\/}}}}_{1} and \ensuremath{\mathord{\texttt{\slshape{R\/}}}}_{2} consecutively. This can be understood in terms of a field \ensuremath{\mathord{\textsf{\slshape{Age\/}}}} which we are always going to have and can be replaced with a conditional.

    In both parallel and serial combination, we will refer to the rules \ensuremath{\mathord{\texttt{\slshape{R\/}}}}_{i} as sub-rules, when they will always be invoked (“called”) by other rules. Still, for a better flow of discussion we will frequently refer to sub-rules as just “rules”. Sub-rules may have parameters that are specified at the time of the call. Rule P(i) with parameter i can be viewed as a different rule for each possible value of i.

    Definition

    Definition 9.8 (Conditionals and various kinds of “for”)

    VZTL

    Sometimes the conditions of a conditional statement are indexed in a regular way, then we may use the shorthand \textbf{cfor}\textbf{cfor}.))) as below:

    Algo.

    j\in\{-1,1\} \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}^{j}=0 \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}\gets 0

    So this rule tests the conditions in order, carries out the command of the first satisfied condition and skips the rest. Several conditions that are to be tested one after the other will be combined using the construct cond. This can be seen as an alternative to the “if\dotsthen\dotselsif\dots” construct.

    Algo (H).

    j\in\{-1,1\} \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}^{j}=0 \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}\gets 0 j\in\{-1,1\} \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}^{j}\not\equiv\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}+j\pmod{{U} } \ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}\gets\ensuremath{\mathord{\textit{Latent\/}}}

    Both the parallel and the consecutive combination of rules can be over an indexed set, and then we get the constructs pfor and for:

    Algo (H).

    (k,d)\in\ensuremath{\mathord{\textit{Mail-ind\/}}} \ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}_{k,d}\gets \ensuremath{\mathord{\textit{Mail-to-receive\/}}}(k,d)

    Here, \texttt{pfor}.))) the rule is carried out simultaneously for all fields indexed by the indicated values k. for.))) On the other hand in the \textbf{for} example the application is consecutive:

    Algo (H).

    i=a b {\mathopen\langle \text{some rule referring to } i\mathclose\rangle}

    Another use of \textbf{for} can be this:

    Algo (H).

    n steps of \ensuremath{\mathord{\textsf{\slshape{Age\/}}}} {\mathopen\langle \cdots\mathclose\rangle}

    which, started at some \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}=t will mean that the commands {\mathopen\langle \cdots\mathclose\rangle} will run under the condition t_{1}\le\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}<t+n. repeat.))) The repeat construct could be translated into a for:

    Algo (H).

    k {\mathopen\langle \cdots\mathclose\rangle}

    Definition

    Definition 9.9 (The “let” construct)

    VF9J

    We may use temporary constants or functions in the course of defining a rule, as in this example:

    let.)))

    Algo.

    let f(i)\gets\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}+\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}^{i}

    Example

    Example 9.10

    8CCE

    \ensuremath{\mathord{\texttt{\slshape{March\/}}}}_{0}.))) Here is a description of the transition function given in the proof of Theorem 13 (Asynchronous Simulation).

    Algo.

    rule \protect\ensuremath{\mathord{\texttt{\slshape{March\/}}}}_{0} j\in\{-1,0,1\} let r(j)\gets\ensuremath{\mathord{\textsf{\slshape{Cur\/}}}}^{j} if \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}^{j}=\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}, and \ensuremath{\mathord{\textsf{\slshape{Prev\/}}}}^{j} otherwise \cmforall\, j\in\{-1,1\}\;(\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}^{j}-\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}) \mskip-\medmuskip\mkern5mu\mathbin {\operator@font amod}\penalty900 \mkern5mu\mskip-\medmuskip {U} \ge 0 \ensuremath{\mathord{\textsf{\slshape{Prev\/}}}} \gets \ensuremath{\mathord{\textsf{\slshape{Cur\/}}}} \ensuremath{\mathord{\textsf{\slshape{Cur\/}}}} \gets \ensuremath{\mathord{\textit{Tr\/}}}_{2}(r(-1),r(0),r(1)) \ensuremath{\mathord{\textsf{\slshape{Age\/}}}} \gets \ensuremath{\mathord{\textsf{\slshape{Age\/}}}} + 1 \bmod {U}

    Definition

    Definition 9.11 (Location)

    6H1Y

    A location is defined by a pair (\ensuremath{\mathord{\textsf{\slshape{F\/}}}},I) where \ensuremath{\mathord{\textsf{\slshape{F\/}}}} is a field, and I is an interval of addresses in the colony, or by a constant-size union of such pairs (\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{j},I_{j}). We will denote the track \ensuremath{\mathord{\textsf{\slshape{F\/}}}} over interval I as .cap@\ensuremath{\mathord{\textsf{\slshape{F\/}}}}(I).)))

    \ensuremath{\mathord{\textsf{\slshape{F\/}}}}(I).

    The name of a location will generally begin with an underscore, like

    \ensuremath{\mathord{\textsf{\slshape{\_Info\/}}}}.

    The set of addresses (typically an interval) of a location L will be denoted by \ensuremath{\mathord{\textit{space\/}}}(L).

    Definition

    Definition 9.12 (Info location)

    2JXJ

    The location on the \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} track containing the represented string is denoted by \ensuremath{\mathord{\textsf{\slshape{\_Info\/}}}}..loc@\ensuremath{\mathord{\textsf{\slshape{\_Info\/}}}}.)))

    Definition

    Definition 9.14 (Name definitions)

    W5HI

    The rule language can contain some definitions of names for constant strings of symbols, of the form \ensuremath{\mathord{\textit{Param\/}}}.)))

    \ensuremath{\mathord{\textit{Param\/}}}_{1}=s_{1},\;\ensuremath{\mathord{\textit{Param\/}}}_{2}=s_{2},\dots

    where s_{i} are some strings. The names \ensuremath{\mathord{\textit{Param\/}}}_{i} are allowed to be used in the rules. This has the advantage that even if we use, say, \ensuremath{\mathord{\textit{Param\/}}}_{1} twice in a rule, this does not make the rule much longer, even if the value of the parameter is a long string.

    Parameters will have descriptive names: say, we might write \ensuremath{\mathord{\textit{Height\/}}} for \ensuremath{\mathord{\textit{Param\/}}}_{1}, when \ensuremath{\mathord{\textit{Param\/}}}_{1} indicates the level in a hierarchy of simulations. Parameters will always be used via the function

    \begin{aligned} \ensuremath{\mathord{\texttt{\slshape{Write-param\/}}}}(\ensuremath{\mathord{\textit{Param\/}}},\ensuremath{\mathord{\textit{loc\/}}}), \end{aligned}

    which writes the string value of parameter \ensuremath{\mathord{\textit{Param\/}}} to location \ensuremath{\mathord{\textit{loc\/}}}. This can be implemented as a subrule, via the primitive access function

    \begin{aligned} \ensuremath{\mathord{\textit{Param\/}}}_{i}(j), \end{aligned}

    referring to the jth symbol of parameter i. There will also be a special parameter:

    \begin{aligned} \ensuremath{\mathord{\textit{My-rules\/}}}, \end{aligned}

    whose value is the string that is the sequence of all the rules. This will implement self-reference in the style of Remark 9.4.

    Theorem

    Theorem 15 (Rule Language)

    CX1R

    There is a string \ensuremath{\mathord{\textit{Interpr\/}}}\ensuremath{\mathord{\textit{Interpr\/}}}.))) and an integer \ensuremath{\mathinner{\textsf{\upshape{interpr-coe}}}}\ensuremath{\mathinner{\textsf{\upshape{interpr-coe}}}}.))) such that the following holds. If string P is a description of a transition rule \ensuremath{\mathord{\textit{Tr\/}}} over state set {\mathbb{S}} in the above language (along with the necessary parameters), then the machine \ensuremath{\mathord{\textit{Univ\/}}} defined in (9.3) computes \ensuremath{\mathord{\textit{Tr\/}}}(r_{-1},r_{0},r_{1}) (possibly padded with *’s) from

    \ensuremath{\mathord{\textit{Interpr\/}}}\sqcup P\sqcup r_{-1}\sqcup r_{0}\sqcup r_{1}

    within computation time \ensuremath{\mathinner{\textsf{\upshape{interpr-coe}}}}(|P|+1)^{2}{\lVert {\mathbb{S}}\rVert} and space \ensuremath{\mathinner{\textsf{\upshape{interpr-coe}}}}(|P|+{\lVert {\mathbb{S}}\rVert}+1).

    Definition

    Definition 9.15 (Locations for the retrieval rule)

    8ZU3

    The rule \ensuremath{\mathord{\texttt{\slshape{Retrieve\/}}}} uses the locations \ensuremath{\mathord{\textsf{\slshape{\_Retrieved\/}}}}_{m} to deposit the string it retrieves from the neighbor colony number m\in\{-1,0,1\}.

    Remark

    Remark 9.16

    VUQG

    Here we assumed that the source and destination locations are on tracks of the same width, and have the same lengths. We can write a more general version of \ensuremath{\mathord{\texttt{\slshape{Copy\/}}}} using a loop. For example assume that the source location, of length n, is on a track \ensuremath{\mathord{\textsf{\slshape{F\/}}}} that is 5 times wider than its destination location \ensuremath{\mathord{\textsf{\slshape{G\/}}}} of length 5 n.

    Then we can split the field \ensuremath{\mathord{\textsf{\slshape{F\/}}}} into 5 sub-fields \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1},\dots,\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{5}. More generally, a track that has m times the width can be treated as into m tracks of the same width. Here m can even be a variable computed from the widths of the fields in question, using the primitive \ensuremath{\mathord{\textsf{\slshape{F\/}}}}[i\mathord{:} j] as defined in (2.6). We can do the copying in 5 iterations, copying each sub-track separately, or (this will be our actual choice later) we can post each cell onto the mail track in 5 steps. The rule \ensuremath{\mathord{\texttt{\slshape{Move-mail\/}}}} can proceed in parallel with all these iterations.

    Similarly, one can write a program for copying a longer and narrower location into a shorter and wider one. Also, instead of giving the locations as arguments, we may just give the name of a field where they are described. In applications we will assume this more general implementation.

    Definition

    Definition 9.17 (Indirectly given locations)

    MPYE

    The description \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{1}(\left[a_{1},a_{2}\right)) of a location can fit into a single field \ensuremath{\mathord{\textsf{\slshape{G\/}}}}_{1} of some cell. If for example argument \ensuremath{\mathord{\textit{loc\/}}}_{1} of the rule \ensuremath{\mathord{\texttt{\slshape{Copy\/}}}}(m,\ensuremath{\mathord{\textit{loc\/}}}_{1},\ensuremath{\mathord{\textit{loc\/}}}_{2}) is given by a field \ensuremath{\mathord{\textsf{\slshape{G\/}}}}_{1} this way, then we write \ensuremath{\mathord{\texttt{\slshape{Copy\/}}}}(m,\ensuremath{\mathord{\textsf{\slshape{G\/}}}}_{1}*,\ensuremath{\mathord{\textit{loc\/}}}_{2}). This will only happen if m=0, that is the copying proceeds within one colony. It will be assumed that field \ensuremath{\mathord{\textsf{\slshape{G\/}}}}_{1} of each cell of the colony contains the same information \ensuremath{\mathord{\textit{loc\/}}}_{1}. Therefore the rule can be written just as above, except that some of its parameters are read now from the field \ensuremath{\mathord{\textsf{\slshape{G\/}}}}_{1}.

    Definition

    Definition 9.18 (Locations for evaluation)

    NO7P

    Here are a few locations used in the rule \ensuremath{\mathord{\texttt{\slshape{Eval\/}}}}:

    Bullets.
  • Track \ensuremath{\mathord{\textsf{\slshape{Cpt\/}}}} is used for universal computation, with sub-tracks \ensuremath{\mathord{\textsf{\slshape{Cpt\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Input\/}}}} and \ensuremath{\mathord{\textsf{\slshape{Cpt\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Output\/}}}}.

  • The location for the interpreter on the \ensuremath{\mathord{\textsf{\slshape{Cpt\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Input\/}}}} track is denoted by \ensuremath{\mathord{\textsf{\slshape{\_Interpr\/}}}}.

  • The location for the program to be executed by the universal medium \ensuremath{\mathord{\textit{Univ\/}}} is denoted by \ensuremath{\mathord{\textsf{\slshape{\_Prog\/}}}}.

  • The locations for the parameters of the program are denoted by \ensuremath{\mathord{\textsf{\slshape{\_Param\/}}}}_{i}, i=1,2,\dots, as needed,

  • The location of the arguments of the function to be executed on the \ensuremath{\mathord{\textsf{\slshape{Cpt\/}}}} track are \ensuremath{\mathord{\textsf{\slshape{\_Arg\/}}}}_{m} for m\in\{-1,0,1\}. \ensuremath{\mathord{\textsf{\slshape{\_Arg\/}}}}_{m}.)))

  • The location of the output of the computation on the \ensuremath{\mathord{\textsf{\slshape{Cpt\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Output\/}}}} track is \ensuremath{\mathord{\textsf{\slshape{\_Sim-output\/}}}}-output@\ensuremath{\mathord{\textsf{\slshape{\_Sim-output\/}}}}.))). We assume it to be the same interval as that of location \ensuremath{\mathord{\textsf{\slshape{\_Info\/}}}}.

  • Definition

    Definition 9.19

    WGIG

    The encoding \varphi_{*} of a cell state v of M_{2} into a colony of M_{1} is defined as follows. The string v is written into \ensuremath{\mathord{\textsf{\slshape{\_Info\/}}}}. The \ensuremath{\mathord{\textsf{\slshape{Cpt\/}}}} track and the mail tracks are set to all 1’s. Each \ensuremath{\mathord{\textsf{\slshape{Age\/}}}} field is set to 0. For all i, the \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}} field of cell i of the colony is set to i.

    Condition

    Condition 9.20

    PFYC

    The following inequalities must be obeyed.

    • Cell Capacity Lower Bound

      {\lVert {\mathbb{S}}_{1}\rVert} \ge c_{1}{\lceil \log {U} \rceil}+ {\lVert {\mathbb{S}}_{\ensuremath{\mathord{\textit{Univ\/}}}}\rVert} + c_{2}

      where c_{1},c_{2} can be easily computed from the following consideration. What we really need is {\lVert {\mathbb{S}}_{1}\rVert} \ge |\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}|+|\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}|+|\ensuremath{\mathord{\textsf{\slshape{Info\/}}}}|+|\ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}|+|\ensuremath{\mathord{\textsf{\slshape{Cpt\/}}}}| where the following choices can be made:

      \begin{alignedat}{3} &|\ensuremath{\mathord{\textsf{\slshape{Info\/}}}}| &&= 2, \\ &|\ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}_{i}| &&= |\ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}_{i}.\ensuremath{\mathord{\textsf{\slshape{Toaddr\/}}}}| + |\ensuremath{\mathord{\textsf{\slshape{Mail\/}}}}_{i}.\ensuremath{\mathord{\textsf{\slshape{Info\/}}}}| = {\lceil \log {Q} \rceil} + 3, \\ &|\ensuremath{\mathord{\textsf{\slshape{Cpt\/}}}}| &&= {\lVert {\mathbb{S}}_{\ensuremath{\mathord{\textit{Univ\/}}}}\rVert}, \\ &|\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}| &&= |\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}| = {\lceil \log {U} \rceil}. \end{alignedat}
    • Colony Size Lower Bound

      {Q} \ge \ensuremath{\mathinner{\textsf{\upshape{interpr-coe}}}}({\lVert {\mathbb{S}}_{2}\rVert} + |\ensuremath{\mathord{\texttt{\slshape{Trans-prog\/}}}}_{2}| + \log {U} + 1).

      With the field sizes as agreed above, this provides sufficient space in the colony for information storage and computation.

    • Work Period Lower Bound

      {U} \ge 3{Q} +\ensuremath{\mathinner{\textsf{\upshape{interpr-coe}}}}(|\ensuremath{\mathord{\texttt{\slshape{Trans-prog\/}}}}_{2}| + 1)^{2}{\lVert {\mathbb{S}}_{2}\rVert}.

      With the field sizes above, this allows sufficient time for the above program to be carried out.

    Theorem

    Theorem 16 (Basic Block Simulation)

    YMDN

    There are strings \ensuremath{\mathord{\texttt{\slshape{Sim-prog\/}}}}_{1}-prog@\ensuremath{\mathord{\texttt{\slshape{Sim-prog\/}}}}.))), \ensuremath{\mathord{\texttt{\slshape{Sim-prog\/}}}}_{0} such that the following holds. If \ensuremath{\mathord{\texttt{\slshape{Trans-prog\/}}}}_{2} with parameters {\lVert {\mathbb{S}}_{1}\rVert}, {\lVert {\mathbb{S}}_{2}\rVert}, {Q}, {U} satisfies the above inequalities, and \ensuremath{\mathord{\texttt{\slshape{Trans-prog\/}}}}_{2} defines a transition function \ensuremath{\mathord{\textit{Tr\/}}}_{2}, then \ensuremath{\mathord{\texttt{\slshape{Sim-prog\/}}}}_{1} is a rule program with parameters

    \begin{aligned} \ensuremath{\mathord{\texttt{\slshape{Trans-prog\/}}}}_{2}, {\lVert {\mathbb{S}}_{1}\rVert}, {\lVert {\mathbb{S}}_{2}\rVert}, {Q} , {U} , \end{aligned}

    defining a transition function \ensuremath{\mathord{\textit{Tr\/}}}_{1} such that \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}_{1}) has a block simulation of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}_{2},{Q} ,{U} ).

    If {\lVert {\mathbb{S}}_{1}\rVert},{\lVert {\mathbb{S}}_{2}\rVert},{Q} ,{U} satisfy the above inequalities, then \ensuremath{\mathord{\texttt{\slshape{Sim-prog\/}}}}_{0} is a rule program with parameters {\lVert {\mathbb{S}}_{1}\rVert}, {Q}, {U}, defining a transition function \ensuremath{\mathord{\textit{Tr\/}}}_{1} such that \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}_{1}) has a block simulation of \ensuremath{\mathord{\textit{CA\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}_{1},{Q} ,{U} ).

    Remark

    Remark 10.1

    JP95

    The paper [Gacs1dim86] used communication only between adjacent neighbors. It used a special mechanism for preventing accidental intrusions into an intact colony: growth in a zigzag pattern. Here this is achieved by communication between non-adjacent neighbors, enabling a colony of “stronger” cells to defend itself from the accidental intrusion by “weaker” cells. However, to simulate such a property on higher levels, it will also be used to pass information other than strength to non-adjacent neighbors.

    Definition

    Definition 10.2 (Damage)

    GGD4

    For the media to be defined, robust media, we introduce a special set of states \ensuremath{\mathord{\textit{Bad\/}}}\subseteq\ensuremath{\mathord{\textit{Vacant\/}}}\ensuremath{\mathord{\textit{Bad\/}}}.))). For a history \eta we define the damage set \ensuremath{\mathord{\textit{Damage\/}}}.)))

    \ensuremath{\mathord{\textit{Damage\/}}}(\eta)=\mathopen\{\mskip 1mu (x,t) : \eta(x,t)\in\ensuremath{\mathord{\textit{Bad\/}}}\mskip 1mu\mathclose\} .

    For a space configuration, the damage is defined similarly. For a site x a time interval I is damage-free if \eta(x,\cdot) is not in \ensuremath{\mathord{\textit{Bad\/}}} during I.

    Definition

    Definition 10.3 (Damage map)

    K0MO

    We will use the following constants:

    \gamma = 5,\quad \beta = 2\gamma+5.

    Let us define the rectangle

    \begin{aligned} V=\left[-{B} /2,{B} /2\right)\times(-T^{\bullet}/2,T^{\bullet}/2], \end{aligned}

    then the corresponding rectangle V^{*} is defined using {B} ^{*},T^{\bullet *}. Two space-time points are said to be too close if they are contained in a single copy (space-time translation) of \betaV. Two sets A_{1},A_{2} are too far if no copy of \gammaV^{*} intersects both. A subset A of the damage is called an island if it is covered by a translation of \betaV and is too far from the rest of damage. In a simulation \eta^{*}=\Phi^{*}(\eta) between two robust media, the set \ensuremath{\mathord{\textit{Damage\/}}}(\eta^{*}) is obtained after we remove all islands of \ensuremath{\mathord{\textit{Damage\/}}}(\eta). We call this definition of \ensuremath{\mathord{\textit{Damage\/}}}(\eta^{*}) the damage map of simulation \Phi^{*}.

    Condition

    Condition 10.4 (Restoration Property)

    1IN4

    Let b(\alpha(\ensuremath{\mathord{\textit{restor\/}}}))=\varepsilon. Further, for any pair (x,t) let

    {g}{\bigl(\mskip 1mu\alpha(\ensuremath{\mathord{\textit{restor\/}}}),\; (x,t)+(\gamma+2)V,\; \eta\mskip 1mu\bigr)}

    be the event function for the event that there is damage in \eta((x,t)+V).

    Lemma

    Lemma 10.5 (Simulation Damage Probability Bound)

    M5YI

    Let M, M^{*} be media with parameters \varepsilon, \varepsilon^{*}, with {B} ^{*}\ge {B}, T^{\bullet *}\ge T^{\bullet}, whose local condition system includes the Restoration Property. Let a simulation \Phi^{*} be defined between them which assigns damage in M^{*} according to the damage map of Definition 10.3. There is a constant c_{\ensuremath{\mathord{\textit{Dam\/}}}} such that if

    \varepsilon^{*}\ge c_{\ensuremath{\mathord{\textit{Dam\/}}}}(({B} ^{*}/{B} )(T^{\bullet *}/T^{\bullet})\varepsilon)^{2}

    then \Phi^{*} is a deterministic canonical simulation map for damage, as defined in ?.

    Notation

    Notation 10.6 (Non-adjacent neighbors)

    H2IO

    Let us fix a history \eta.

    For a (non-vacant) cell x, in direction j=\pm 1 there is at most one cell at distance smaller than 2{B}: if it exists and there is no damage between it and x then we denote it also by \vartheta_{j}(x,t,\eta). We will omit \eta, and sometimes even t, from the arguments when it is obvious from the context. By convention, whenever \vartheta_{j}(x,t,\eta) is undefined then let \eta(\vartheta_{j}(x,t,\eta),t)=\ensuremath{\mathord{\textit{Vac\/}}}.

    Definition

    Definition 10.7 (Transition of a robust medium)

    ZY63

    The transition function in a robust medium has the form

    \begin{aligned} \ensuremath{\mathord{\textit{Tr\/}}}({\mathbf{s}},{\mathbf{a}}). \end{aligned}

    Here {\mathbf{s}} = (s_{-1},s_{0},s_{1}), {\mathbf{a}} =(a_{-1},a_{1}) have the following meaning. s_{0} is the state of the cell whose transition will happen, and for j=\pm 1 s_{j} is the state of its (not necessarily adjacent) neighbors in direction j. Further a_{j}=1 if the neighbor in direction j is adjacent and 0 otherwise. The transition does not depend on a_{j} if either s_{j} or s_{0} is vacant. Note that a_{j} is in fact a_{j}(x,t,\eta), but we may omit the arguments that are obvious from the context. In analogy with (2.4), let

    \overline{\ensuremath{\mathord{\textit{Tr\/}}}}(\eta,x,t)=\ensuremath{\mathord{\textit{Tr\/}}}((\vartheta_{-1}(x),x,\vartheta_{1}(x)),(a_{-1}(x),a_{1}(x))).

    The symbol \eta will be omitted from \ensuremath{\mathord{\textit{Tr\/}}}(\eta,x,t) when it is obvious from the context.

    Definition

    Definition 10.8

    QSB6

    A robust medium will be denoted by \ensuremath{\mathord{\textit{Rob\/}}}.)))

    \ensuremath{\mathord{\textit{Rob\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}, {B} ,{T_{\bullet}},T^{\bullet},\varepsilon,\varepsilon').

    The first bit of the state of a cell will be the field \ensuremath{\mathord{\textsf{\slshape{Rand\/}}}}; we will write

    \ensuremath{\mathord{\textsf{\slshape{Det\/}}}}=\ensuremath{\mathord{\textsf{\slshape{All\/}}}}\setminus\ensuremath{\mathord{\textsf{\slshape{Rand\/}}}}.
    Condition

    Condition 10.11 (Cling to Life)

    Y12R

    A cell will only be erased if it may disturb a close non-aligned neighbor: namely, suppose that u_{0}\ne\ensuremath{\mathord{\textit{Vac\/}}} and \ensuremath{\mathord{\textit{Tr\/}}}({\mathbf{u}},{\mathbf{a}})=\ensuremath{\mathord{\textit{Vac\/}}}. Then there is a j=\pm 1 with u_{j}\ne\ensuremath{\mathord{\textit{Vac\/}}} and a_{j}=0.

    Definition

    Definition 10.12 (Creators, emergence)

    L5ZJ

    Recall the form of the transition function in (10.7). We will call a pair (j,v)\in\{-1,1\}\times{\mathbb{S}}, a potential creator of a non-vacant state s if s=\ensuremath{\mathord{\textit{Tr\/}}}({\mathbf{u}},{\mathbf{a}}) where u_{j}=v, u_{0}= u_{-j}=\ensuremath{\mathord{\textit{Vac\/}}}. The expectation is that an adjacent cell with state s will be created by the cell with state v determined by the state u_{j} of the creator independently of the state u_{-j}.

    Consider a history \eta, with a switching time \sigma of cell x when \eta(x,t) turns from vacant to non-vacant. We call y=x+j{B} a creator of x for time \sigma if (j,\eta(y,\sigma-)) is a potential creator of \eta(x,\sigma), further \eta(y,t) is non-vacant for t\in(\sigma-{T_{\bullet}}/2,\sigma+{T_{\bullet}}). (So a creator is supposed to survive the creation.) On the other hand, if there is no t in (\sigma-{T_{\bullet}}/2,\sigma] when the interval\left[x-2{B},x+3{B}\right) intersects the body of any cell, we will say that the cell x emerged at time \sigma.

    Definition

    Definition 10.13 (Special switching times)

    8UWR

    For a history \eta, cell x and number a \ge 0 let

    \sigma_{1},\sigma_{2},\sigma_{0}

    be defined as follows. The values \sigma_{1},\sigma_{2} are the first two switching times of x in (a,a+2T^{\bullet}], but \sigma_{2} is defined only if \eta(x,\sigma_{1}) is non-vacant. 0 is considered a switching time if \eta(x,0) is not vacant. On the other hand, \sigma_{0} is the first switching time of x after a+T^{\bullet} but defined only if \eta(x,a+T^{\bullet}) is vacant. Whenever we have an event function {g}(\alpha,W,\eta) in whose definition \sigma_{2} occurs, this function is always understood to have value 0 if \sigma_{2} is not defined (similarly with \sigma_{0}).

    Definition

    Definition 10.14

    L8MB

    [Rectangles used in the computation property]

    Let .cap@W_{0}(x, a), W_{1}(x, a).)))

    \begin{aligned} I_{0}(x) &= \left[x-0.1{B} ,x+1.1{B} \right), \quad I_{1}(x) = \left[x-2.1{B} ,x+3.1{B} \right), \\ W_{j}(x,a) &= I_{j}(x)\times(a-2T^{\bullet},a+3T^{\bullet}] \quad (j=0,1), \\ {f}_{j}(x,a,\eta) &= \text{the event function for } \mathopen\{\mskip 1mu\ensuremath{\mathord{\textit{Damage\/}}}(\eta)\cap W_{j}(x,a) = \emptyset\mskip 1mu\mathclose\} \quad (j=0,1). \end{aligned}
    Condition

    Condition 10.16 (Computation Property)

    PX8M

    This property consists of several condition types. For each type \alpha used here except \alpha(\ensuremath{\mathord{\textit{rand\/}}},j), we have b(\alpha)=0, that is the corresponding events {g}(\alpha(\cdot),W,\eta) are simply prohibited in the trajectory. On the other hand,

    b(\alpha(\ensuremath{\mathord{\textit{rand\/}}},j))=0.5+\varepsilon'\quad (j=0,1).
    Cjenum.
  • Coin-tossing, for j=0,1:

    {g}{\bigl(\mskip 1mu\alpha(\ensuremath{\mathord{\textit{rand\/}}},j),\;W_{0}(x,a),\;\eta\mskip 1mu\bigr)} = {f}_{0}(x,a,\eta) \{\cmexists\sigma_{2}\land \eta(x,\sigma_{2}).\ensuremath{\mathord{\textsf{\slshape{Rand\/}}}}=j\}.
  • The length of dwell periods must be between {T_{\bullet}} and T^{\bullet}:

    {g}{\bigl(\mskip 1mu\ensuremath{\mathord{\textit{dw-p-bd\/}}},\; W_{0}(x,a),\; \eta\mskip 1mu\bigr)} = {f}_{0}(x,a,\eta) {h}(\ensuremath{\mathord{\textit{dw-p-bd\/}}},x,a,\eta)

    where {h}(\ensuremath{\mathord{\textit{dw-p-bd\/}}},x,a)=1 if \eta has a dwell period shorter than {T_{\bullet}} in W_{0}(x,a) or has a dwell period longer than T^{\bullet} there (and, as always, 0 otherwise).

  • Whenever W_{0}(x,a) is damage-free, the transition at \sigma_{2} is a legal one:

    {g}{\bigl(\mskip 1mu\ensuremath{\mathord{\textit{legal-comp\/}}},\; W_{0}(x,a),\; \eta\mskip 1mu\bigr)} = {f}_{0}(x, a, \eta) \{ \cmexists\sigma_{2}\land\neg\ensuremath{\mathord{\textit{legal\/}}}(\eta(x,\sigma_{2}-), \eta(x,\sigma_{2})\}.
  • Whenever W_{1}(x,a) is damage-free and \sigma_{0} exists, x either has a creator or is emerging (see Definition 10.12).

    {g}{\bigl(\mskip 1mu\ensuremath{\mathord{\textit{newborn\/}}},\; W_{1}(x,a),\; \eta\mskip 1mu\bigr)} = {f}_{1}(x, a, \eta) \{\cmexists\sigma_{0}\land\neg{h}(\ensuremath{\mathord{\textit{newborn\/}}}, x, a, \eta) \}

    where {h}(\ensuremath{\mathord{\textit{newborn\/}}}, x, a, \eta)=1 if x has a creator for time \sigma_{0}, or \eta(x,\sigma_{0}) is emerging. Also, the transition in \sigma_{0} is a legal one:

    {g}{\bigl(\mskip 1mu\ensuremath{\mathord{\textit{legal-birth\/}}},\; W_{0}(x,a),\; \eta\mskip 1mu\bigr)} = {f}_{0}(x, a, \eta) \{\cmexists\sigma_{0}\land\neg\ensuremath{\mathord{\textit{legal\/}}}(\eta(x,\sigma_{0}-), \eta(x,\sigma_{0}))\}.
  • Whenever W_{1}(x,a) is damage-free, the transition function applies, based on observation at some (unspecified) time point during the observation interval (“atomicity”):

    {g}{\bigl(\mskip 1mu\ensuremath{\mathord{\textit{trans\/}}},\; W_{1}(x,a),\; \eta\mskip 1mu\bigr)} = {f}_{1}(x, a, \eta) \{\cmexists\sigma_{2}\land\neg{h}(\ensuremath{\mathord{\textit{trans\/}}}, x, a, \eta)\}

    where {h}(\ensuremath{\mathord{\textit{trans\/}}}, x, a, \eta)=1 if there is a t'\in (\sigma_{1},\sigma_{2}-{T_{\bullet}}/4] with

    \eta(x,\sigma_{2}).\ensuremath{\mathord{\textsf{\slshape{Det\/}}}} = \ensuremath{\mathord{\textit{Tr\/}}}(\eta,x,t').\ensuremath{\mathord{\textsf{\slshape{Det\/}}}}.
  • A cell cannot stay vacant if it has would-be creators for a long time and has no neighbor potentially blocking the creation:

    {g}{\bigl(\mskip 1mu\ensuremath{\mathord{\textit{no-birth\/}}},\; W_{1}(x,a),\; \eta\mskip 1mu\bigr)} = {f}_{1}(x, a, \eta) {h}(\ensuremath{\mathord{\textit{no-birth\/}}}, x, a, \eta)

    where {h}(\ensuremath{\mathord{\textit{no-birth\/}}}, x, a, \eta)=1 if the following conditions hold:

    Romanenum.
  • \eta(x,t) is vacant for all t\in[a,a+3T^{\bullet}];

  • for each t\in [a,a+2T^{\bullet}] there is a j\in\{-1,1\} such that (j,\vartheta_{j}(x,t)) is a potential creator of some (non-vacant) state;

  • there is no non-vacant \eta(y,t) with 0<|y-x|<{B}, t\in[a,a+3T^{\bullet}].

  • Example

    Example 10.17 (Special cases)

    KL1W

    To obtain a deterministic cellular automaton as a special case of robust media, set {T_{\bullet}}=T^{\bullet}, r=1, \varepsilon=0, require that the histories have empty damage and that the transition function not give a vacant value.

    Sloppypar.

    The connection between primitive variable-period media and robust media will be set up via a trivial simulation. Let M_{1}=-var({\mathbb{S}}_{1}, {\Lambda}, \ensuremath{\mathord{\textit{Tr\/}}}_{1},{B} ,{T_{\bullet}},T^{\bullet},\varepsilon). We make the additional assumptions that the transition function \ensuremath{\mathord{\textit{Tr\/}}}_{1} satisfies the time marking Condition 10.9. We define a simple simulation \Phi^{*} by this medium of the robust medium

    M_{2}=\ensuremath{\mathord{\textit{Rob\/}}}({\mathbb{S}}_{2}, {\Lambda}, \ensuremath{\mathord{\textit{Tr\/}}}_{2}, {B} , {T_{\bullet}}, T^{\bullet}, \varepsilon, \varepsilon, 1).

    Set {\mathbb{S}}_{2} = {\mathbb{S}}_{1}\times \{0,1\}, identify {\mathbb{S}}_{1} with {\mathbb{S}}_{1}\times\{0\}, and denoting {\mathbb{S}}'_{1}={\mathbb{S}}_{1}\times\{1\}, let \ensuremath{\mathord{\textit{Vacant\/}}}_{2}=\ensuremath{\mathord{\textit{Vacant\/}}}_{1}\cup{\mathbb{S}}'_{1}, \ensuremath{\mathord{\textit{Bad\/}}}_{2}=\ensuremath{\mathord{\textit{Bad\/}}}_{1}\cup{\mathbb{S}}'_{1}. Thus, some new bad states are introduced by turning on a new bit which we can call the “bad bit”. The transition function \ensuremath{\mathord{\textit{Tr\/}}}_{2} is essentially the same as \ensuremath{\mathord{\textit{Tr\/}}}_{1}: it ignores the bad bit. It also satisfies Condition 10.11 trivially: it never destroys or creates cells.

    Let g_{1} be the event function used in the definition of medium M_{1}. We give the definition of s=\eta^{*}(x,t)=\Phi^{*}(\eta)(x,t) for each \eta. If x is not an integer multiple of {B} then s=\ensuremath{\mathord{\textit{Vac\/}}}. If {g}_{1}{\bigl(\mskip 1mu\alpha,\; \{x\}\times(t',t],\; \eta\mskip 1mu\bigr)}=1 for some t'<t and some \alpha\ne\ensuremath{\mathord{\textit{coin\/}}} then s=(\eta(x,t),1) (as some condition is violated, the bad bit is turned on), else s=(\eta(x,t),0).

    It can be verified that this is indeed a simulation.

    Notation

    Notation 11.1

    LAIB

    Only field \ensuremath{\mathord{\textsf{\slshape{Det\/}}}} will be subdivided into subfields: therefore subfields \eta.\ensuremath{\mathord{\textsf{\slshape{Det\/}}}}.\ensuremath{\mathord{\textsf{\slshape{F\/}}}} will be denoted simply as \eta.\ensuremath{\mathord{\textsf{\slshape{F\/}}}}, without danger of confusion.

    Definition

    Definition 11.2 (Amplifier complex)

    133S

    Consider an amplifier (M_{k},\Phi_{k}) where \Phi_{k}=(\varphi_{k*},\Phi^{*}_{k}). For a sequence of fields (\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}_{k}) and parameters D_{k},\varepsilon''_{k}, our amplifiers will use a code complex

    \begin{aligned} \mathbf{H} = (\varphi_{k},\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}_{k}, \gamma_{k})_{k\ge 1} \end{aligned}

    as in (5.3), and they will have in addition the trickle-down property as in Definition 5.11 for the fields \ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{k}=\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}_{k}. We will call such an amplifier an amplifier complex.

    Definition

    Definition 11.4 (Carrying the payload)

    4ATU

    In a robust medium M, recall the transition function t=\ensuremath{\mathord{\textit{Tr\/}}}({\mathbf{r}},{\mathbf{a}}) from (10.7). with input vector {\mathbf{r}}=(r_{-1},r_{0},r_{1}) and the adjacency bits {\mathbf{a}}=(a_{-1},a_{1}). We will say that it carries the payload transition function \ensuremath{\mathord{\textit{Pl-trans\/}}}-trans@\ensuremath{\mathord{\textit{Pl-trans\/}}}.))) if the condition t\ne\ensuremath{\mathord{\textit{Vac\/}}}, r_{0}.\ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}=\ensuremath{\mathord{\textit{Germ\/}}}, {\mathbf{a}}=(1,1) implies t.\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}} = \ensuremath{\mathord{\textit{Pl-trans\/}}}({\mathbf{r}}.\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}).

    Definition

    Definition 11.5 (Uniform program)

    NL6P

    The string \ensuremath{\mathord{\textit{prog\/}}} will be called a uniform program (with complexity coefficient c) for the functions f_{k} if there is some constant c such that it computes on the universal computing medium \ensuremath{\mathord{\textit{Univ\/}}} the value f_{k}({{\mathbf{r}}}) from k,{{\mathbf{r}}} with space- and time-complexities bounded by c(\log k + |{\mathbf{r}}|) where |{\mathbf{r}}| is the total number of bits in the arguments {\mathbf{r}}. If a sequence (f_{k}) of functions has a uniform program it is called uniform. As a special case, a sequence of constants c_{k} is uniform if it is computable with space- and time complexities c\log k from the index k.

    Lemma

    Lemma 11.7 (Amplifier)

    GZ8P

    For large enough R there is a uniform amplifier complex with the parameters introduced above, which also obeys the following conditions:

    Cjenum.
  • Medium

    \label{eq:M_{k}} M_{k}=\ensuremath{\mathord{\textit{Rob\/}}}(\ensuremath{\mathord{\textit{Tr\/}}}_{k},{B}_{k},{T_{\bullet}}_{k},T^{\bullet}_{k},\varepsilon_{k},\varepsilon'_{k}).

    is robust.

  • The damage map of the simulation \Phi_{k} is given as in Definition 10.3.

  • The function \ensuremath{\mathord{\textit{Tr\/}}}_{k} carries the payload transition function \ensuremath{\mathord{\textit{Pl-trans\/}}}_{k} in the sense of Definition 11.4.

  • Definition

    Definition 12.1 (Info track)

    K57L

    Field \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} consists of the subfields \ensuremath{\mathord{\textsf{\slshape{Info\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}, \ensuremath{\mathord{\textsf{\slshape{Info\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Pl-redun\/}}}}, \ensuremath{\mathord{\textsf{\slshape{Info\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Util\/}}}} (referred to mostly as just \ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}, \ensuremath{\mathord{\textsf{\slshape{Pl-redun\/}}}}, \ensuremath{\mathord{\textsf{\slshape{Util\/}}}}). .main@\ensuremath{\mathord{\textsf{\slshape{Info\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}, \ensuremath{\mathord{\textsf{\slshape{Info\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Pl-redun\/}}}}, \ensuremath{\mathord{\textsf{\slshape{Info\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Util\/}}}}.))) The track \ensuremath{\mathord{\textsf{\slshape{Payload\/}}}} contains the intended original information, The track \ensuremath{\mathord{\textsf{\slshape{Pl-redun\/}}}} contains “error check bits” for the track \ensuremath{\mathord{\textsf{\slshape{Payload\/}}}} as in Example 5.14, while the \ensuremath{\mathord{\textsf{\slshape{Util\/}}}} track contains other parts of the represented information of the simulated colony (along with its own error checks).

    Definition

    Definition 12.2 (Adjacency)

    DVM4

    Recall the transition function \ensuremath{\mathord{\textit{Tr\/}}}({\mathbf{r}},{\mathbf{a}}) where {\mathbf{a}}=(a_{-1},a_{1}) says whether the left and right neighbor is adjacent. In our rule language we will refer to a_{j} as

    \begin{aligned} \ensuremath{\mathord{\textrm{adj-nb}}}(j) . \end{aligned}
    Definition

    Definition 12.3 (Colonies)

    O1R1

    The values of the address field \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}} will vary in \left[-{Q} ,2{Q} \right). The colony of a cell x is the set C=\mathopen\{\verythinmathskipz+i{B} : i\in\left[0,{Q}\right)\mskip 1mu\mathclose\} whose starting cell is z = x-(\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}(x) \bmod {Q} ) {B}. We will also say that x belongs to colony C. The originating colony of a cell x is the colony D whose starting cell is x-\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}(x) {B}. We will also say that x originates at colony D. The cells whose colony is their originating colony, will be called inner cells, the other ones will be called outer cells. Two neighbor cells will be called space-consistent if they originate at the same colony.

    Definition

    Definition 12.4 (Cell kinds)

    AJUJ

    Cells will be of a few different kinds, distinguished by the field \ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}.)))

    \ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}.

    The possible kinds are listed in (12.4) below. \ensuremath{\mathord{\textit{Latent\/}}}.))) \ensuremath{\mathord{\textit{Germ\/}}}.)))\ensuremath{\mathord{\textit{Channel\/}}}.)))\ensuremath{\mathord{\textit{Growth\/}}}.))) \ensuremath{\mathord{\textit{Member\/}}}\ensuremath{\mathord{\textit{Member\/}}}.))) The kind of non-latent, non-germ, cells is determined by \ensuremath{\mathord{\textsf{\slshape{Age\/}}}} and \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}. Since it will be possible to determine from the age of a cell whether it has kind \ensuremath{\mathord{\textit{Channel\/}}} or \ensuremath{\mathord{\textit{Growth\/}}}, We will sometimes use therefore just one value \ensuremath{\mathord{\textit{Ext\/}}}_{j}.)))

    \ensuremath{\mathord{\textit{Ext\/}}}_{j}

    in place of \ensuremath{\mathord{\textit{Growth\/}}}_{j} and \ensuremath{\mathord{\textit{Channel\/}}}_{j}. The kinds of cells are ordered by a property called strength as follows:

    \begin{aligned} \ensuremath{\mathord{\textit{Vac\/}}} &< \ensuremath{\mathord{\textit{Latent\/}}} < \ensuremath{\mathord{\textit{Germ\/}}} < \ensuremath{\mathord{\textit{Channel\/}}}_{-1}<\ensuremath{\mathord{\textit{Channel\/}}}_{1} \\ & < \ensuremath{\mathord{\textit{Growth\/}}}_{-1} < \ensuremath{\mathord{\textit{Growth\/}}}_{1} < \ensuremath{\mathord{\textit{Member\/}}}. \end{aligned}

    If a cell needs to be created, overlapping in body a another one then if the new cell is stronger, the weaker one will be erased. This is the only way a cell can turn vacant see the later Condition 10.11 (Cling-to-Life). Let us discuss each kind.

    • The relation \ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}(x,t)=\ensuremath{\mathord{\textit{Vac\/}}} means that there is no cell at site x at time t.

    • A cell will be called dead if it is vacant or latent, and live otherwise. Killing a cell x means turning it latent. Erasing it means turning it vacant.

    • The member cells are “inner” cells as defined above; they are the strongest kind in order to maintain the integrity of colonies.

    • Cells of kind \ensuremath{\mathord{\textit{Ext\/}}}_{j} are outer cells. A right outer cell has addresses \ge {Q}, and a left outer cell has addresses <0.

    • Left channel cells are weaker than right channel cells which are weaker than growth cells. This way, a right-growing channel will erase the left-growing one if it is in its way, and information need not be transmitted between two channels. Also, left channel cells can grow only until address -{Q} +1, and right ones only until 2{Q} -2: thus a channel cannot be extended to cover a full colony.

    • Germ cells exist at the highest level of the hierarchy, in the sense that they are not part of any colony simulating some higher-level cell. They also have the function to carry out a computation, the payload of the whole construction. The member cells on lower levels will receive the results of this computation by a feature of the simulation called trickle-down. Germ cells have addresses in \left[-2{Q} ,3{Q} \right).

    Condition

    Condition 12.6

    KB0P

    Suppose that \varphi^{*}(\eta)(x,t)\notin\ensuremath{\mathord{\textit{Bad\/}}}, the colony with base x at time t is full and is covered with member cells belonging to the same work period, and is not affected by damage (as in Definition 10.15). Then \varphi^{*}(\eta)(x,t) depends only on the \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} track of this colony via some decoding function \alpha^{*}. If the colony is covered with germ or outer cells then the state decoded from this track is latent.

    Definition

    Definition 12.7 (Expansion and retrieval periods)

    LBCY

    The interval before age \ensuremath{\mathinner{\textsf{\upshape{compute-start}}}} is called the retrieval period: then the colony retrieves information from neighbor colonies. The constant K will make it substantially longer than the transition period (\ensuremath{\mathinner{\textsf{\upshape{grow-start}}}},{U}] at the end of the work period when the information to be sent to neighbor colonies would change. The age intervals (0,\ensuremath{\mathinner{\textsf{\upshape{compute-start}}}}] and (\ensuremath{\mathinner{\textsf{\upshape{grow-start}}}},\ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}] for non-germ outer cells and (0,\ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}] for germ cells will be called expansion periods. Cells in their expansion period are called expansion cells.

    Condition

    Condition 12.9 (Dooming)

    3C8B

    Only the following rules can change the field \ensuremath{\mathord{\textsf{\slshape{Doomed\/}}}} without killing the cell:

    Djenum.
  • The sub-rules \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}} and \ensuremath{\mathord{\texttt{\slshape{Heal\/}}}} (defined later) can create doomed or non-doomed cells.

  • At \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}=\ensuremath{\mathinner{\textsf{\upshape{proc-payload-start}}}}, we possibly doom each cell.

  • Definition

    Definition 12.10

    H2UT

    Recall the definition of \lambda in (?). We introduce some delay constants {p}_{0} < {p}_{1} < {p}_{2} < {p}_{3} {p}_{i}.))) whose value will be defined below, further :greek@\tau_{i}.)))

    \label{eq:tau_{i}} \tau_{i} = ({p}_{i}+1)T^{\bullet}.
    Definition

    Definition 13.1 (Locally maintained fields)

    MH1T

    Certain fields, called locally maintained, will be kept constant over the colony, for most of the work period. Each such field \ensuremath{\mathord{\textsf{\slshape{F\/}}}} has a default value. The updating will of such a field always happen at a specific age called the update age. Let

    \begin{aligned} \ensuremath{\mathord{\textit{n\/}}}_{\text{l-m}} \end{aligned}

    be the (constant) number of update ages for locally maintained fields. A cell’s locally maintained field \ensuremath{\mathord{\textsf{\slshape{F\/}}}} is said to be stable if its age is at distance \ge \Delta from the update age, where this constant is defined below in (?). An age n is called stable for \ensuremath{\mathord{\textsf{\slshape{F\/}}}} if \ensuremath{\mathord{\textsf{\slshape{F\/}}}} is stable at age n. It is called simply stable if it is stable for all locally maintained fields, and is also at distance \ge \Delta from ages 0, \ensuremath{\mathinner{\textsf{\upshape{compute-start}}}} and \ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}.

    Example

    Example 13.2

    1PBZ

    Here are some examples of locally maintained fields.

    • The Boolean track \ensuremath{\mathord{\textsf{\slshape{Doomed\/}}}}\ensuremath{\mathord{\textsf{\slshape{Doomed\/}}}}.))) will be set to 1 (true) if the represented big cell must be removed (the site to become vacant), and 0 otherwise. Its default value is 0 (false). Its update age is \ensuremath{\mathinner{\textsf{\upshape{proc-payload-start}}}} (defined in (?)). Cells with \ensuremath{\mathord{\textsf{\slshape{Doomed\/}}}}=1 are called doomed.

    • The track \ensuremath{\mathord{\textsf{\slshape{Growing\/}}}}_{j}.)))

      \ensuremath{\mathord{\textsf{\slshape{Growing\/}}}}_{j}\in\{0,1\},\; j\in\{-1,1\}

      signifies the collective decision of the colony to grow a new neighbor colony in direction j. Its update age is \ensuremath{\mathinner{\textsf{\upshape{proc-payload-start}}}}. The field \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}_{j}.)))

      \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}_{j}\in\{0,1\},\; j\in\{-1,1\}

      will be used to control the creation of a new neighbor. Its default value, in a vacant or new latent cell, is 0. \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}_{j}=1 makes a cell a potential creator in direction j in the sense of Definition 10.12. The value of \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}_{j} of a big cell will be broadcast into the locally maintained track \ensuremath{\mathord{\textsf{\slshape{Growing\/}}}}_{j} of the cells of its representing colony.

    • The track \ensuremath{\mathord{\textsf{\slshape{Pl-commands\/}}}} will contain commands for the processing of payload: see Section ?.

    Condition

    Condition 13.3 (Locally maintained fields)

    MW4Z

    Age 0 is an update age for all locally maintained fields other than \ensuremath{\mathord{\textsf{\slshape{Doomed\/}}}}. If \ensuremath{\mathord{\textsf{\slshape{Doomed\/}}}}=1 then \ensuremath{\mathord{\textsf{\slshape{Growing\/}}}}_{j}=0 for j\in\{-1,1\}.

    Definition

    Definition 13.4

    V2KG

    Two neighbor cells x<y with colors c,d will be expected to have fitting colors. This is expressed by the relation \ensuremath{\mathord{\textit{Fit\/}}}_{1}(c,d) which is 1 if the colors fit and 0 otherwise. Let

    \begin{aligned} \ensuremath{\mathord{\textit{Fit\/}}}_{-1}(c,d)=\ensuremath{\mathord{\textit{Fit\/}}}_{1}(d,c). \end{aligned}

    We will use two examples of the fitting relation:

    Djenum.
  • A color can be an arbitrary symbol from a finite alphabet, and \ensuremath{\mathord{\textit{Fit\/}}}_{j}(c,d)=1 if and only if c=d.

  • A color is an element of \{-1,0,1\}, and \ensuremath{\mathord{\textit{Fit\/}}}_{1}(c,d)=1 if c\le d\le c+1. In what follows we concentrate on the second case, as the other case is treated analogously, only simpler. The function of color is in this case is the following: the area of space where payload computation is happening is marked by color 0, while the space to its left and right by colors -1 and 1 respectively.

  • Definition

    Definition 13.5 (Time consistency)

    IK5K

    Two cells x and y=x\pm {B} with |\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}(x)-{\lfloor {Q} /2\rfloor}|<|\ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}(y)-{\lfloor {Q} /2\rfloor}| belong to the same work period if

    0 \le \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(x)-\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(y) \le 1.

    They straddle a work period boundary if \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(x)=0, \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(y)={U} -1. If one of these cases holds then we will say they are time-consistent.

    Definition

    Definition 13.6 (Siblings)

    7X5D

    Two cells x,x+j{B} for j\in\{-1,1\} are siblings if

    one of the following properties holds.

    Djenum.
  • They belong to the same work period, originate at the same colony (see the definition of originating colony at the beginning of Section ?), either both are germ cells or neither of them is.

    If x is a colony cell and x+j{B} is a growth cell then \ensuremath{\mathord{\textsf{\slshape{Growing\/}}}}_{j}(x)=1 is also required.

  • They belong to the same colony (see the definition of the colony of a cell at the beginning of Section ?), and straddle a work period boundary.

  • They have fitting colors.

  • If they are germ cells with \ensuremath{\mathord{\textit{G-growing\/}}}(\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}) then they agree in their \ensuremath{\mathord{\textsf{\slshape{G-size\/}}}} and \ensuremath{\mathord{\textsf{\slshape{Dominant\/}}}} fields (see Section ?).

  • Definition

    Definition 13.7 (Domains)

    5PW4
    \ensuremath{\mathinner{\textsf{\upshape{max-depth}}}} = \ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}

    with value defined in (?). An interval of cells in which the adjacent cells are siblings will be called a domain. A domain of size n will also be called a n-support of its members. For integer k>0, let us call two cells x,x+k{B} relatives if we can change the states of cells x+j{B} for j=1,\dots,k-1 in such a way that the cells x,x+{B} ,\dots,x+k{B} become a domain. A colony with starting cell x will be called full if it is covered by a domain in such a way that \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}(x+i{B} )\equiv i\pmod {Q}.

    Definition

    Definition 13.8 (Depth)

    FLZM

    Let us call the left depth of a cell x the size of the largest domain of the form \{x-i {B} , x-(i-1){B} ,\dots,x\} within a single colony containing x. The right depth is defined similarly. For example, \ensuremath{\mathord{\textit{depth\/}}}_{-1}(x)>1 \ensuremath{\mathord{\textit{depth\/}}}.))) just means that x has a left sibling.

    For a locally maintained field \ensuremath{\mathord{\textsf{\slshape{F\/}}}} we define the left depth \ensuremath{\mathord{\textit{depth\/}}}_{j,\ensuremath{\mathord{\textsf{\slshape{F\/}}}}}(x) for \ensuremath{\mathord{\textsf{\slshape{F\/}}}} of a cell x the size of the largest interval of the form \{x-i {B} , x-(i-1){B} ,\dots,x\} within a single colony containing x and having constant value of \ensuremath{\mathord{\textsf{\slshape{F\/}}}}.

    A cell will always try to keep track of its depths, up to the maximum possible value. It will use the fields \ensuremath{\mathord{\textsf{\slshape{Depth\/}}}}.)))

    \begin{aligned} \ensuremath{\mathord{\textsf{\slshape{Depth\/}}}}_{j}, \ensuremath{\mathord{\textsf{\slshape{Depth\/}}}}_{j,\ensuremath{\mathord{\textsf{\slshape{F\/}}}}} \in\{1,\dots, \ensuremath{\mathinner{\textsf{\upshape{max-depth}}}}\},\ j\in\{-1,1\}. \end{aligned}

    So if for example left depth is larger than \ensuremath{\mathinner{\textsf{\upshape{max-depth}}}} then the cell may only see \ensuremath{\mathord{\textsf{\slshape{Depth\/}}}}_{-1}=\ensuremath{\mathinner{\textsf{\upshape{max-depth}}}}.

    Definition

    Definition 13.9

    UH9O

    There is

    a field \ensuremath{\mathord{\textsf{\slshape{Frozen\/}}}}.)))

    \begin{aligned} \ensuremath{\mathord{\textsf{\slshape{Frozen\/}}}}\in[-\Delta,\Delta] \cap\mathbb{Z} \end{aligned}

    with the property that when \ensuremath{\mathord{\textsf{\slshape{Frozen\/}}}}\ne 0 then \ensuremath{\mathord{\textsf{\slshape{Age\/}}}} will not be changed. A cell with \ensuremath{\mathord{\textsf{\slshape{Frozen\/}}}}\ne 0 is called frozen.

    Condition

    Condition 13.10 (Address and Age)

    L9YG
    Cjenum.
  • Only \ensuremath{\mathord{\texttt{\slshape{Finish\/}}}} can change \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}} of a live cell.

  • Only \ensuremath{\mathord{\texttt{\slshape{March\/}}}}, \ensuremath{\mathord{\texttt{\slshape{Heal-sync\/}}}} and \ensuremath{\mathord{\texttt{\slshape{Finish\/}}}} can change \ensuremath{\mathord{\textsf{\slshape{Age\/}}}} of a live cell. Of these, \ensuremath{\mathord{\texttt{\slshape{Heal-sync\/}}}} can do it when the cell is frozen and the others when it is not.

  • Definition

    Definition 13.11 (Edges)

    1SOB

    Suppose that cell x has no siblings in direction j, that is it has \ensuremath{\mathord{\textit{depth\/}}}_{j}(x)=1. It will be called a protected edge in that direction if it is some legitimate boundary in that direction, in the sense described below; otherwise, it will be called an exposed edge. Recall expansion periods and cells in Definition 12.7. Essentially, growth edges are protected during the expansion period or if the growth reached a colony end. Here is a list of the types of protected edges, for non-germ cells. For germ cells, the definition will be given in Section ?.

    • Member Colony end-cell towards j.

    • Expansion cell During the expansion period, while j is the direction of expansion. After the expansion period, if the cell is a growth cell and a colony end-cell towards j.

    In a rule, the condition \ensuremath{\mathord{\textit{Xposed\/}}}_{j}.)))

    \ensuremath{\mathord{\textit{Xposed\/}}}_{j}.

    means that the cell {\mathbf{x}} applying the rule is an exposed edge in direction j.

    Lemma

    Lemma 13.14

    PROI

    If some maximal multi-domain has size <{Q}, then the following holds:

    Cjenum.
  • One of its edges is exposed, with the following exception: it consists of germ cells in their expansion period, contains a cell with address {Q}/2, and the size is either >3, or 3; in the latter case the adjacent neighbor cells of the domain are not live.

  • If the size is \le {Q}-d with d>0, then at least one the exposed edges cannot become protected by the death of an outside neighbor, or by shrinking, or by growing by fewer than d steps. The only exception is a germ of size 3 of the above kind: it may become protected if a neighbor dies.

  • Definition

    Definition 14.1

    HBCZ

    We will have some one-bit fields \ensuremath{\mathord{\textsf{\slshape{Dying\/}}}}.)))

    \ensuremath{\mathord{\textsf{\slshape{Dying\/}}}}_{j}, \ j\in\{-1,0,1\},

    with default value 0. We will say that a cell x is dying if \ensuremath{\mathord{\textsf{\slshape{Dying\/}}}}_{0}(x)=1.

    Notation

    Notation 14.3

    M876

    For a relation R, let "<@a\stackrel{\scriptstyle R}{<} b.)))

    a\stackrel{\scriptstyle R}{<} b

    mean “a<b or (a=b and R holds)”.

    Definition

    Definition 14.4

    PHFT

    Let j\in\{-1,1\}. The field \ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}_{j} shows the kind of the cell intended to be created in the adjacent neighbor in direction j. Let

    \begin{aligned} \ensuremath{\mathord{\textit{Non-germ-less\/}}}_{j}&\mathrel{\;\Leftrightarrow\;} Kind_{-j}^{j}\stackrel{\scriptstyle j=1}{>}\ensuremath{\mathord{\textsf{\slshape{Kind\/}}}} \land \ensuremath{\mathord{\textsf{\slshape{Depth\/}}}}_{j}^{j}>1 \land \ensuremath{\mathord{\textsf{\slshape{Dying\/}}}}^{j}_{j}=0 \\ &\land (\ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}^{-j}=\ensuremath{\mathord{\textit{Vacant\/}}}\lor \ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}_{-j}^{j}\stackrel{\scriptstyle j=1}{>}\ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}_{j}^{-j}). \end{aligned}
    Definition

    Definition 14.5

    YEYA

    If a latent cell x came to life by the rule \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}}(j) then we will say that it has been animated. The neighbor in direction j will be called its parent. (The latent cell could have been created earlier by a neighbor, which we could call a “creating parent”.) In case the same result could also have arisen using the neighbor on the other side then the parent cell is defined as the one closer to the center of its colony (or to the left if the animated cell is the center).

    Lemma

    Lemma 14.6

    C9Z0

    Suppose that

    Cjenum.
  • A cell x has just been adapted at time t to a non-germ neighbor y=\vartheta_{j}(x) (this rule being a possible explanation for its becoming live);

  • Rectangle

    (x+\left[-2.1{B} ,3.1{B} \right))\times(t+ (-3T^{\bullet},0]) is damage-free;

  • There is no colony-boundary between y and its sibling required by the rule.

  • Then x and y stay siblings until after t.

    Lemma

    Lemma 14.7 (Creation)

    RA4D

    Assume the following, with J=(t_{0},t_{0} + \tau_{0} + 11T^{\bullet}]:

    Cjenum.
  • Rectangle \left[x-4.1{B} ,x+3.1{B} \right)\times J is damage-free;

  • We have \eta(x-{B} ,t).\ensuremath{\mathord{\textsf{\slshape{Dying\/}}}}_{0}=\eta(x-{B} ,t).\ensuremath{\mathord{\textsf{\slshape{Dying\/}}}}_{-1}=0, and

    \eta(x-{B} ,t).\ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}_{1} \ge \eta(y,t).\ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}\vee \eta(y,t).\ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}_{-1}

    for all live cells (y,t) in the rectangle \left[x,x+2{B} \right)\times J.

  • Then \eta(x,t) is non-vacant for some t in J.

    Condition

    Condition 14.8

    PAWU

    If a cell has kind \ensuremath{\mathord{\textit{Growth\/}}} or \ensuremath{\mathord{\textit{Germ\/}}} then its \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} field’s value is the symbol at \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}\bmod {Q} in the code of a latent big cell. (If, due to a fault, it does not have that value then this would be immediately corrected in the next step.)

    Definition

    Definition 14.9 (Endcells)

    VKE7

    Let {e}_{j}.)))

    {e}_{-1}=0,\ {e}_{1}={Q} -1.

    A cell x is a colony endcell in direction j if \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}(x)\equiv {e}_{j} \pmod {Q}.

    Remark

    Remark 14.11

    QS2D

    It would be convenient here if our robust medium had range r>4, so cells on both sides of the corruption can see each other. But introducing “action at a distance” brings its own headaches.

    Definition

    Definition 14.12 (Healing field)

    RUFZ

    We have a field called

    \begin{aligned} \ensuremath{\mathord{\textsf{\slshape{Healing\/}}}} &\in\{0,1,\dots,\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}\}. \end{aligned}

    Its default value is 0. A cell with \ensuremath{\mathord{\textsf{\slshape{Healing\/}}}}>0 will be called a healing cell. The field

    \begin{aligned} \ensuremath{\mathord{\textsf{\slshape{Decaying\/}}}}\in\{0,1\} \end{aligned}

    will limit the healing process in time.

    Example

    Example 14.15

    2DCL

    The typical application of \ensuremath{\mathord{\texttt{\slshape{Heal-sync\/}}}} is, say, when in a domain of cells with age values 1,1,1,2,3,4,5,5, the damage changes the values of three to

    \begin{aligned} 1,1,1,0,7,6,5,5. \end{aligned}

    Now the cells with age values 0 and 7 become exposed towards each other, and the \ensuremath{\mathord{\textsf{\slshape{Frozen\/}}}} variable develops the values 4,3,2,1,-1,-2,-3,-4. After this, \ensuremath{\mathord{\texttt{\slshape{Heal-sync\/}}}} will gradually bring the ages closer to each other. Here is a possible synchronization history (time going downwards):

    \begin{aligned} \begin{matrix} 1&1&1&0&7&6&5&5 \\ 1&1&0&0&6&6&5&5 \\ 1&1&0&1&6&6&5&5 \\ 1&1&0&1&5&6&5&5 \\ 1&1&0&1&5&5&5&5 \\ 1&1&0&1&4&5&5&5 \\ 1&1&1&1&4&4&5&5 \\ 1&1&1&2&3&4&5&5 \end{matrix}. \end{aligned}

    As in the second line here, the synchronization may not start in the best direction, but since the adaptation is towards the fault in the middle, eventually the fault will disappear.

    It is not hard to see that in general, if the domain to synchronize has width \Delta then the synchronization will be finished within 2\Delta steps.

    Condition

    Condition 14.16 (Animation, killing)

    H11N
    Cjenum.
  • Only the rule \ensuremath{\mathord{\texttt{\slshape{Die\/}}}}({p}) can kill a cell. It is invoked always with {p}\ge{p}_{1}.

  • Sloppypar.

    Only the following rules can invoke \ensuremath{\mathord{\texttt{\slshape{Die\/}}}}: \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}}, \ensuremath{\mathord{\texttt{\slshape{Purge\/}}}}, \ensuremath{\mathord{\texttt{\slshape{Decay\/}}}}.

  • Only the rule \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}} can erase a cell (make it vacant).

  • A protected edge can be killed only if a neighbor sets \ensuremath{\mathord{\textsf{\slshape{Kind\/}}}}_{j}\ne\ensuremath{\mathord{\textit{Latent\/}}} in its application of a growth rule or the end healing rule.

  • Only the rule \ensuremath{\mathord{\texttt{\slshape{Create\/}}}} can change \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}_{j}.

  • Sloppypar.

    Only the rule \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}} can create a non-latent cell, invoked only by \ensuremath{\mathord{\texttt{\slshape{Heal\/}}}}.\ensuremath{\mathord{\texttt{\slshape{passive\/}}}}, \ensuremath{\mathord{\texttt{\slshape{Grow\/}}}}.\ensuremath{\mathord{\texttt{\slshape{passive\/}}}} and \ensuremath{\mathord{\texttt{\slshape{Germ-grow\/}}}}.\ensuremath{\mathord{\texttt{\slshape{passive\/}}}} (with the corresponding delay). It is also the only rule by which a potential creator can arise in the sense of Definition 10.12.

  • Lemma

    Lemma 14.17 (Exposing)

    9J4K

    A rule exposes an edge only in the following cases:

    Djenum.
  • Member cell whose neighbor is doomed, and dies at \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}=0, that is at a cut, as in Definition 12.8.

  • Channel cell, \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}=\ensuremath{\mathinner{\textsf{\upshape{compute-start}}}}.

  • Germ cell or growth, non-end-cell. \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}=\ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}, or when a germ cell is killed by \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}} invoked in \ensuremath{\mathord{\texttt{\slshape{Germ-grow\/}}}}.\ensuremath{\mathord{\texttt{\slshape{passive\/}}}}.

  • Lemma

    Lemma 14.18

    H24Q

    Suppose that I_{1}(x) is damage-free during (u-T^{\bullet},u] (that is x is not affected via neighbors during this time, as in Definition 10.15), and the non-germ cell x becomes animated at time u. Then there is a j\in\{-1,1\} and t'\in(u-3T^{\bullet},u-{T_{\bullet}}/2] such that the following holds:

    Cjenum.
  • x gets animated by parent x+j{B}, whose state at that time makes it a sibling of (x,u).

  • If I_{0}(x)\cup I_{0}(x+j{B} ) remains damage-free during (u,u+T^{\bullet}] then x and x+j{B} remain siblings during that time.

  • Lemma

    Lemma 14.19 (Glue)

    CQ37

    Suppose that the adjacent cells x,x+{B} are siblings just before the time t_{0}, at which x breaks the sibling relation. Suppose also that both x and x+{B} are unaffected by damage even via neighbors during (t_{0}-T^{\bullet},t_{0}]. Then we have the following possibilities:

    Djenum.
  • A cut as in Definition 12.8.

  • Cell x-{B} was not a sibling of x at the last observation time of x, and the switch kills x by \ensuremath{\mathord{\texttt{\slshape{Decay\/}}}}, \ensuremath{\mathord{\texttt{\slshape{Purge\/}}}} or \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}}.

  • The statement also holds if we exchange left for right and x+{B} for x-{B}.

    Proof of Lemma 14.19

    f a cell x breaks a sibling relation by a rule, then one of the cases listed in the statement of the lemma holds. This follows from the definition of siblings, Conditions 13.10 (Address and Age), ?, ?, and the healing rule. We will show that if neither of the possibilities listed in the statement of the lemma holds then the cells remain siblings.

    Step+.

    step:glue.new Suppose that x or x+{B} were animated at some time in (t_{0}-T^{\bullet},t_{0}]; without loss of generality, suppose that the cell was x+{B}.

    Prooof.

    Then x+{B} will be without an age change or dying for at least {p}_{0}{T_{\bullet}} time units which is longer than the whole period under consideration, as (?) implies {p}_{0} \ge 5\lambda. If x also underwent animation during this interval then the same is true for it, hence the two cells remain siblings. Suppose therefore that x has been live during (t_{0}-T^{\bullet},t_{0}]. The rule \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}} implies that x+{B} is not a germ unless x is a parent. If x is a parent of x+{B}, then part ? of Lemma 14.18 (Parent) implies that the two cells remain siblings for at least T^{\bullet} time units; after this, both cells have seen each other as siblings and therefore Condition 13.10 (Address and Age) shows that they remain siblings until a cut or a death.

    Suppose that x is not a parent of x+{B}. If it has changed its age within the last 4T^{\bullet} time units, then it will not change the age for a long time after, and the two cells remain siblings. If it has not changed its age within this time then for at least 2T^{\bullet} time units before the observation time before the animation, it was exposed to the right (since x+{B} was latent), and therefore the rule ? (\ensuremath{\mathord{\texttt{\slshape{Freeze\/}}}}) froze it, keeping x and x+{B} siblings.

    Step+.

    step:glue.nonsib Suppose now that both cells have been live during (t_{0}-T^{\bullet},t_{0}].

    Prooof.

    If x changed its age within this time, then it will not change its age soon, and therefore remains a sibling. Suppose therefore that x does not change its age during this time. Suppose that x+{B} became a sibling of x during this time. Then it was not a sibling before, and the \ensuremath{\mathord{\texttt{\slshape{Freeze\/}}}} rule must have frozen x, so x would not change its age so soon. If x+{B} was a sibling all the time during (t_{0}-T^{\bullet},t_{0}], then x sees that x+{B} is a sibling and will not break the sibling relation. This is guaranteed even within the rule \ensuremath{\mathord{\texttt{\slshape{Heal-sync\/}}}}, which may change age in both directions.

    Definition

    Definition 15.1 (Links)

    ZJSG

    For times t<u, assume cell x is live at t and its body is damage-free during [t,u], and there are no switching times in the open interval (t,u). Then we say that point (x,t) is connected by a vertical link to point (x,u). If one end of a vertical link is not a switching time, then the link is called short. If cells x,x+{B} are siblings at time t or (t-) such that \left[x-{B} ,x+2{B} \right) is damage-free during (t-T^{\bullet},t], then the points (x,t), (x+{B} ,t) are said to be connected by a horizontal link .

    If point (y,t') is, according to case ? of Lemma 14.18 (Parent) a parent of point (x,u), we will say that (y,t') is connected by a parental (maternal or paternal) link to point (x,u). A link is a link of one of these kinds. A link is steep or, equivalently, slow if it is a non-short vertical link or a parental link. (Since time is the second coordinate, steepness of a line is synonymous to slowness of the movement of a point along it.)

    Definition

    Definition 15.2

    4SRH

    A sequence (x_{0},t_{0}), \dots, (x_{n},t_{n}) with t_{i}\le t_{i+1} such that subsequent points are connected by links, is called a path.

    A path with only steep links is steep, or slow. A backward path is the reversed reading of a forward path, backwards in time. The adjective “forward” or “backward” will be omitted, when it is obvious from the context. For a path P=(x_{0},t_{0}),\dots,(x_{n},t_{n}) and t\in[t_{0},t_{n}], let :cap@P(t).)))

    P(t)

    be x_{i} for the smallest i with t\in[t_{i},t_{i+1}].

    Lemma

    Lemma 15.3 (Crossing)

    COMW

    Let (x_{1},s_{1}),\dots,(x_{m},s_{m}) and (y_{1},t_{1}),\dots,(y_{n},t_{n}) be paths with s_{1}=t_{1}, s_{m}=t_{n}, x_{1}\le y_{1}, x_{m}\ge y_{n}. Then there are i,j such that x_{i}=y_{j} and either t_{j}\in[s_{i},s_{i+1}] or s_{i}\in[t_{j},t_{j+1}].

    Lemma

    Lemma 15.5 (Skirting)

    TDOS

    Let \left[a_{0},a_{1}\right)\times(u_{0},u_{1}] denote the (only) island in the area under consideration. Consider a traceable live point (x_{0},t_{0}). There is a path going backwards from (x_{0},t_{0}) and ending either in time u_{0} or in a birth (in the sense of Rule \ensuremath{\mathord{\texttt{\slshape{Birth\/}}}} of Algorithm ?). It has at most \Delta+1 non-steep links (with \Delta as in (?)) which, with one possible exception, form a series of up to \Delta consecutive horizontal links, and can only cross a colony boundary in the inward direction, and only if \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}<\ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}+\Delta on all cells involved.

    Proof of Lemma 15.5

    et us start constructing a steep path c_{0},\dots,c_{n} with

    c_{i}=(x_{i},t_{i})

    backwards in time from (x_{0},t_{0}), consisting of either vertical links, or parental links if the conditions of Lemma 14.18 (Parent) are applicable. If we get to time u_{0} then we are done. Otherwise let us stop just before going below u_{1}+T^{\bullet}, with c_{k} being the last element. Then the body of x_{k} intersects \left[a_{0}-1.1 {B} ,a_{1}+1.1 {B} \right): indeed, otherwise we could continue the path either by a vertical or by a parental link. The vertical link would be shorter than T^{\bullet}, and the parental link would lead to a damage-free cell, so either of them would be allowed.

    Step+.

    step:skirting.bridge There is an i\le k such that (x_{i},t_{i}) can be connected by horizontal links that do not cross a colony boundary in the outward direction, to a cell y unaffected by the damage even via neighbors at any time (in the rectangle under consideration).

    Pproof.

    Let us go back on the path for k,k-1,\dots until the first i (counting from k) such that either t_{i}>u_{1}+(\Delta+1)\tau_{0}, or c_{i} is a parent of c_{i-1}; let us call it i_{1}.

    Suppose first t_{i_{1}}>u_{1}+(\Delta+1)\tau_{0}. Then there is some i_{1}<i\le k such that (x_{i},t_{i}) can be connected by horizontal links to a directly unaffected cell y. Indeed, if there is not, then x_{i}=x_{k}, i=k,k-1,\dots,i_{1}, since we have not encountered a parent before. The part of the domain containing x_{k} that consists of cells directly affected by damage has size \le\Delta. If we cannot pass away from it via siblings within the same colony or towards the originating colony then at least one end will be exposed and the depth will also be bounded by \Delta. This allows the \ensuremath{\mathord{\texttt{\slshape{Purge\/}}}} rule to gradually eliminate this part, including x_{k}, leading to a contradiction. The time this takes is at most \DgT^{\bullet} to propagate the depth information, followed by \Delta\tau_{0} to apply the steps of \ensuremath{\mathord{\texttt{\slshape{Purge\/}}}} until x_{k} is reached, for a total time of \Delta\tau_{0}+\DgT^{\bullet}. This shows t_{0}\le u_{1}+(\Delta+1)\tau_{0} since \Delta<{p}_{0}. By the definition of \ensuremath{\mathinner{\textsf{\upshape{purge-t}}}} this contradicts the assumption of the traceability of (x_{0},t_{0}). If the only way to get by horizontal links to a directly unaffected cell is to cross a colony boundary in the inward direction with \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}\ge\ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}+\Delta then there is an exposed cell in the opposite direction, at distance \le\Delta {B}, so \ensuremath{\mathord{\texttt{\slshape{Purge\/}}}} will act again in the same way.

    Suppose now that c_{i_{1}} is a parent of c_{i_{1}-1}. Let us then go back on the path for i=i_{1},i_{1}-1,\dots until the first i (counting from i_{1}) such that t_{i}>t_{i_{1}-1}+(\Delta+1)\tau_{0}. There is such an i, and we have x_{i}=x_{i_{1}-1} for all i, since the newborn x_{i_{1}-1} cannot be a parent sooner. Indeed, Condition ?, ? says that animation happens only via healing or growth, and even the faster healing step has a delay of {p}_{1}. By the same reasoning as above, there is some i_{1}<i\le k such that (x_{i},t_{i}) can be connected by a sequence of at most \Delta horizontal links not crossing a colony boundary in the outward direction, to a directly unaffected cell y.

    Step+.

    step:skirting.finish There is a steep path backwards in time from the point (y,t_{i}) computed above, going only either on vertical or parental links, and ending below time u_{0}.

    Pproof.

    Let us construct such a path. If it contains at most one parental link, then the body of cells it reaches still is damage-free, hence the path can be continued. On the other hand, it cannot contain two parental links, since a newborn x_{i_{1}-1} cannot be a parent soon.

    Definition

    Definition 15.7 (Age progress)

    GRAB

    Let P=\mathopen( c_{0},\dots,c_{n}\mathclose) be a forward path. The age progress of P is defined as

    \begin{aligned} \ensuremath{\mathord{\textit{age-progress\/}}}(P) = \sum_{i=0}^{n-1}(\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(c_{i+1})-\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(c_{i}) \mskip-\medmuskip\mkern5mu\mathbin {\operator@font amod}\penalty900 \mkern5mu\mskip-\medmuskip {U} ). \end{aligned}
    Lemma

    Lemma 15.8

    V5BI

    Suppose that a trace-back path P with n links has time projection d<T_{\bullet}^{*}/4. Then the following holds.

    Cjenum.
  • P passes through at most 3 colonies, for a total space projection of <2.1{Q} {B}.

  • d\ge (n-\Delta-1){T_{\bullet}}/2. If the path has no parental links then the factor 1/2 can be omitted.

  • The age progress of P is at most n/{p}_{1}+\Delta+2.

  • Definition

    Definition 15.9 (Gaps)

    H0TH

    Consider an open interval G=(l,r) at some time t, where 0 < r - l is divisible by {B}.

    We say that G is a right gap with size |G|=r-l-{B} if every traceable cell in G can be space-consistent with r only if it is a germ cell. The right age of the gap G is is the upper bound of the age of these germ cells (it is 0 if the gap contains no germ cells). If G is contained in the colony of r then it is called an interior gap.

    A right bad gap is a gap of right-age

    \begin{aligned} \lambda\ensuremath{\mathinner{\textsf{\upshape{split-n}}}}(\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}/2+1) \end{aligned}

    containing an interior gap of size \ge\ensuremath{\mathinner{\textsf{\upshape{gap-lb}}}}{B}. If the gap itself is not interior then its right edge is required to be an exposed right outer cell. Left gaps are defined similarly.

    Definition

    Definition 15.10 (Gap path)

    3GGB

    Suppose that in a time interval [v_{0},v_{1}], the gap G(t)=(l(t),r(t)) is defined for all t, in such a way that all cells r(t) are space-consistent with each other, and G(t_{1})\cap G(t_{2})\ne\emptyset for all t_{1}, t_{2} with |t_{2}-t_{1}|\le 3T^{\bullet}. Then G(t) is called a (right) gap path, and the right age of the gap path is the maximum of the right ages of the gaps in it.

    Lemma

    Lemma 15.12 (Running Gap)

    0MOV

    Recall the definition of \ensuremath{\mathinner{\textsf{\upshape{gap-lb}}}} in (?). Let P_{1}=(x_{0},v_{0}),\dots,(x_{n},v_{n}) be a trace-back path (listed forwards), let L,k be positive integers with

    \begin{aligned} L &< {Q} ^{2}, \\ k &< {U} - 3 L{p}_{2}\lambda. \end{aligned}

    Assume the following:

    Cjenum.
  • y_{0}<x_{0} are in the same domain at time v_{0}.

  • The interval \left[y_{0}-2.1{B} ,x_{0}+3.1{B} \right) has been noise-free during (v_{0}-T^{\bullet},v_{0}].

  • y_{0} is an exposed left edge at time v_{0} (see Section ?), and has been the right end of a bad gap of right-age k during (v_{0}-T^{\bullet},v_{0}]. Its age is not within \Delta steps of any of the age values listed in Lemma 14.17 (Exposing), with \Delta defined in (?).

  • If y_{0} is a left outer cell then P_{1} is in the same colony. In this case, let Z be the starting cell of the originating colony. Otherwise, Z=\infty.

  • v_{n}-v_{0}\le L\tau_{2}.

  • Then during (v_{0},v_{n}], a right gap path G(t)=(l(t),r(t)) can be defined, with r(v_{0})=y_{0},

    \begin{aligned} r(v_{n}) &\ge Z\land {\left( y_{0} + {B} {\bigl(\mskip 1mu\frac{|v_{n}-v_{0}-\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}}|^{+}}{3\tau_{2}}-2\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}-\ensuremath{\mathinner{\textsf{\upshape{island-size}}}}-11\mskip 1mu\bigr)}\right)}, \end{aligned}

    |G(t)| >0, with right-age < k + 3 L\lambda{p}_{2}.

    Proof

    Proof

    LZF3

    et r(v_{0})=y_{0}, and let l(v_{0}) be the leftmost cell such that the gap (l(v_{0}),r(v_{0})) has right-age \le k.

    Step+.

    step:rn-gap.inward Let t_{1}>v_{0}. Assume that for all t\le t_{1}, a gap path G(t) is defined with the desired properties and in such a way that (r(t_{1}),t_{1}) is not a germ cell younger than k+6L{p}_{2}\lambda, and is traceable. Then r(t_{1}) is an exposed edge, space-consistent with r(v_{0}).

    Pproof.
    Step+.

    step:rn-gap.inward.path Let us build a path.

    Prooof.

    We start by building a backward trace-back path of length m

    P_{2}=((z_{0},w_{0})=(r(t_{1}),t_{1}),\dots,(z_{m},w_{m}))

    ending at time v_{0}. Lemma 15.8 and the bound ? gives

    m \le \Delta+1+2(v_{n}-v_{0})/{T_{\bullet}} \le \Delta+1+2L\tau_{2}/{T_{\bullet}} < 3L\lambda{p}_{2}.

    The path does not end in a birth; indeed, otherwise (r(t_{1}),t_{1}) would be a germ cell younger than 3L{p}_{1}\lambda contrary to the assumption. It does not enter the gap; otherwise (r(t_{1}),t_{1}) would be a germ cell younger than k+3L\lambda{p}_{2}+3L\lambda{p}_{2}, which was excluded. Therefore defining x=P_{2}(v_{0}) gives x\ge y_{0}. Without loss of generality, we can suppose x\le x_{0}. Otherwise, Lemma 15.3 (Crossing) implies that path P_{2} crosses P_{1} and we can switch from P_{2} to P_{1} at the meeting point. Thus, x is on the interval [y_{0},x_{0}], aligned with x_{0}.

    Combine P_{2} and the horizontal path H from (x,v_{0}) to (y_{0},v_{0}) into a single chain of links. It has at most 3{Q} horizontal links on H, and then at most \Delta+1+2(v_{n}-v_{0})/{T_{\bullet}} links on P_{2}, giving fewer than

    3{Q} + 2(v_{n}-v_{0})/{T_{\bullet}} + \Delta+1

    links. We have r(t)\ge {B}(y_{0}-2\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}-\ensuremath{\mathinner{\textsf{\upshape{island-size}}}}-11).

    Indeed, the only way for r(t) to move left is via an island (can happen at most once) that is then connected to the right end of the gap by healing.

    Step+.

    step:rn-gap.inward.exposed A protected left edge cannot occur on H+P_{2}.

    Pproof.

    Suppose first that (y_{0},v_{0}) is a member or right outer cell, or a germ cell with \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}>0. Then the large bad gap on its left contains, by the definition of bad gaps, a gap in the same colony or in the originating colony. The path P_{2} could cross it only by repeated parental links. But the size of the gap is too large for using rule \ensuremath{\mathord{\texttt{\slshape{Heal-revive\/}}}}, since the field \ensuremath{\mathord{\textsf{\slshape{Healing\/}}}} limits the number of applications. Instead, P_{2} (when traveled forward) would first have to walk right via parental links to participate in the creation of a colony and then walk back via parental links through the expansion process from that colony—for which there is not enough time due to (?).

    Suppose now that (y_{0},v_{0}) is a left outer cell. By requirement ?, then the path P_{1} stays in the colony of y_{0}, and hence so does the whole gap path. Since the cell is exposed, its age is already past the expansion stages. Walking right, the age of cells on the path H (which remains in the same colony as well) does not decrease except when it crosses into another work period (this is taken care of by our Definition 15.7 of age progress that uses {}\mskip-\medmuskip\mkern5mu\mathbin {\operator@font amod}\penalty900 \mkern5mu\mskip-\medmuskip {U}). Indeed, by Definition 13.5 (Time consistency), the ages of siblings must be non-increasing as one is moving away from the center of the originating colony. It is also non-decreasing on the trace-back part P_{2}, except possibly on the \le\Delta horizontal links allowed by that Lemma 15.5 (Skirting). Therefore the age of (r(t_{1}),t_{1}) cannot be smaller by more than \Delta than that of (y_{0},v_{0}). If the age is not smaller at all then (r(t_{1}),t_{1}) is also exposed, since the number of steps on the path is not sufficient to get into an expansion stage of the next work period. If decreasing the age by \Delta makes it protected, then one of the cases in Lemma 14.17 (Exposing) must have occurred within the last \Delta steps before the age of (y_{0},v_{0}): but this has been excluded by the condition ? of the lemma we are proving.

    Suppose that (y_{0},v_{0}) is a germ cell with \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}<0.

    Since it is exposed to the left its age is \ge\ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}, and its address is >-{Q}. In this case, the same argument works as for left outer cells above.

    A large gap cannot be closed by the healing rule, but it can be narrowed somewhat. Suppose that for a gap G=(l,r) the cells r,r+{B} ,\dots,r+k{B} are siblings with \ensuremath{\mathord{\textsf{\slshape{Decaying\/}}}}(r+i{B} )=1, \ensuremath{\mathord{\textsf{\slshape{Healing\/}}}}(r+i{B} )=k-i. Then we set r'=r+k{B}. If these conditions are not satisfied then set r'=r. We define similarly, l'=l-k{B} for an appropriate k. The values l',r' will be called the adjusted edges of the gap, and we will write G'=(l',r'). the adjusted size is |G'|=r'-l'-{B}.

    Step+.

    step:rn-gap.no-dam Assume that the gap G(t) with the desired properties was defined up to time f_{0}, with adjusted size |G'(f_{0})|\ge 2\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}} {B} +2 and right age \le k. Assume also that in the area where we define the path further, all cells are unaffected even via neighbors during (f_{0}-\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}},f_{1}].

    Then the gap path G(t) can be defined further in (f_{0},f_{1}] in such a way that as long as r(t) did not reach Z:

    \begin{aligned} (r(f_{1})-r(f_{0}))/{B} &\ge \frac{f_{1}-f_{0}}{3\tau_{2}}-\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}-1, \\ (|G(f_{1})|-|G(f_{0})|)/{B} &\ge \frac{f_{1}-f_{0}}{3\tau_{3}} - 2\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}} - 2. \end{aligned}

    If r(t) reaches Z it never decreases again.

    Pproof.

    Define G(t) as follows. Suppose that it was defined up to time t_{1}, and let t_{2} be the next time that is a switching time of either l(t_{1})+{B} or r(t_{1})-{B} or r(t). We distinguish the following cases.

    Djenum.
  • t_{2} is a switch of l(t_{1})+{B}. If the switch is an animation creating a sibling of l(t_{1}), then l(t_{2})=l(t_{1})+{B}.

  • t_{2} is a switch of r(t_{1})-{B}. If the switch is an animation creating a sibling of r(t_{1}), then r(t_{2})=r(t_{1})-{B}.

  • t_{2} is a switch of r(t). If r(t_{1}) dies, then r(t_{2}) is the closest cell to the right of r(t_{1}) that is not a germ cell younger than k+2(t_{2}-f_{0})/{T_{\bullet}}+1.

  • In all other cases, we leave G(t) unchanged.

  • If r(t) reaches Z, it will never decrease again. Indeed, this happens only if left outer cells were exposed to the left. Without loss of generality, assume that these outer cells were growth cells. In this case, \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(Z)>\ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}.

    As Z is protected to the left, the healing rule does not create a left neighbor of Z. The only way that r(t)=Z could move left is by the growth rule, but it does not work for \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(Z)>\ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}.

    Let us show

    \begin{aligned} (r'(f_{1})-r'(f_{0}))/{B} &\ge {\left\lfloor \frac{f_{1}-f_{0}}{3\tau_{2}}\right\rfloor}, \end{aligned}

    which will prove (?). Here we assume that Z has not been reached. Since the conditions of part ? are satisfied, the cell y=r(t) is an exposed left edge for all t\in(f_{0},f_{1}].

    Hence the longest it can take to move r'(t) right is to have the rule \ensuremath{\mathord{\texttt{\slshape{Heal-revive\/}}}} move r(t) left by up to \ensuremath{\mathinner{\textsf{\upshape{heal-span}}}} cells; then all of them die by decaying. The \ensuremath{\mathord{\texttt{\slshape{Heal-revive\/}}}} steps and the killing of the healing cells take time at most \tau_{0} each, for a total of 2\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}\tau_{0}=\tau_{2}, setting the field \ensuremath{\mathord{\textsf{\slshape{Decaying\/}}}} takes time at most \tau_{2}, and the final killing again time \tau_{0}.

    Now let us show (?). The inequality

    \begin{aligned} (l'(f_{1})-l'(f_{0}))/{B} &\le {\left\lceil \frac{f_{1}-f_{0}}{{p}_{3}{T_{\bullet}}}\right\rceil} \end{aligned}

    follows from the fact that l'(t) can only increase when it is equal to l(t) and increases via the the growth rule. But the next application of \ensuremath{\mathord{\texttt{\slshape{Grow\/}}}} is away by a waiting period of length \ge{p}_{3}{T_{\bullet}}.

    Let us combine (?) and (?).

    \begin{aligned} (|G'(f_{1})|-|G'(f_{0})|)/{B} &\ge (f_{1}-f_{0}){\left( \frac{1}{3{p}_{2}T^{\bullet}}-\frac{1}{{p}_{3}{T_{\bullet}}}\right)} - 2. \end{aligned}

    Now, using the definition of {p}_{3} in (?),

    \begin{aligned} \frac{1}{3{p}_{2}T^{\bullet}}-\frac{1}{{p}_{3}{T_{\bullet}}}=\frac{{p}_{3}{T_{\bullet}}-3 {p}_{2}T^{\bullet}}{3 {p}_{2} {p}_{3}{T_{\bullet}}T^{\bullet}} \ge \frac{{p}_{3}-3 {p}_{2}\lambda}{3 {p}_{2} {p}_{3}T^{\bullet}} \ge \frac{1}{3{p}_{3}{T_{\bullet}}}, \end{aligned}

    hence the estimate (?).

    Step+.

    step:rn-gap.dam Let \left[a_{0},a_{1}\right)\times(u_{0},u_{1}] be an island with u_{0}\in (v_{0},v_{n}]. Then the gap path G(t) with the desired properties can be defined for t\in (u_{0},u_{1}+\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}}]. We will have

    \begin{aligned} r(u_{1}+\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}}) &\ge r(u_{0})-(\ensuremath{\mathinner{\textsf{\upshape{island-size}}}}+9){B} , \\ |G(u_{1}+\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}})|&\ge |G(u_{0})|-(2\ensuremath{\mathinner{\textsf{\upshape{island-size}}}}+19){B} . \end{aligned}
    Pproof.

    Let us define l(t) for t\in(u_{0},u_{1}+\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}}]. If a_{0}\le l(u_{0})+5.1{B}, then we set l(t) to be the first site x aligned with l(u_{0}) to the right of a_{1} and l(u_{0})+{B} that is unaffected even via neighbors. This definition is justified, since growth or healing do not have time to add any cell further to the right of l(u_{0})+{B}. Now l(t)\le l(u_{0})+(5.1+\ensuremath{\mathinner{\textsf{\upshape{island-size}}}}+3.1){B} <l(u_{0})+\ensuremath{\mathinner{\textsf{\upshape{island-size}}}}+9{B}.

    If a_{0} > l(u_{0})+5.1{B}, let l(t)=l(u_{0})+{B} since, as noted above, at most one cell can be added to l(u_{0}) by growth or healing during \left[u_{0},u_{1}+\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}}\right).

    The definition of r(t) is done symmetrically similarly (but only as a lower bound).

    Thus, the island may decrease the gap by at most \ensuremath{\mathinner{\textsf{\upshape{island-size}}}}+9{B} on one side; with another possible decrease of size {B} on the other side, this gives the size estimate of statement ?.

    In the space-time rectangle considered, at most one island occurs: indeed, v_{n}-v_{0}\leT_{\bullet}^{*}/2 follows from ? and (?). Use the construction of part ? up to the time u_{0} of the start of the island, then construction of part ? from u_{0} to u_{1}+\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}} (or v_{n}, whichever comes first), then possibly again the construction of part ? from u_{1}+\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}} to v_{n}, we defined G(t) for all t\in[v_{0},v_{n}].

    Step+.

    step:rn-gap.age For all t\in[v_{0},v_{n}], the gap G(t) has right-age \le k+2(t-v_{0})/{T_{\bullet}}+1. In particular, according to the assumed bound on v_{n}-v_{0}, at time v_{n}, it still has age at most

    \begin{aligned} k+2(v_{n}-v_0)/{T_{\bullet}}+1 \le k+2L\tau_{2}/{T_{\bullet}}+1 < k+3L{p}_{2}\lambda, \end{aligned}

    as stated in the lemma.

    Pproof.

    Let z_{1} be a live cell in G(t) space-consistent with r(t), and let us build a sequence (z_{1},w_{1}), (z_{2},w_{2}), \dots with f_{1}=w_{1}\ge w_{2}\ge\dotsm as follows. Without loss of generality, assume that w_{1} is a switching time of z_{1}. If z_{1} is live at w_{1}- then z_{2}=z_{1} and w_{2} is the previous switching time of z_{1}. Otherwise, either (z_{1},w_{1}) is a newborn germ cell, in which case the sequence ends at (z_{1},w_{1}), or it has a parent (x,u).

    If x\in G(u) then z_{2}=x, w_{2}=u. Let us show that there is no other possibility. Indeed, otherwise, z_{1} would have been created by animation which, by Condition ?, ? can only be by healing or growth. Since r(t) is exposed, growth can only happen from the left. We end up with one of the cases of the definition of G(t) above, and thus with z_{1}\not\in G(w_{1}), contrary to the assumption.

    By the parent construction, w_{2}\le w_{1}-{T_{\bullet}}, and \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(z_{1},w_{1})\le\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(z_{2},w_{2})+1. The value w_{i} decreases at least {T_{\bullet}}/2 in every step, while the age of (z_{i},w_{i}) can decrease by at most 1. Since it can only end in a birth or a germ cell in G(t), this and ? proves the age bound.

    Step+.

    step:rn-gap.finish Let us lower-bound the growth of G(t) for t\in[v_{0},v_{n}].

    Prooof.

    Since we applied the estimate of part ? twice and the estimate of part ? once, we get

    \begin{aligned} (r(v_{n})-r(v_{0}))/{B} &\ge \frac{|v_{n}-v_{0}-\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}}|^{+}}{3\tau_{2}}-2\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}-\ensuremath{\mathinner{\textsf{\upshape{island-size}}}}-11, \end{aligned}

    and

    \begin{aligned} (|G(v_{n})|&-|G(v_{0})|)/{B} \\ &\ge \frac{|v_{n}-v_{0}-\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}}|^{+}}{3\tau_{3}} - 4\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}} -2\ensuremath{\mathinner{\textsf{\upshape{island-size}}}}-21. \end{aligned}

    Hence using (?), |G(t)| never decreases below |G(v_{0})|-\ensuremath{\mathinner{\textsf{\upshape{gap-lb}}}}{B} >0.

    Lemma

    Lemma 15.14 (Healing Cause)

    7VYW

    Let c_{0}=(x_{0},t_{0}) be a cell with \ensuremath{\mathord{\textsf{\slshape{Healing\/}}}}(c_{0})>0,

    \begin{alignedat}{3} D &= x_{0}+\left[-(\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}+0.1){B} ,(\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}+1.1) {B} \right), \\ I &= (t_{0}-2\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}T^{\bullet},t_{0}]. \end{alignedat}

    Assume that D\times I is damage-free. Then there is a backward path with at most \ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}-1 horizontal links, at most 1 parental link, and at most 2\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}} links altogether, connecting c_{0} to an exposed cell.

    A similar statement holds if \ensuremath{\mathord{\textsf{\slshape{Frozen\/}}}}(c_{0})\ne 0, except that here the length of the path is bounded by 2\Delta, with \Delta defined in (?).

    Definition

    Definition 15.15 (Boundary path)

    KRIP

    Let us call the sibling relation between two cells strong, if either they have been siblings for at least 2T^{\bullet} time units or one cell is a parent of the other.

    A cell is called for example a weak left exposed edge if it is either a left exposed edge or would be one in case it had no left sibling, and has no strong left sibling. A sequence R_{1}=(y_{0},v_{0}),\dots, (y_{m},v_{m}) of cell-time pairs with v_{0}<v_{1}<\dots<v_{m} will be called a left boundary path if y_{i} is a weak left exposed edge during (v_{i},v_{i+1}) and one of the following is true:

    Djenum.
  • Cell y_{i-1}=y_{i}-{B} dies at time t_{i} and is a strong sibling of y_{i} at time t_{i}-.

  • Cell y_{i}=y_{i-1}-{B} is created at time t_{i} by parent y_{i-1}.

  • Lemma

    Lemma 15.16 (Bad Gap Opening)

    HLGB

    For m=\ensuremath{\mathinner{\textsf{\upshape{split-n}}}} let R_{1}= (y_{0},v_{0}), \dots, (y_{m},v_{m}) be a left boundary path that does not leave the colony of (y_{m},v_{m}) on the left (it may leave on the right). Assume that the the segment

    \begin{aligned} \left[\textstyle\bigwedge_{i} y_{i} - 1.1{B} ,\textstyle\bigvee_{i} y_{i}+1.1{B} \right) \times(v_{0}-T^{\bullet},v_{m}] \end{aligned}

    is noise-free. Then y_{i} has at most {p}_{2}+{p}_{0} full dwell periods during (v_{i},v_{i+1}], and there is a gap on the left of R_{1}(v_{m}-) that contains a right bad gap. The same statement holds if we interchange left and right.

    Lemma

    Lemma 15.17 (Bad Gap Inference)

    2PVV

    Let c_{0}=(x_{0},t_{0}) be a left exposed edge,

    \begin{aligned} D &= \left[x_{0}-(\ensuremath{\mathinner{\textsf{\upshape{split-n}}}}+1.1){B} ,x_{0}+(\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}+1.1) {B} \right), \\ I &= (t_{0}-\ensuremath{\mathinner{\textsf{\upshape{split-t}}}},t_{0}]. \end{aligned}

    Assume D\times I is damage-free. Then one of the following holds:

    Djenum.
  • There is a bad gap on the left of c_{0};

  • There is a boundary path of length <\ensuremath{\mathinner{\textsf{\upshape{split-n}}}} leading backwards in time from c_{0} to a cell undergoing one of the changes listed in Lemma 14.17 (Exposing).

  • The same statement holds if we replace left with right.

    Lemma

    Lemma 16.1 (Cover)

    764H

    Let c_{0}=(x_{0},t_{0}) be a live cell belonging to colony \mathcal{C} with starting cell z,

    \begin{aligned} I &=\left[z-({Q} +1.1){B} ,z+(2{Q} +1.1){B} \right). \end{aligned}

    For J as in (?) let

    \begin{aligned} n_{J}&=2|J|/p_{1}{T_{\bullet}}+3\Delta \end{aligned}

    and assume that \ensuremath{\mathord{\textit{Damage\/}}}^{*} does not intersect I\times J. Consider a trace-back path P_{1} in I\times J leading backwards from c_{0} to a cell c_{1}=(x_{1},t_{1}). The following holds.

    Cjenum.
  • If c_{0} is not an outer or germ cell younger than \ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}+n_{J} then the path P_{1} does not leave its own colony.

  • Assume t_{1}\le t_{0}-\ensuremath{\mathinner{\textsf{\upshape{destr-t}}}}{Q}, the rectangle

    \begin{aligned} I \times(t_{1}-\ensuremath{\mathinner{\textsf{\upshape{split-t}}}},t_{1}+\ensuremath{\mathinner{\textsf{\upshape{split-t}}}}] \end{aligned}

    is damage-free, c_{1} is not a doomed member cell with |\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(c_{1}) > {U}-2{Q}-\ensuremath{\mathinner{\textsf{\upshape{split-n}}}}. Then the maximal domain containing the cell c_{1} contains the colony of c_{0} as well as its originating colony.

  • Lemma

    Lemma 16.3 (Attribution)

    EBSO

    Assume that the live cell c_{0}=(x_{0},t_{0}) is traceable, and is not a germ cell younger than \ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}+2|J|/p_{1}{T_{\bullet}}. Then we have:

    Cjenum.
  • c_{0} can be attributed to its originating colony.

  • If it is a member cell, or an outer or germ cell older than \ensuremath{\mathinner{\textsf{\upshape{grow-end}}}} + |J|/p_{1}{T_{\bullet}} then it can also be attributed to its own colony.

  • Lemma

    Lemma 16.4 (Colony Trace-back)

    QV8C

    Consider a time interval (t_{0},t_{1}]. Suppose the following, with I=z_{0}+\left[-1.1{Q}{B} ,2.1{Q}{B} \right):

    1. The rectangle I\times (t_{0}-\ensuremath{\mathinner{\textsf{\upshape{split-t}}}},t_{0}] is damage-free, and \ensuremath{\mathord{\textit{Damage\/}}}^{*} does not intersect I\times(t_{0}-\ensuremath{\mathinner{\textsf{\upshape{split-t}}}},t_{1}].

    2. At time t_{1}, colony \mathcal{C}, with starting cell z_{0}, is covered by a maximal domain with member cells in \mathcal{C}, and no exposed edges.

    Assume that some trace-back path P starts within 0.2{Q} {B} of the center at time t_{1}, goes back to time t_{0}, and does not come within 2 {Q} steps of a work period boundary time. Then:

    Cjenum.
  • Path P moves at most to a distance 2\lambda\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}\ensuremath{\mathinner{\textsf{\upshape{split-n}}}}{B} from where it started. If there is no damage in I\times(t_{0},t_{1}] then P does not move horizontally at all.

  • The colony \mathcal{C} is covered by a maximal domain without exposed edges also at time t_{0}.

  • The age progress from t_{0} to t_{1} along path P is at most \frac{t_{1}-t_{0}}{{p}_{1}{T_{\bullet}}}+\Delta + 3, and at least \frac{t_{1}-t_{0}}{4{p}_{1}T^{\bullet}}-6{Q}.

  • Corollary

    Corollary 16.5

    8IUH

    Under the assumptions of Lemma 16.4, suppose that the age progress along the path is n. Then

    \begin{aligned} (n-\Delta -3){p}_{1}{T_{\bullet}} \le t_{1}-t_{0} \le 4(n+6{Q}){p}_{1}T^{\bullet}. \end{aligned}
    Proof of Corollary 16.5

    et P=(c_{1},c_{2},\dots) be the trace-back path mentioned in the lemma, listed backwards in time, with c_{i}=(x_{i},u_{i}). In the given time interval, at most one island intersects colony \mathcal{C}. Let K be the interval of times within \ensuremath{\mathinner{\textsf{\upshape{split-t}}}} of this island, then |K|\le 2\ensuremath{\mathinner{\textsf{\upshape{split-t}}}}+\ensuremath{\mathinner{\textsf{\upshape{island-size}}}}T^{\bullet}.

    Step+.

    step:colony-trace-back.progress.protected For times outside K, the maximal domain containing the cell P(t) has only protected edges.

    Pproof.

    If there was an exposed edge, then Lemma 15.17 (Bad Gap Inference), combined with Lemma 15.12 (Running Gap) would imply that the colony \mathcal{C} would not be covered by a domain at time t_{1}.

    Step+.

    step:cover-trace-back.path Claims ? and ? are true.

    Pproof.

    The island may cause at most \Delta horizontal links (with \Delta defined in (?)), all other links are vertical or parental. As shown in part ?, the path can have parental links only within distance \ensuremath{\mathinner{\textsf{\upshape{split-t}}}} in time of the island. Since they use \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}}(\cdot) with a delay of at least {p}_{1}, parental links are separated from each other by at least {p}_{1} vertical links. If follows then, using the definition of \ensuremath{\mathinner{\textsf{\upshape{split-t}}}} and \ensuremath{\mathinner{\textsf{\upshape{split-n}}}} in (?-?), that the path can move at most \Delta+|K|/{p}_{1}{T_{\bullet}} steps away, where

    \begin{aligned} |K|/{p}_{1}{T_{\bullet}}=(2\ensuremath{\mathinner{\textsf{\upshape{split-t}}}}+\ensuremath{\mathinner{\textsf{\upshape{island-size}}}})\tau_{2}\ensuremath{\mathinner{\textsf{\upshape{split-n}}}}/{p}_{1}{T_{\bullet}} \le 3\lambda\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}\ensuremath{\mathinner{\textsf{\upshape{split-n}}}}/2 \end{aligned}

    (and will therefore stay in the colony). Assume now that, contrary to claim ?, there is a first cell c_{i} with a parental link to c_{i-1}, farther than \ensuremath{\mathinner{\textsf{\upshape{split-t}}}} in time from the island. Then x_{i} is at distance at most \lambda\ensuremath{\mathinner{\textsf{\upshape{heal-span}}}}\ensuremath{\mathinner{\textsf{\upshape{split-n}}}}{B} from x_{1}, and as by assumption does not come within 2 {Q} steps of a work period boundary time, is an exposed member cell, or growth cell with age \ge\ensuremath{\mathinner{\textsf{\upshape{grow-end}}}}, inside the the colony. Lemma 15.17 (Bad Gap Inference) implies then a bad gap which would not close until time t_{1}, contrary to the assumptions. Reference to the same lemma proves also the statement ?.

    Step+.

    step:colony-trace-back.progress Claim ? is true.

    Pproof.

    The upper bound follows because according to Lemma 15.5 (Skirting) there are at most \Delta+1 horizontal links in the path, while along the vertical part of the path, age increases at most by 1 every {p}_{1} steps. We proceed to the lower bound.

    Step+.

    step:colony-trace-back.progress.path We will build a new path, P'=\mathopen( c'_{0},\dots,c'_{m}\mathclose) with c'_{i}=(x'_{i},t'_{i}).

    Prooofi.

    Start with c'_{0}=c_{0}. Within the set K we continue P' as a trace-back path; consider the cases t'_{i}\not\in K. We have \ensuremath{\mathord{\textsf{\slshape{Healing\/}}}}(x'_{i})=0 and \ensuremath{\mathord{\textsf{\slshape{Frozen\/}}}}(x'_{i})=0 for times near t'_{i}, since otherwise Lemma 15.14 (Healing Cause) would imply the nearby presence of exposed edges. In the absence of freezing, the age cannot decrease in time. If \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(x'_{i}) did not increase in time t'_{i}, then this can only have the following reasons:

    Djenum.
  • Cell x'_{i} is in the process of decreasing its \ensuremath{\mathord{\textsf{\slshape{Wait\/}}}}.\ensuremath{\mathord{\texttt{\slshape{March\/}}}} variable from {p}_{1}.

  • Cell c'_{i} has just been born.

  • There is a neighbor y at the last observation time t' of x'_{i} that does not let its age advance, by condition (?) of the \ensuremath{\mathord{\texttt{\slshape{March\/}}}} rule ?. Thus it is either lower in age (call this a delay link of the first kind) or is equal in age but then it is closer to the center of the originating colony (call it a delay link of the second kind).

  • In cases ? and ?, let c'_{i+1} be found by regular trace-back: thus, the previous switching time of x'_{i} if there is one, and the parent, if x'_{i} has just been born. In case ?, let c'_{i+1}=(x'_{i},t'), c_{i+2}=(y,t').

    We will now lower-bound age decrease and upper-bound age decrease backwards on path P'.

    Step+.

    step:colony-trace-back.progress.inK Let us upper-bound age increase inside the set K.

    Prooofi.

    Inside the time set K, the only horizontal links on the path P' come from Lemma 15.5 (Skirting), adding at most \Delta to the total age increase backward. There is no increase on parental links, and at most one backward increase on each vertical link (as \ensuremath{\mathord{\texttt{\slshape{Heal-sync\/}}}} may decrease age).

    This is a total increase of at most |K|/{T_{\bullet}}+\Delta.

    Step+.

    step:colony-trace-back.progress.nonK Let us lower-bound age decrease outside the set K.

    Prooofi.

    Going to the parent via alternative ? above is always going towards the originating colony: since we are in a maximal domain without exposed edges, the only possible kind of cell creation is growth. The cells created by growth have age equal to the creator cell. During a colony work period, there are at most 4{Q} growth steps (growing a channel and then a growth arm to the left, and also to the right), this bounds the number of parental links. Let n_{1} be the number of delay links of the first kind and n_{2} that of delay links of the second kind, n=n_{1}+n_{2}. We have n_{2}\le 2 {Q} + n_{1}, as one can move towards the center of the originating colony only after being moved away from it. The total age decrease on these non-vertical links is hence at least n_{1}\ge n/2 - {Q}. The total number of non-vertical links is m \le 4 {Q} + n, so

    \begin{aligned} n_{1}\ge (m-4 {Q} )/2 - {Q} = m/2 - 3 {Q} . \end{aligned}

    In a vertical segment of the path of time projection l, age decreases at least by 1 in every {p}_{1} vertical steps. So it decreases at least 0\lor(\frac{l}{{p}_{1}T^{\bullet}}-1). Let us call a vertical segment short if this number is <1, that is whose length is \le 2{p}_{1}T^{\bullet}, else long. On a long segment of length l, the decrease is at least \frac{l}{{p}_{1}T^{\bullet}}-1 \ge \frac{l}{2{p}_{1}T^{\bullet}}. Let L_{1} be the union of long vertical segments, and L_{2} that of the short ones. The time decrease on L_{1} is at least \ge |L_{1}|/2{p}_{1}T^{\bullet}. The number of non-vertical links is at least m\ge |L_{2}|/2{p}_{1}T^{\bullet} -1, and by (?) the age decrease on these links is at least

    \begin{aligned} m/2 - 3 {Q} \ge |L_{2}|/4{p}_{1}T^{\bullet} -3 {Q} - 1. \end{aligned}

    So the total decrease of at least

    \begin{aligned} |L_{1}|/2{p}_{1}T^{\bullet} + |L_{2}|/4{p}_{1}T^{\bullet} -3 {Q} - 1 \ge \frac{t_{1}-t_{0}-|K|}{4{p}_{1}T^{\bullet}}- 3{Q} - 1. \end{aligned}
    Step+.

    step:colony-trace-back.progress.sum Let us add up all the decreases inside and outside of K.

    Prooofi.

    We get

    \begin{aligned} &\frac{t_{1}-t_{0}-|K|}{4{p}_{1}T^{\bullet}}-3{Q} -1 - |K|/{T_{\bullet}}-\Delta = \frac{t_{1}-t_{0}-|K|}{4{p}_{1}T^{\bullet}}-V, \\ V &\le 3{Q} +|K|/{T_{\bullet}}+\Delta+1 \le 4 {Q} , \end{aligned}

    where the last step follows from our assumptions about {Q}. At time t_{0}, there is no exposed edge between P(t_{0}) and P'(t_{0}), since this would imply a bad gap between these cells. This could not close, and at least one of the paths would need to cross it in order to meet, which is not possible. Therefore these two nodes are connected by a chain of siblings and so their age differs by at most 2{Q}. Since P(t_{1})=P'(t_{1}), this shows that the age progress along P differs from that of P' by at most 2{Q}.

    Definition

    Definition 17.1 (Successor)

    WH68

    Given a set E of cells at time t, let us call a cell x' a successor of E at time t'>t if (x',t') is reachable by a forward trace-back path of cells from some (x,t) with x in E.

    Uses Definition 15.6 · Used by Proof
    Lemma

    Lemma 17.2 (Healing)

    TOR0

    Let \left[a_{0},a_{1}\right)\times(u_{0},u_{1}] be an island. Let \mathcal{C} be a colony with starting cell z_{0}, covered at time u_{0} by a domain of member cells, with no doomed cells of age >{U} -3{Q}. Then a domain covers \mathcal{C} at time w_{0}=u_{1}+\ensuremath{\mathinner{\textsf{\upshape{heal-t}}}}.

    Proof of Lemma 17.2

    he damage affects directly at most \Delta neighbor cells of \mathcal{C} (with \Delta defined in (?)). At time t, let L(t) be the set of successors in \mathcal{C} of cells of \mathcal{C} on the left of the affected part, and R(t) the successors from cells to the right. (These sets are not necessarily disjoint.) Both L(t) and R(t) are (possibly empty) domains; indeed, the only rule that would change the domain property is the killing of a doomed cell at age 0, but there is not enough time for this.

    Step+.

    step:heal.purge Let u_{2}=u_{1}+\ensuremath{\mathinner{\textsf{\upshape{purge-t}}}}. If the sets L(u_{2}) and R(u_{2}) are both nonempty then there is no live cell between them at time u_{2} other than possibly germ cells with age \le 1.

    Pproof.

    The only cells in question are the up to \Delta cells affected directly by the damage, others could not have reborn yet after dying. Consider the up to \Delta domains between L(u_{1}) and R(u_{1}); they can shrink or merge during the time interval (u_{1},u_{2}]. According to Lemma 13.14, each will still have an exposed side, hence each will be killed by the time u_{2} by the purge rule (while having no time yet to grow due to the delay in the rule \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}})—unless they are germs so new that the purging did not have time to finish yet: in this case they have age \le 1.

    Step+.

    step:heal.purge-end Any live cell at time u_{2} whose body intersects \mathcal{C} and that does not belong to L(u_{2})\cup R(u_{2}) cannot be a member cell.

    Pproof.

    Assume by way of contradiction, that there is such a member cell x. In this case clearly either L(u_{2}) or R(u_{2}) is empty; without loss of generality assume that L(u_{2}) is empty. Consider a trace-back path from x. It cannot lead to \mathcal{C} at time u_{0}, since then according to part ? above, x would belong to either L(u_{2}) or R(u_{2}). Therefore it must lead to a domain outside; given that R(u_{2}) is nonempty, this must be on the left. Let y be the right end of this domain at time u_{0}. It must be outside \mathcal{C}, so it is to the left of x whose body, by assumption, intersects \mathcal{C}. By Lemma 15.5 (Skirting), the path has at most \Delta horizontal links, and one parental link (there is no time for a complete animation delay), so x and y are within distance (\Delta+1){B} from each other. All cells of the short chain from (x,u_{2}) to (y,u_{0}) have ages within a few steps of each other. If (y,u_{0}) is a right colony end then x (assumed to be a member cell to the left of R(u_{2})) would have been purged away due to its small depth. If it is not then the right edge of (y,u_{0}) is exposed, since it is either a member cell not at a colony end or a growth cell near the end of the work period, and so during its shrinking phase. But then Lemma 15.17 (Bad Gap Inference) would imply large gap on the right of (y,u_{0}), making the path from it to (x,u_{2}) impossible. (Indeed, due to the age of (y,u_{0}) the conclusion ? of that lemma is not applicable.)

    Step+.

    step:heal.size If both L(t) and R(t) survive until time u_{2}, then the gap between them will have size \le \Delta during the whole time. If L(t) disappears then the the gap from z_{0} to R(t) has size \le 2\Delta during the whole time.

    Pproof.

    If both L(t) and R(t) survive, then there were up to \Delta cells affected by damage between them. Only these cells can disappear. If L(t) disappears, this is only since its size was \le\Delta to begin with.

    if@tlamode

    Step+.

    step:heal.no-gapIf both L(t) and R(t) remain nonempty then they will become part of a domain.

    Pproof.

    As shown above, between times u_{2} and w_{0}, the gap between L(t) and R(t) does not become larger than \Delta. Rule \ensuremath{\mathord{\texttt{\slshape{Heal-revive\/}}}} brings together L(t) and R(t) at some time t\le \Delta\tau_{1}, at some point x\in L(t), x+{B} \in R(t). The possible germ cells of age <2 in the gap are not an obstacle: they are weaker than the cells that are being created, so they will be erased. It can only happen that L(t) and R(t) are not joined if |\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(x)-\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(x+{B} )\mskip-\medmuskip\mkern5mu\mathbin {\operator@font amod}\penalty900 \mkern5mu\mskip-\medmuskip {U} |>1. But as said in the remark at the end of Example 14.15, then rule \ensuremath{\mathord{\texttt{\slshape{Heal-sync\/}}}} will bring the two ages together in time at most 2\Delta\tau_{0}. This creates a single domain by time u_{2}+\Delta(\tau_{1}+2\tau_{0}).

    if@tlamode

    Step+.

    step:heal.fillIf L(t) does not survive then z_{0}\in R(w_{0}).

    Pproof.

    The left endcell of R(t) will be exposed to the left and therefore the rule ? (\ensuremath{\mathord{\texttt{\slshape{End-heal\/}}}}) will apply to it. Part ? above shows that no member cell’s body intersects the colony \mathcal{C}. Other possible cells that might intersect are weaker than the member cells that end-healing creates, and will therefore be killed off by rule \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}} of Algorithm ?. The end healing thus proceeds in time 2\Delta\tau_{1}.

    Lemma

    Lemma 18.1

    ZYVX

    Consider a case of \ensuremath{\mathord{\texttt{\slshape{Post-mail\/}}}}(1,\ensuremath{\mathord{\textsf{\slshape{F\/}}}},\ensuremath{\mathord{\textsf{\slshape{G\/}}}},1,0,0,{Q}) when a track \ensuremath{\mathord{\textsf{\slshape{F\/}}}} is sent to a track \ensuremath{\mathord{\textsf{\slshape{G\/}}}} of a right neighbor colony (not necessarily adjacent). Assume that between the sending time t_{0} and the receiving time, the space-time area of concern is damage-free. For a cell x let d(x) be the distance of x from the right end of the receiving range.

    Let x be a cell and y be a cell that is m steps (over neighbors) to the right of x. Then at time t_{0}+2T^{\bullet}(m+2 d (x)) the information from x has reached y.

    Definition

    Definition 19.1 (Errors)

    BH83

    Our error-correcting code will distinguish, similarly to Examples 5.14 and 5.16, information symbols and error-check symbols. A string s of symbols that can be the argument of a certain error-correcting decoding has d errors if, when applying the decoding and encoding to it, the result differs from s in d symbols. We will work with a code .greek@\alpha.)))

    \alpha

    of Example 5.15 that can correct errors in t symbols with just 2t error-check symbols. When \ensuremath{\mathord{\textit{loc\/}}} is a location representing a string s then we will use the notation

    \alpha^{*}(\ensuremath{\mathord{\textit{loc\/}}})=\alpha^{*}(s)

    for the value decoded from it. We expect having to deal with at most one damage rectangle. It can corrupt a group of \Delta consecutive cells (where \Delta was defined in (?)). The symbols of the code will be chosen in such a way that a code symbol stretches over \Delta cells. A damage rectangle can damage therefore up to 2 symbols, for which 4 error check symbols suffice.

    Definition

    Definition 19.2

    A4UY

    As the payload of a simulated cell is the aggregated payload of the cells of its simulated colony, we define the payload capacity as

    \begin{aligned} \ensuremath{\mathord{\textit{Cap\/}}}'_{k}=|\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}_{k}|={B}_{k}|\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}_{1}|. \end{aligned}

    We partition the \ensuremath{\mathord{\textsf{\slshape{Payload\/}}}} field into P sub-fields of relative width w called field packets numbered 0,1,\dots,P-1. The ith field packet of the \ensuremath{\mathord{\textsf{\slshape{Payload\/}}}} field will be denoted \ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}_{i}. We also partition each track \ensuremath{\mathord{\textsf{\slshape{F\/}}}} of whole colony into P^{*} track packets of w^{*}{Q} cells each. The jth track packet, with addresses in \left[jw^{*}{Q},(j+1)w^{*}{Q}\right), will be denoted as the location \_\ensuremath{\mathord{\textsf{\slshape{F\/}}}}_{j}, In particular the jth track packet of the \ensuremath{\mathord{\textsf{\slshape{Payload\/}}}} track is location \ensuremath{\mathord{\textsf{\slshape{\_Payload\/}}}}_{j}

    Definition

    Definition 19.3 (Payload error checks)

    5ASH

    The error checks of track packet \ensuremath{\mathord{\textsf{\slshape{\_Payload\/}}}}_{j}, will be in location \ensuremath{\mathord{\textsf{\slshape{\_Pl-redun\/}}}}_{j} on the \ensuremath{\mathord{\textsf{\slshape{Pl-redun\/}}}} track. Location

    \begin{aligned} \ensuremath{\mathord{\textsf{\slshape{\_Payload\/}}}}'_{j}=\ensuremath{\mathord{\textsf{\slshape{\_Payload\/}}}}_{j}\cup\ensuremath{\mathord{\textsf{\slshape{\_Pl-redun\/}}}}_{j} \end{aligned}

    combines location \ensuremath{\mathord{\textsf{\slshape{\_Payload\/}}}}_{j} with its error check symbols for a complete code.

    We consider the whole \ensuremath{\mathord{\textsf{\slshape{Payload\/}}}} track of each consecutive \Delta cells in the packet \ensuremath{\mathord{\textsf{\slshape{\_Payload\/}}}}_{j} as an information symbol; the error check symbols of \ensuremath{\mathord{\textsf{\slshape{\_Payload\/}}}}_{j} go to location \ensuremath{\mathord{\textsf{\slshape{\_Pl-redun\/}}}}_{j}. To avoid that the damage rectangle affect both an information symbol and an error-check symbol of the same code, we divide the track packet \ensuremath{\mathord{\textsf{\slshape{\_Payload\/}}}}'_{j} into left and right halves. The error checks for the left half of \ensuremath{\mathord{\textsf{\slshape{\_Payload\/}}}}_{j} go into the right half of \ensuremath{\mathord{\textsf{\slshape{\_Pl-redun\/}}}}_{j}, and those for the right half go into the left half of the same.

    Definition

    Definition 19.4 (Encoding)

    1GKO

    The encoding

    \begin{aligned} \varphi_{*}:{\mathbb{S}}_{k+1}\to{\mathbb{S}}_{k}^{{Q} _{k}} \end{aligned}

    takes the state of a cell, applies to it the error-correcting code \alpha_{*} introduced above in Definition 19.1 and copies the result to the \ensuremath{\mathord{\textsf{\slshape{Info\/}}}} track of a colony. The other parts of the colony are set in such a way as they are to be found at the beginning of a work period.

    Definition

    Definition 19.5 (Decoding)

    MLMM

    If the (x,t) is not in \ensuremath{\mathord{\textit{Damage\/}}}^{*}, then define

    \eta^{*}(x,t)=\varphi^{*}(x,t)=\ensuremath{\mathord{\textit{Vac\/}}},

    unless there is a latest time t'\in (t-2{Q} T^{\bullet},t] that is a switching time of a cell of \mathcal{C}(x) such that the rectangle

    \begin{aligned} \left[x-({Q} +1.1){B} ,x+(2{Q} +1.1{B} )\right)\times(t'-\ensuremath{\mathinner{\textsf{\upshape{split-t}}}},t'] \end{aligned}

    is damage-free, and the colony is covered by a domain of cells belonging to the same work period (the condition on switching just makes sure that a “latest” value exists). In the latter case, let us define the strings s=\eta(\mathcal{C}(x),t').\ensuremath{\mathord{\textsf{\slshape{Util\/}}}} and p_{i}=\eta(\mathcal{C}(x),t').\ensuremath{\mathord{\textsf{\slshape{\_Payload\/}}}}'_{i}. For the decoded value to be nonvacant, we also require that each of s,p_{i} contains at most 4 errors in the sense that \alpha_{*}(\alpha^{*}(s)) differs from s in at most 4 places of up to 2 consecutive symbols) and the same for each p_{i} for i=0,\dots,P^{*}-1.

    If this is satisfied, then \eta^{*}(x,t).\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}^{c}=\alpha^{*}(s) while \eta^{*}(x,t).\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}} is the concatenation of all \alpha^{*}(p_{i}). We will say that \eta(\mathcal{C}(x),t) is error-free if each of s,p_{i} are error-free.

    Definition

    Definition 19.6

    JBD8

    Let -str@\ensuremath{\mathord{\textit{Vacant-str\/}}}.)))

    \ensuremath{\mathord{\textit{Vacant-str\/}}}

    be a string representing the state \ensuremath{\mathord{\textit{Vac\/}}} in our code \alpha as in Definition 19.1. Let \ensuremath{\mathord{\textit{Decode-prog\/}}} -prog@\ensuremath{\mathord{\texttt{\slshape{Decode-prog\/}}}}.))) be a program for the medium \ensuremath{\mathord{\textit{Univ\/}}} such that after applying

    \ensuremath{\mathord{\textit{Univ\/}}}(\ensuremath{\mathord{\textit{Decode-prog\/}}}\sqcup S;{Q} ,2{Q} ),

    location \ensuremath{\mathord{\textsf{\slshape{\_Decode-output\/}}}} -output@\ensuremath{\mathord{\textsf{\slshape{\_Decode-output\/}}}}.))) on track \ensuremath{\mathord{\textsf{\slshape{Cpt\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Output\/}}}} contains \alpha^{*}(S) (see (19.1)) if \alpha_{*}(\alpha^{*}(S)) differs from S in at most 4 groups of 2 consecutive symbols each; otherwise, it contains \ensuremath{\mathord{\textit{Vacant-str\/}}}.

    Lemma

    Lemma 19.7

    MV2R

    After an application of the rule \ensuremath{\mathord{\texttt{\slshape{Legalize\/}}}}(\ensuremath{\mathord{\textsf{\slshape{F\/}}}}(I)), location \ensuremath{\mathord{\textsf{\slshape{F\/}}}}(I) contains a word with at most 2 errors. Moreover, if \ensuremath{\mathord{\textsf{\slshape{F\/}}}}(I) has at most 2 errors and decodes to some value X then result also decodes to X.

    Lemma

    Lemma 20.1

    H0FI

    For some time t, let J=(t-2T^{\bullet *}-\ensuremath{\mathinner{\textsf{\upshape{split-t}}}},t]. Assume that the rectangle I\times J is damage-free, and at time t the colony \mathcal{C}=\mathcal{C}(x) is covered by a domain of cells belonging to the same work period. Then the string \eta(\mathcal{C},t) is error-free in the sense of Definition 19.5.

    Lemma

    Lemma 20.2 (Legality)

    UVEH

    Assume that, for some number a, the set \ensuremath{\mathord{\textit{Damage\/}}}^{*} does not intersect \left[x,x+{Q} {B} \right)\times(a-2T^{\bullet *},a+2T^{\bullet *}],

    further that \sigma_{1},\sigma_{2}, as in Definition 10.13 (Special switching times) are defined for cell x of medium M^{*} in the interval (a-2T^{\bullet *},a+2T^{\bullet *}], using Definition 19.5 (Decoding). Then the following holds, using Definition 2.8 (Legality):

    Cjenum.
  • \ensuremath{\mathord{\textit{legal\/}}}_{k+1}(\eta^{*}(x, \sigma_{2}-), \eta^{*}(x, \sigma_{2})) = 1, thus proving Condition 10.16?.

  • T_{\bullet}^{*} \le \sigma_{2} - \sigma_{1} \le T^{\bullet *}, thus proving Condition 10.16?.

    Sloppypar.
  • The randomization property g(\alpha(\ensuremath{\mathord{\textit{rand\/}}}),j, W_{0}(x,a),\eta^{*}), as defined in Condition 10.16? will hold: it can be expressed in the needed canonical simulation of Definition 7.13.

  • Proof of Lemma 20.2

    et I=\left[x,x+{Q} {B} \right). Our assumption implies that damage is covered by at most one island in I\times(a-2T^{\bullet *},a+2T^{\bullet *}].

    According to Definition 19.5 (Decoding), there is a latest time v_{2} in (\sigma_{2}-2{Q}T^{\bullet},\sigma_{2}] that is a switching time of a cell of colony \mathcal{C}(x) such that I is damage-free during (v_{2}-\ensuremath{\mathinner{\textsf{\upshape{split-t}}}},v_{2}], and at time v_{2} the colony is covered by a domain of cells belonging to the same work period. The value \eta^{*}(x,\sigma_{2}) was decoded from the state of the colony at time v_{2}. Let y_{1} be the cell with address {\lfloor {Q} /2\rfloor} in colony \mathcal{C}(x), then (y_{1},v_{2}) is traceable, as in Definition 15.4. Build a trace-back path from (y_{1},v_{2}) to the latest time v_{1} in (\sigma_{1}-2{Q}T^{\bullet},\sigma_{1}] at which the colony is again covered with member cells belonging to the same work period, moreover I is damage-free during (v_{1}-\ensuremath{\mathinner{\textsf{\upshape{split-t}}}},v_{1}]. There is such a time, due to the definition of \sigma_{1}.

    Since \sigma_{1},\sigma_{2} are defined, the colony \mathcal{C}(x) encodes at time v_{1} with at most 4 errors a big cell with value different from the one encoded at time v_{2}.

    Step+.

    step:legality.free If I is damage-free during (v_{1},v_{2}] then claim ? holds.

    Pproof.

    The computation runs now without faults, and as planned, computes an error-free value. Rule \ensuremath{\mathord{\texttt{\slshape{Compute\/}}}} in Algorithm ? applies \ensuremath{\mathord{\texttt{\slshape{Legalize\/}}}} to the information retrieved from the neighbor colonies, so the result computed from this information will be a legal one. The switching time \sigma_{2} occurs just when the last cell of the colony passes to a new work period. The process makes sure that either all cells of the colony are doomed (when the computed value is vacant), or none them. If they are doomed then the whole colony dies. Otherwise, the rule \ensuremath{\mathord{\texttt{\slshape{Finish\/}}}} installs the remaining changes in one step. In both cases, the state at time \sigma_{2} will be a legal consequence of the state at time \sigma_{2}-.

    Step+.

    step:legality.non-free If I is not damage-free during (v_{1},v_{2}] then claim ? still holds.

    Pproof.

    Let t_{1}\in(v_{1},v_{2}] be some time at which damage intersects I, and let t_{0} be the latest time before \min(t_{1}-1.1\ensuremath{\mathinner{\textsf{\upshape{destr-t}}}}{Q}, v_{1}) which is the switching time of some cell, with the property that all cells of the colony belong to the same work period. By Lemma 16.1 (Cover), at time t_{0}, the colony is covered by a domain of cells. Lemma 20.1 implies that the colony encodes an error-free string.

    Let us follow the development of the colony forward in time, starting from t_{0}. Healing succeeds, due to the Cover Lemma. Locally maintained fields will be restored in a short time following the occurrence of damage, via the rule \ensuremath{\mathord{\texttt{\slshape{Loc-maintain\/}}}} while other fields changed in at most an interval of \Delta cells, with \Delta defined in (?). After this, the work of the colony can be followed as before.

    The time of the damage may fall into at most one of the three iterations of any of the rules with three iterations (\ensuremath{\mathord{\texttt{\slshape{Refresh-payload\/}}}}, \ensuremath{\mathord{\texttt{\slshape{Update-payload\/}}}}, \ensuremath{\mathord{\texttt{\slshape{Legalize\/}}}}, \ensuremath{\mathord{\texttt{\slshape{Compute\/}}}}). The output of this one iteration in \ensuremath{\mathord{\textsf{\slshape{Vote\/}}}}_{r} will be outvoted by the other two values in the final majority vote.

    So the only errors in \ensuremath{\mathord{\textsf{\slshape{Hold\/}}}} can be the ones due to their short-term damage in the final majority vote; these change at most \Delta cells. In summary, we can make the same conclusion as part ?, except that the encoded string may contain up to 2 errors (in case the island occurs in the last part of computation or later).

    There is an exception to this reasoning: in the rules \ensuremath{\mathord{\texttt{\slshape{Refresh-payload\/}}}} and \ensuremath{\mathord{\texttt{\slshape{Update-payload\/}}}}, the copy command is not repeated three times, so it is protected from the damage only in a limited way in the rule \ensuremath{\mathord{\texttt{\slshape{Move-mail\/}}}} of Algorithm ?. This protection makes sure that wrong information planted by damage is copied to at most one segment of size \Delta; however, that one segment will still be affected, so the damage rectangle can cause 2 errors in the place it occurs and 2 more in the place to which the information is carried. But the error-correcting code, being able to correct 4 errors, will still deal with this.

    Step+.

    step:legality.time-lb We have T_{\bullet}^{*} \le \sigma_{2} - \sigma_{1}.

    Pproof.

    Consider a cell y of the colony, for example the one with address {\lfloor {Q} /2\rfloor}, and lead a trace-back path from time \sigma_{2} to time \sigma_{1}. Suppose it has n links: none of these are parental. At time \sigma_{j}- all cells have ages \ge {U} -2{Q}, hence the age progress along the path is at least {U} -2{Q}.

    By Lemma 15.8, the age progress is {U} -2{Q} \le n/{p}_{1}+\Delta+2, hence

    \begin{aligned} n\ge {p}_{1}{U} -{p}_{1}(2{Q} +\Delta+2). \end{aligned}

    By the same lemma,

    \begin{aligned} \sigma_{2}-\sigma_{1} &\ge n{T_{\bullet}}-(\Delta+1){T_{\bullet}} \\ &\ge {T_{\bullet}}{\left( {p}_{1}{U} -{\left( 2{p}_{1}{Q} +({p}_{1}+1)\Delta+2{p}_{1}+1\right)}\right)} \\ &= {T_{\bullet}}{U}' -{T_{\bullet}}{\left( 2{p}_{1}{Q} +({p}_{1}+1)\Delta+2{p}_{1}+1\right)} \\ &= {T_{\bullet}}{U}'{\left( 1-{\left( 2{p}_{1}{Q} +({p}_{1}+1)\Delta+2{p}_{1}+1\right)}/{U}'\right)} \\ &\ge{T_{\bullet}}{U}' (1-R{Q}/{U}') = {T_{\bullet}}^{*}, \end{aligned}

    where we used (?), further {U}'={U}'_{k} was defined in Section ?. Indeed, sufficiently large R will satisfy the last inequality.

    Step+.

    step:legality.time-ub We have \sigma_{2} - \sigma_{1}\leT^{\bullet *}.

    Pproof.

    Lemma 16.4 (Colony Trace-back) lower-bounds the progress along a trace-back path; then the proof is finished similarly to part ? above.

    Step+.

    step:legality.rand Let us prove ?.

    Prooof.

    We need to prove essentially \operatorname{\mathsf P}\mathopen\{\mskip 1mu\eta^{*}(x,\sigma_{2}).\ensuremath{\mathord{\textsf{\slshape{Rand\/}}}}=j\mskip 1mu\mathclose\}\le 1/2+eps'+\varepsilon'', given how \varepsilon'_{k} is defined in (?). Here \varepsilon'' bounds the probability that damage occurs in the window W_{0}(x,a) at all. On the other hand, when it does not occur then each cell at each time within the work period performs its needed action: in particular, it carries out the rule \ensuremath{\mathord{\texttt{\slshape{Compute\/}}}} of Algorithm ?, and within it, the rule \ensuremath{\mathord{\texttt{\slshape{Randomize\/}}}}. This rule relies on the randomization action of a well-defined cell at a well-defined age of the work period, with the result being j with probability \le 1/2+\varepsilon'. The probability can only be increased by the probability bound that damage does occur in W_{0}. It would be now just a tedious exercise to actually express g(\alpha(\ensuremath{\mathord{\textit{rand\/}}}),j, W_{0}(x,a),\eta^{*}) formally as needed by a canonical simulation.

    Lemma

    Lemma 20.4

    XZXX

    Under the same condition on \ensuremath{\mathord{\textit{Damage\/}}}^{*} as in Lemma  20.2, assume that we have a full colony in which all cells have ages before the start of rule \ensuremath{\mathord{\texttt{\slshape{Update-loc-maint\/}}}} (Algorithm ?).

    Cjenum.
  • The locally maintained fields \ensuremath{\mathord{\textsf{\slshape{Doomed\/}}}} and \ensuremath{\mathord{\textsf{\slshape{Growing\/}}}}_{j} will be homogeneous with the exception of an interval of at most \Delta cells.

  • The value of \ensuremath{\mathord{\textsf{\slshape{Doomed\/}}}} is true (almost) everywhere if and only if \ensuremath{\mathord{\textsf{\slshape{Hold\/}}}} represents the vacant state \ensuremath{\mathord{\textit{Vac\/}}}^{*}.

  • For j\in\{-1,1\}, the value of \ensuremath{\mathord{\textsf{\slshape{Growing\/}}}}_{j} is equal (almost) everywhere to \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}_{j}^{*} of the cell state represented by the colony.

  • Lemma

    Lemma 20.5

    9H1H

    Assume that, for some number a, \ensuremath{\mathord{\textit{Damage\/}}}^{*} does not intersect \{x\}\times(a-T_{\bullet}^{*}/2,a+2T^{\bullet *}]. If \eta^{*}(x,\cdot) has no switching time during (a,a+2T^{\bullet *}] then \eta^{*}(x,a+) is vacant.

    Lemma

    Lemma 20.6 (Present Attribution)

    38OD

    Assume that the live cell c_{0}=(x_{0},t_{0}) in colony \mathcal{C}(z_{0}) is not a germ. Assume also that \mathcal{C} at time t_{0} does not intersect the healing wake of any island. Then one of the following cases holds.

    Djenum.
  • c_{0} is a member cell, attributed to \mathcal{C} which is covered by a domain of member cells at time t_{0}. If {Q} <\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(c_{0}) <{U} -1-{Q} then every encoded package of this colony has at most 4 errors.

  • c_{0} is a member cell from which a path of time projection at most {Q} \tau_{2} leads back to a growth cell in \mathcal{C}. Assume, say, that it is a left growth cell; then it can be attributed to \mathcal{C}+{Q} {B}. At time t_{0}, if \mathcal{C}+{Q} {B} does not intersect the healing wake of an island then \left[x_{0},z_{0}+2{Q} {B} \right) is covered by a multi-domain. If {Q} <\ensuremath{\mathord{\textsf{\slshape{Age\/}}}}(c_{0}) <{U} -1-{Q} then still every encoded package of this colony has at most 4 errors.

  • c_{0} is an outer cell, attributed to its originating colony, say \mathcal{C}+ {Q} {B}. If \mathcal{C}+{Q} {B} does not intersect the healing wake of an island then \left[x_{0},z_{0}+2{Q} {B} \right) is covered at time t_{0} by a domain.

  • c_{0} is a member cell, and there is in \mathcal{C} a backward path from it, with time projection \le 2\ensuremath{\mathinner{\textsf{\upshape{split-t}}}}+({Q} +1)\tau_{2}, to a domain of doomed member cells covering \mathcal{C}.

  • Proof of Lemma 20.6
    Step+.

    present-attrib.old-member Suppose that c_{0} is a member cell.

    Prooof.
    Sloppypar.

    Recall the notation K,E_{0} from (?) and Definition 16.2 (Attribution). By Lemma 16.3 (Attribution), c_{0} can be attributed to the originating colony \mathcal{C} which is either the colony of c_{0} or not. Let time t_{1}\in K\setminus E_{0} be a time when \mathcal{C} was covered by member cells. Using Lemma 16.4 (Colony Trace-back), we can go back from t_{1} to a time t_{2} before age \ensuremath{\mathinner{\textsf{\upshape{compute-start}}}} in \mathcal{C}. Then as in part ? of the proof of Lemma 20.2 (Legality), we can follow the development of the colony forwards and see that it forms a continuous domain together with its extension. The locations containing encoded information have at most 4 errors—as seen in the same proof.

    If the computation results in a nonvacant value for the represented big cell then, if \mathcal{C}=\mathcal{C}(z_{0}) then case ? holds. The condition \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}>{Q} guarantees that all cells of the colony belong to the same work period. Otherwise the represented field \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}_{j} of the colony will be broadcast into the field \ensuremath{\mathord{\textsf{\slshape{Growing\/}}}}_{j} of its cells, as shown in Lemma 20.4. The homogeneity of this latter field will be maintained by the healing rule and \ensuremath{\mathord{\texttt{\slshape{Loc-maintain\/}}}}. Thus, depending on the value of \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}_{j} of the big cell, growth will take place and the growth forms a continuous domain with the originating colony until the age {U} when growth cells turn into members, and we have case ?. By the property of the growth rule the colony encodes a latent big cell, so the statement about errors also holds.

    Suppose that the computation results in a vacant value. Then \ensuremath{\mathord{\textsf{\slshape{Growing\/}}}}_{j} will be 0 everywhere but in the healable wake of the damage. Growth cannot start accidentally by a temporary wrong value \ensuremath{\mathord{\textsf{\slshape{Growing\/}}}}_{j}=1 in an endcell since there is enough time to correct this value during the long waiting time of \ensuremath{\mathord{\texttt{\slshape{Grow\/}}}}. Also, all cells become doomed. After \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}=1, any doomed cell dies, and the whole colony decays within {Q} \tau_{2} time units. Before that, the colony is full. After that, we have case ?.

    Step+.

    present-attrib.outer If c_{0} is an outer cell then we have case ?.

    Pproof.

    Lemma 16.3 (Attribution) attributes c_{0} to the originating colony which is covered by member cells during K\setminus E_{0}. If c_{0} is a channel cell then this colony would not have time until t_{0} even to finish its computation, so it could not be destroyed. If c_{0} is a growth cell then the cell represented by this colony could not have become vacant, because then \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}^{*}_{j} would have become 0, broadcast as \ensuremath{\mathord{\textsf{\slshape{Growing\/}}}}=0 and so no growth would have occurred.

    It forms a continuous domain with its extension, until the age {U} -1. From that age on, they form a multi-domain. This could only change if the originating colony goes through a next work period and kills itself; however, there is not enough time for this: the definitions (?), (?) show that \ensuremath{\mathinner{\textsf{\upshape{destr-t}}}}{Q} is much smaller than \ensuremath{\mathinner{\textsf{\upshape{compute-start}}}}.

    Lemma

    Lemma 20.7

    RQ6X

    For a trajectory \eta, Condition 10.16? holds for the decoded trajectory \eta^{*}.

    Proof of Lemma 20.7

    et us take times v_{2}, v_{1} close from below \sigma_{2},\sigma_{1} as in the proof of Lemma 20.2 (Legality). From time v_{1} on, follow the development of colony \mathcal{C}. The computation process can be treated similarly to the proof in that lemma; but in the communication with neighbor colonies, we must show that all retrieved information can be attributed to a single time. By event (?), the whole space-time area in which this communication takes place contains at most one damage rectangle. Repeated application of Lemma 14.7 (Creation) guarantees the success of extending arms via the rule \ensuremath{\mathord{\texttt{\slshape{Extend\/}}}}, defined in Section ?, over possible latent or germ cells or an opposing extension arm, showing that in each direction, within a good time bound either the extension arm of the colony \mathcal{C} reaches its neighbor \mathcal{C}' (provided it exists) or the neighbor’s reaches it. If there are extension arms from both colony \mathcal{C} and a non-adjacent neighbor colony \mathcal{C}' then the strength ordering gives preference to one side and therefore soon only (at most) one arm remains on each side.

    Sloppypar.

    In what follows, we call the space-time points free if they are outside the wake of the damage rectangle (see (?)). Cell x is called free at time t and time t is called free at cell x if (x,t) is free. We must find a time during the communication period (0,\ensuremath{\mathinner{\textsf{\upshape{compute-start}}}}] of \mathcal{C} introduced in Definition 12.7 to which the retrieval from both neighbors can be attributed. Let a_{1} be the last free time when some cell of \mathcal{C} has age 0, and b_{1} the first free time when some such cell has age \ensuremath{\mathinner{\textsf{\upshape{compute-start}}}}, and let J_{1}=(a_{1},b_{1}]. By (?) and the argument after it, we have

    \begin{aligned} |J_{1}|>1.5KRP^{*}{Q}{T_{\bullet}}, \end{aligned}

    while the unsafe parts of the work period (the dwell period of the big cell simulated by \mathcal{C}) have a total length < 1.5RP^{*}{Q}T^{\bullet}. Retrieval by rule \ensuremath{\mathord{\texttt{\slshape{Retrieve\/}}}} in Algorithm ? happens in points of J_{1} (provided it did not happen earlier) if a safe \ensuremath{\mathord{\textsf{\slshape{Age\/}}}} as defined in (?) has been seen in both neighbors. We will find a sufficiently large subinterval of J_{1} when this condition holds. Let m_{1} be the midpoint of J_{1}.

    Step+.

    retr.middle-live Suppose that at time m_{1} the big cell x encoded by colony \mathcal{C} has a left neighbor big cell, encoded by a colony \mathcal{C}'. Then there is a time interval J_{2}\subseteq J_{1} of size \ge 0.7KR{Q}{T_{\bullet}} in which the \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}_{-1} read by \mathcal{C} in \ensuremath{\mathord{\texttt{\slshape{Retrieve\/}}}} is safe.

    Pproof.

    It follows from Lemma 20.6 that m_{1} is contained in a dwell period D of the big cell encoded by \mathcal{C}', of length \geT_{\bullet}^{*}. By (?), D has a subinterval J' of size at least 1.5KRP^{*}{Q}{T_{\bullet}} in which the \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}_{-1} read by \mathcal{C} is safe. Without loss of generality assume that J' is above m_{1}. In the worst case all the unsafe parts of D may come above m_{1}: still, the part J_{2} of J' falling into J_{1} has a length of at least

    \begin{aligned} |J_{1}|/2-1.5RP^{*}{Q}T^{\bullet} \ge 0.7KRP^{*}{Q}{T_{\bullet}} \end{aligned}

    if K is large enough.

    Step+.

    retr.middle-dead Suppose that at time m_{1} the big cell x encoded by colony \mathcal{C} has no left neighbor big cell. Then there is a time interval J_{2}\subseteq J_{1} of size \ge 0.4KRP^{*}{Q}{T_{\bullet}} in which the \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}_{-1} read by \mathcal{C} is safe.

    Pproof.

    Let J' be the largest subinterval of J_{1} containing m_{1} in which \mathcal{C} has no left neighbor. Then either |J'|>|J_{1}|/3 or there is a subinterval of J_{1} of size \ge |J_{1}|/3 that either contains a whole work period of a left neighbor of \mathcal{C} or is covered by it. In each case, similarly to the reasoning in part ? above, a safe time subinterval J_{2} is found of size at least

    \begin{aligned} |J_{1}|/3-1.5RP^{*}{Q}T^{\bullet} \ge 0.4KRP^{*}{Q}{T_{\bullet}} \end{aligned}

    if K is large enough.

    We found a time interval J_{2} of size 0.4KRP^{*}{Q}{T_{\bullet}} in which both \ensuremath{\mathord{\textsf{\slshape{Age\/}}}} and \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}_{-1} are safe. Repeating the argument we find a time interval J_{3}\subset J_{2} of size 0.1KRP^{*}{Q}{T_{\bullet}} in which also \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}_{1} is safe. This shows that the \ensuremath{\mathord{\texttt{\slshape{Retrieve\/}}}} rule will succeed at some time t' during the work period of \mathcal{C} and the simulation result can be attributed to this time point t' just as Condition 10.16? requires.

    Lemma

    Lemma 20.8 (Growth)

    1ZFD

    For a trajectory \eta, Condition 10.16? holds for the decoded trajectory \eta^{*}.

    Proof of Lemma 20.8

    his proof assumes that in case of conflict, growth to the right is preferred, but this choice is clearly arbitrary. As in Condition 10.16?, we assume that there is no non-vacant \eta^{*}(y,t) with 0<|y-x|<{Q} {B}, t\in[a,a+3T^{\bullet *}], and that for every t in [a,a+3T^{\bullet *}] at least one of \eta^{*}(x-{Q} {B} ,t) and \eta^{*}(x+{Q} {B} ,t) is a potential creator of x.

    Step+.

    growth.to-right Suppose x-{Q} {B} is a potential creator in \eta^{*} at some time t\in[a,T^{\bullet *}].

    Prooof.

    Tracing backward and forward the evolution of the colony of big cell x-{Q}{B}, we find a work period (t_{1},t_{2}] containing t. If the computation does not kill the big cell x-{Q}{B} then it will create the big cell x. Indeed, the only seeming obstacle to the growth to the right could be some non-germ cell z in its way. But Lemma 20.6 (Present Attribution) shows that such a z must be a left extension cell of a live big cell y in \left[x+{Q} {B} ,x+2{Q} {B} \right), and is therefore not stronger than the right growth it is preventing.

    Suppose that the computation kills the big cell x-{Q}{B}. Then x-{Q}{B} could not become again a potential creator for time of length \ge{p}_{0}{T_{\bullet}}^{*}. By our assumption then by the time t_{2}<t+T^{\bullet}<2T^{\bullet}, the big cell x+{Q}{B} must be a potential creator. As above, we would find that it has a whole work period (t'_{1},t'_{2}] containing t_{2}, and its computation cannot kill it because then neither x-{Q}{B} nor x+{Q}{B} would be a potential creator at time t'_{2}. So x+{Q}{B} would attempt to create x: let us show that it will succeed before time a+3T^{\bullet}. As above, an obstacle to this could only be a non-germ cell z that is the right growth cell of a big cell y whose body overlaps that of x-{Q}{B}. But this big cell y must be new and thus not become a creator for a time of length \ge{p}_{0}{T_{\bullet}}^{*}.

    Step+.

    growth.to-left Suppose x-{Q} {B} is not a potential creator in \eta^{*} at any time [a,T^{\bullet *}].

    Prooof.

    Then x+{Q} {B} is a potential creator in \eta^{*} at time a. As above, we find a work period (t_{1},t_{2}] of the colony \mathcal{C}(x+{Q}{B}) containing a. The computation does not kill the big cell x-{Q}{B} because then at time t_{2} neither x-{Q}{B} nor x+{Q}{B} would be a potential creator. So x+{Q}{B} will extend a growth arm to the left, which can only be stopped by some non-germ cell z in the way. As in the above reasoning, z must be a right growth cell of a live big cell y in (x-2{Q} {B} ,x]. Because right growth is preferred, this would succeed, creating a cell y. If y=x then x has become non-vacant, so we are done.

    Let us show that other cases are not possible. We cannot have y=x-{Q}{B} because we assumed that x-{Q} {B} is not a potential creator during this time. The body of y cannot overlap that of x (without being equal to it) because this was excluded by the original assumption. In the remaining case, y creates big cell y+{Q}{B} which overlaps the body of x while not equal to it, but this is again just what has been excluded.

    Notation

    Notation 21.1

    327U

    For an interval I=\left[a,b\right) we define its d-neighborhood as .greek.cap@\Gamma(I, d).)))

    \Gamma(I, d)=(a-d,b+d].

    We will also write \Gamma(x,d)=(x-d,x+d].

    Definition

    Definition 21.2 (Color control)

    ZJN3

    Suppose we are given a medium M, along with a history \eta. A set E of space is color-fitted in \eta at time t if \ensuremath{\mathord{\textsf{\slshape{Color\/}}}}(x,t)\le\ensuremath{\mathord{\textsf{\slshape{Color\/}}}}(y,t) for every pair of cells x<y whose body intersects E. A space-time set is color-fitted if it is color-fitted at each time t. Let

    \begin{aligned} J_{t}=(t-({p}_{0}+2)T^{\bullet},t] . \end{aligned}

    The set E is controlled in \eta at time t if every subinterval K of it of size {B}, is within distance <2{B} of the body of a cell at that time, and the rectangle K\times J_{t} intersects the (space-time) body of a cell. It is color-controlled if in addition, the set E\times J_{t} is color-fitted. It has color c if it is color-controlled, and each cell whose space-time body intersects the set E\times J_{t} has color c.

    Lemma

    Lemma 21.3

    99PH

    Let t_{1}<t_{2} be times. Assume that interval K=\left[x_{0},x_{0}+{B}\right) is controlled at time t_{1}, and

    \begin{aligned} \Gamma(K, 3{B})\times(t_{1} - ({p}_{0}+2)T^{\bullet},t_{2}] \end{aligned}

    is damage-free. Then K is controlled at time t_{2}.

    Proof of Lemma 21.3

    et I=(x_{0}-{B},x_{0}+{B}], then a cell’s body intersects K if and only if it is in I. Let t\in(t_{1},t_{2}]. Suppose that K is controlled for all t'<t, that is for all t'<t, each set I\times (t'-({p}_{0}+2)T^{\bullet},t'] contains some cell. Let t_{0}=t-({p}_{0}+2)T^{\bullet}. We want to show that

    Cjenum.
  • I contains some cell z at some time in (t_{0},t],

  • at each such time the interval \Gamma(K,2{B}) intersects a cell body.

  • The statement Proof may not hold only if a cell x_{1} in I disappears at time t_{0}, so assume this happens. Then x_{1} must have been erased by some cell y_{1} about to create an adjacent neighbor whose body overlaps with the body of x_{1}. Without loss of generality assume

    \begin{aligned} x_{1}\le x_{0},\quad y_{1}+{B}< x_{1}<y_{1}+2{B}. \end{aligned}

    As x_{1}>x_{0}-{B}, we have

    \begin{aligned} x_{0}-3{B}<y_{1}<x_{1}-{B}\le x_{0}-{B} . \end{aligned}

    If y_{1}\in I then let z\gets y_{1}, now assume it is not. According to the rule \ensuremath{\mathord{\texttt{\slshape{Adapt\/}}}}, cell y_{1} must have had \ensuremath{\mathord{\textsf{\slshape{Dying\/}}}}_{0}=0, \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}_{1}=1 to be able to erase, and therefore survives until time t_{0}+{p}_{1}{T_{\bullet}} as \ensuremath{\mathord{\texttt{\slshape{Die\/}}}}({p}) always has {p}\ge{p}_{1} by Condition ?, ?. Since according to Condition ?, ? only the rule \ensuremath{\mathord{\texttt{\slshape{Create\/}}}} changes \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}_{1}, and only when a right adjacent neighbor has disappeared, cell y_{1} keeps trying to create a right neighbor.

    Step+.

    step:lasting-control.success Suppose y_{1} succeeds in creating y_{1}+{B} before time t_{0}+2T^{\bullet}.

    Prooof.

    If y_{1}+{B}>x_{0}-{B} then set z\gets y_{1}+{B}. Suppose y_{1}+{B}\le x_{0}-{B}. Then y_{1}+{B} turns on \ensuremath{\mathord{\textsf{\slshape{Creating\/}}}}_{1} within time {p}_{0}T^{\bullet}, and then tries to create y_{1}+2{B}. If it succeeds then, by (Proof) we can set z\gets y_{1}+2{B}. If it fails then a cell x_{2} with y_{1}+2{B}<x_{2}<y_{1}+3{B} is in the way, and we can set z\gets x_{2}.

    Step+.

    step:lasting-control.failure Suppose that y_{1} does not succeed creating y_{1}+{B} before time t_{0}+2T^{\bullet}.

    Prooof.

    Then some cell x_{2} with y_{1}+{B}<x_{2}<y_{1}+2{B} interferes. This cell was not there at time t_{0} as, by (Proof), it would have overlapped with cell x_{1}. Being so close to y_{1}, cell x_{2} could not have arisen by spontaneous birth, hence it must have been created by x_{2}+{B} which, as any creating cell, must still be alive after the creating time, so we can set z\gets x_{2}+{B}.

    We have shown Proof. The proof also shows that unless x_{1} survives y_{1} will, therefore for all t' in (t_{0},t], it is within 2{B} of interval K, which also shows Proof.

    Lemma

    Lemma 21.5

    FHYL

    K=\left[x_{0},x_{0}+{B}\right) be a space interval and t_{1},t_{2} times with t_{2}=t_{0}+d{p}_{0}T^{\bullet}, where

    \begin{aligned} d < {p}_{1}/\lambda{p}_{0} . \end{aligned}

    Assume that \Gamma(K, (d+1){B})\times(t_{1} - 3T^{\bullet},t_{2}] is damage-free, and the body of a cell x_{1} intersects \Gamma(K,d{B}) at time t_{1}. Then K is controlled at time t_{2}.

    Lemma

    Lemma 21.7

    8SC4

    Let us be given a time t_{1}, an interval J, and

    \begin{aligned} I\supset \Gamma(J,|J|), \quad I'=\Gamma(I, {B}^{*}),\quad t_{2}=t_{1}+{T_{\bullet}}^{*}. \end{aligned}

    In a trajectory \eta, assume that the space-time rectangle I'\times(t_{1},t_{2}] is free of damage. Assume also that \eta(\cdot,t_{1}) is such that changing it in J, at time t_{1} the whole interval I' will become color-controlled and germ-level. Then at time t_{2} there is an interval J'\supset J, with size \le 2|J| such that changing \eta in \Gamma(J,m{B}), the interval I becomes color-controlled. If it contains any colony cells at this time, they encode cells of age at most 0.

    Lemma

    Lemma 21.8 (Color trickle-down)

    SO7T

    Let \eta be a trajectory of M, define the times t_{0} and t_{1}=t_{0}+T^{\bullet *}. For interval J let J'=\Gamma(J, \lambda{B}^{*}). If J' is color-controlled at time t_{0} in \Phi^{*}(\eta), and the area J'\times(t_{1}-({p}_{0}+3)T^{\bullet *},t_{1}] is damage-free in \eta, then J is color-controlled at time t_{1} in \eta, and its colors can only be ones that were present in J at time t_{0}.

    Lemma

    Lemma 21.9

    49H2
    Sloppypar.

    In a trajectory \eta, let c_{1}=(x_{1},t_{1}) be a germ cell with \ensuremath{\mathord{\textsf{\slshape{G-size\/}}}} = L and \ensuremath{\mathord{\textsf{\slshape{Age\/}}}}>3R L. Assume that at time t_{1}, with a germ cell body K=\left[x_{1},x_{1}+2{B}^{*}\right), the space-time rectangle

    \begin{aligned} \Gamma(K, 25{B}^{*}) \times \Gamma(t_{1}, T^{\bullet *}). \end{aligned}

    is free of damage, and the domain containing c_{1} has an exposed edge. Then there is an L' with \rho L< L'\le 5{Q} such that in

    \begin{aligned} \Gamma(x_{1}, 5 L' {B}) \times\left[t_{1},t_{1}+5R L'\tau_{2}\right) \end{aligned}

    there is a colony cell, or a germ cell with \ensuremath{\mathord{\textsf{\slshape{G-size\/}}}}\ge L', or one with \ensuremath{\mathord{\textsf{\slshape{Addr\/}}}}=e'_{j} for j=\pm 1 (recall (?)).

    Lemma

    Lemma 21.10

    KMSN

    Consider a trajectory \eta with a germ cell c_{1}=(x_{1},t_{1}), K=\left[x_{1},x_{1}+2{B}^{*}\right) and L=\ensuremath{\mathord{\textsf{\slshape{G-size\/}}}}(c_{1}), and assume that the large space-time rectangle (21.9) is free of damage. Let 5\tau_{2}R L\le H\le T^{\bullet *}. Then at some time t'\in[t_{1},t_{1}+H] we can find a cell x' with a domain of germ size L'\ge L, where

    \begin{aligned} x' \in \Gamma(x_{1},5 L'{B}). \end{aligned}

    If c'=(x',t') does not belong to an extended colony or to a germ with maximal size then t'=t_{1}+H. If L'\le\rho L then c'=c_{1}, and during [t_{1},t_{1}+H] the germ of c_{1} did not become exposed or have a neighbor that is a colony cell or a germ cell with \ensuremath{\mathord{\textsf{\slshape{G-size\/}}}}\ge\rho L.

    Lemma

    Lemma 21.11

    WJOF

    Consider a trajectory \eta of M_{k}, with a germ cell c_{1}=(x_{1},t_{1}), K=\left[x_{1},x_{1}+2{B}^{*}\right), and assume that the large space-time rectangle (21.9) is free of damage. The probability that the rectangle contains no colony cell is bounded by \theta_{k}. Moreover, there is a canonical simulation in the sense of Definition 7.13 providing this estimate.

    Proof of Lemma 21.11

    step+step:birth.constr The following construction iterates that of Lemma 21.10, with cells c_{s}=(x_{s},t_{s}), L_{s}=\ensuremath{\mathord{\textsf{\slshape{G-size\/}}}}(c_{s}) and time period of size

    \begin{aligned} H_{s} = 10\lambda\tau_{2}R L_{s} \end{aligned}

    in step s.

    Prooof.

    Starting with cell c_{1}, find a cell c' given by the conclusion of Lemma 21.10, call it c_{2}=(x_{2},t_{2}). Repeat, getting to cells c_{3},c_{4},\dots, until cell c_{n} when we reach a germ with maximal size, or a colony, or time t_{1}+2T^{\bullet *}. Let us call step s a growth step if L_{s+1}\ge \rho L_{s}, and stalling step otherwise. As seen in Lemma 21.10, in a stalling step a germ of c_{s} of size L_{s} does not get exposed, nor does it meet a colony cell or a cell with \ensuremath{\mathord{\textsf{\slshape{G-size\/}}}}\ge\rho L_{s}.

    Let us examine a stalling step starting at time t_{s}, at the shorter end of the germ G_{s} of cell c_{s}, that is on the end in which direction its \ensuremath{\mathord{\textsf{\slshape{Grow-dir\/}}}} points; without loss of generality, assume that it is the left end. Let x_{s} be the cell of G_{s} with address {Q}/2. After t_{s}, the germ G_{s} may grow, but since it will not reach \rho L_{s}, it will stall soon, at some time u_{1}. One possibility is that the left end has reached its farthest possible address, another that another germ is in the way: one with \ensuremath{\mathord{\textsf{\slshape{G-size\/}}}} between L_{s}/\rho and \rho L_{s}; we already excluded the other possibilities. In case the left end has reached the farthest address, we will turn attention to the right end, so without loss of generality, assume that the left end does not reach the farthest address, because another germ G' is in the way.

    Let x' be the central cell of G', and look at the next \lambda+2 times in which x_{s} or x' make a random choice of \ensuremath{\mathord{\textsf{\slshape{Dominant\/}}}}. Let \mathcal{E} be the event that each choice is \ensuremath{\mathord{\textsf{\slshape{Dominant\/}}}}(x_{s})=1 and \ensuremath{\mathord{\textsf{\slshape{Dominant\/}}}}(x')=0. We claim that if \mathcal{E} occurs then G_{s} will advance, so the current step is not a stalling step. To avoid some case distinctions, call x_{s}=y_{1}, x'=y_{0}. Let j be such that the first choice of y_{1-j}, at some time \tau, falls between two choices of y_{j} at times \tau' and \tau''. If \tau happens at least 0.1R L age steps before \tau'' them G_{s} will advance before \tau''. Otherwise G_{s} will advance soon after \tau''. Now, \tau occurs before \lambda+1 choices made by y_{j}; indeed, T^{\bullet}/{T_{\bullet}}\le\lambda implies that the stages of y_{1-j} are at most \lambda times longer than those of y_{j}. So the current step is stalling only if \neg\mathcal{E} holds, that is with probability

    \begin{aligned} \operatorname{\mathsf P}(\neg\mathcal{E}) \le 1-(1/2-\varepsilon')^{\lambda+2}< 1-(1/2-\varepsilon')^{5}<1-2^{-5}, \end{aligned}

    because \lambda\le 2 according to (?), and \varepsilon' can be chosen small.

    by Condition 10.16? on robust media.

    Step+.

    step:birth.probab-estim Let us estimate first the probability that there is no colony in (21.9) informally (that is not in the sense of canonical simulation yet).

    Prooof.

    We assumed that the rectangle (21.9) is damage-free; the straightforward estimation of the probability of damage will come later. Our construction gives in step s a cell c_{s}=(x_{s},t_{s}). The number of growth steps is at most \log(5{Q})/\log\rho. Recalling (?), this is < 4\log{Q} when {Q} is large. As L_{s}<5{Q}, each step has time length \le 50\lambda\tau_{2}{Q}. So the total number of steps is at least

    \begin{aligned} n\geT^{\bullet *}/25\lambda{p}_{2}T^{\bullet}{Q}. \end{aligned}

    We are using the parameters in (?):

    \begin{aligned} {Q} &={Q}_{k}= R^{k+1}, \\ w &=1/R k^{2}, \\ {U}' &= R{Q}/w, \\ T^{\bullet *} &< 2{U}'_{k}T^{\bullet} < 2T^{\bullet *}, \\ \log{Q} &= (k+1)\logR. \end{aligned}

    so by (?) we have

    \begin{aligned} T^{\bullet *}/{Q}T^{\bullet} &>{U}'/{Q}=R/w=R^{2}k^{2}, \\ n &\ge R^{2}k^{2}/25\lambda{p}_{2}=:cR^{2}k^{2}. \end{aligned}

    As we have seen the probability for any particular step s to be a stalling step is \le 1-2^{-5}. Using \ln (1+x)<1+x we have \ln (1-2^{-5})\le -2^{-5},

    \begin{aligned} r := -\ln (1-2^{-5}) > 2^{-5}. \end{aligned}

    For any particular m-element subset of steps the probability to be stalling steps is at most (1-2^{-5})^{m}=e^{-r m}. As seen, the number of stalling steps is at least n-4\log{Q}, so the probability of no colony is

    \begin{aligned} &\le\sum_{i>n-4\log{Q}}\binom{n}{n-i}e^{-r(n-i)} = \sum_{i<4\log{Q}}\binom{n}{i}e^{-r(n-i)} \\ &< 4\log{Q} \cdot n^{4\log{Q}}e^{-r(n-4\log{Q})} = 4\log{Q} e^{-(rn-4r\log{Q}+4\ln n \log {Q})}, \end{aligned}

    because the term inside the sum is increasing with i. Given (?) and (?), for large R the right-hand side is <4\log{Q} e^{-rn/2}, and the sum of (?) for all n>cR^{2}k^{2} is

    \begin{aligned} \le 4\log{Q} \sum_{n>cR^{2}k^{2}}e^{- r n/2} \le 4(k+1)\logR\cdot e^{-r cR^{2}k^{2}/2}\sum_{n> 0}e^{-rn/2}. \end{aligned}

    The multipliers of e^{-r c R^{2}k^{2}/2} don’t change the rate of growth much, so we can bound the probability by \theta_{k} as defined in (?).

    Step+.

    step:birth.canon Now we repeat the construction above, turning it into a canonical simulation.

    Prooof.

    As we constructed the sequence of cells c_{s}=(x_{s},t_{s}), s=1,2,\dots, the times t_{s} were chosen on the basis of the trajectory \eta before t_{s}, so these times t_{s} are stopping times according to Definition 7.8. It is not important to upper-bound the number of steps, but n^{*}=2T^{\bullet *}/T^{\bullet} will serve. Following the reasoning in part ?, choose in every possible way a subset S of size > n^{*}-4\log{Q} of the set \{1,\dots,n^{*}\} of indices. Number these subsets as S_{1},S_{2},\dots,S_{N}. Subset S_{i} represents the assumption that the steps s\in S_{i} are the stalling steps. In order to define the canonical simulation, we repeat the reasoning of part ? above.

    Let us fix one of the sets S=S_{i}. For each element s\in S in increasing order, let us examine a presumed stalling step starting at time t_{s}, at the shorter end of the germ G_{s} of cell c_{s}. Without loss of generality, assume it is the left end. Let u_{1} be the start of a growth part of a new work stage of G_{s} after t_{s} (started by the center cell of G_{i}). After u_{1}, the germ G_{s} may grow. If it reaches \rho L_{s}, or meets a colony cell or a germ cell with \ensuremath{\mathord{\textsf{\slshape{G-size\/}}}}\ge\rho L_{s}, then s is not a stalling step: we set

    \begin{aligned} \beta_{S,s}=\omega,\quad W_{i,r}=\emptyset, \end{aligned}

    and proceed to j+1. We will call this action bailing out. Another possibility is that the left end has reached its farthest possible address, another that another germ is in the way: one with \ensuremath{\mathord{\textsf{\slshape{G-size\/}}}} between L_{s}/\rho and \rho L_{s}; we already excluded the other possibilities. In case the left end has reached the farthest address, we will turn attention to the right end, so without loss of generality, assume that the left end does not reach the farthest address, because another germ G' is in the way. Let x_{s} be the central cell of G_{s} and x' be that of C'. Now we look at the first m=\lambda+2 times \tau^{*}_{1},\tau^{*}_{2},\dots when x_{2} or x' make random choices, let y_{j}\in \{x_{s},x'\} be the element making its choice. For every possible binary sequence \mathbf{b} = b_{1},\dots,b_{m} we will bail out unless y_{j}=x_{s} if and only if b_{i}=1. We will also bail out if the choice is \ensuremath{\mathord{\textsf{\slshape{Dominant\/}}}}(y_{j})=j for all j. Both of these decisions can be made at the last time \tau_{m}, if not earlier. For the remaining cases,

    \begin{aligned} \beta_{S,s,\mathbf{b},j}:=\alpha(\ensuremath{\mathord{\textit{rand\/}}},f_{j}),\quad W_{S,s}:=W_{0}(y_{j},\tau^{*}_{j}), \end{aligned}

    where \alpha(\ensuremath{\mathord{\textit{rand\/}}},d) and W_{0}(x,t) were defined in Condition 10.16?. This construction results in the required canonical simulation. Summing up the non-bailed out bounds results in the same estimate as the more intuitive one given in parts ? and ? above.

    Lemma

    Lemma 21.12

    0WFO

    Let us be given an interval K=\left[x_{1},x_{1}+2{B}^{*}\right), and let

    \begin{aligned} t_{2}=t_{1}+26{p}_{0}T^{\bullet *} ,\quad K'=\Gamma(K,2\cdot (26{p}_{0}+2)\lambda{B}^{*}). \end{aligned}

    In a trajectory \eta=\eta^{k} of medium M=M_{k}, assume that the space-time rectangle K'\times(t_{1},t_{2}] is free of damage. Assume also that there is an interval J of size <|{B}^{*}|/3 in which when changing \eta at time t_{1} the whole interval K' can be made color-controlled in M. Then at time t_{2}, except for an event of probability \theta defined in (?), the interval K is color-controlled in trajectory \eta^{*} of M^{*}. If K' is germ-level for \eta at time t_{1} then K is germ-level for \eta^{*} at time t_{1}.

    Definition

    Definition 21.13 (Probabilistic color control)

    4BNI

    Let us define the constants

    \begin{aligned} C_{1}=(26{p}_{0}+2)\lambda, \quad C_{2}=26{p}_{0}+2. \end{aligned}

    Let “blue” be some color. For some parameter \sigma>0, let \mathcal{E} be an event derived from the behavior of trajectory \eta of medium M before time t. We will say that trajectory \eta is germ-level blue modulo (\sigma,\mathcal{E}) at time t on the finite or infinite interval H if for every set of space intervals I_{1},\dots,I_{n}\subset H, of size C_{1}{B}, at distance \ge 2 C_{1}{B} from each other, the probability that \neg\mathcal{E} holds and none of the I_{j} is germ-level and blue is at most \sigma^{n}. When H is the whole space then we will have \mathcal{E}=\emptyset, so the “modulo \mathcal{E}” qualification can be omitted.

    For an amplifier, the parameter \theta_{k} was defined in (?). Let

    \sigma_{k} = \begin{cases} \theta_{1} &\text{ if } k=1, \\ 2\theta_{k-1}&\text{ if }k>1. \end{cases}

    As usual, for level k we will simply write \sigma=\sigma_{k}, \sigma^{*}=\sigma_{k+1}, and so on.

    Lemma

    Lemma 21.14 (Self-organization)

    P9WI

    For a trajectory \eta of one of the media M=M_{k}, of our amplifier, and \mathcal{E} an event depending on the behavior of \eta before t_{1}. For a finite or infinite space interval H, assume that H':=\Gamma(H,C_{1}{B}^{*}) is germ-level blue modulo (\sigma,\mathcal{E}) in \eta at time t_{1}, and let t_{2}=t_{1}+ C_{2}T^{\bullet *}. Let \mathcal{E}^{*} be the event that \mathcal{E} holds, or not all (0,1 or 2) intervals of size C_{1}{B}^{*} at the ends of H' are blue in \eta at time t_{1}. Then H is germ-level blue modulo (\sigma^{*},\mathcal{E}^{*}) at time t_{2} for the trajectory \eta^{*} in M^{*}.

    Proof of Lemma 21.14

    et I_{1},\dots,I_{n}\subset H be any system of intervals of size C_{1}{B}^{*}, at distance \ge 2 C_{1}{B}^{*} from each other. We need to bound the probability by (\sigma^{*})^{n} that \neg\mathcal{E}^{*} holds and none of the intervals I_{j} are good in \eta^{*}. It is sufficient to look at one of these intervals—call it I, with

    \begin{aligned} I'=\Gamma(I,C_{1}{B}^{*}). \end{aligned}

    Indeed, as the space-time rectangles of the argument for all of them are disjoint, and the probability estimates come from a canonical simulation, the bounds \sigma^{*} on the probability will multiply. Here is an outline of the argument.

    We will work within the space-time rectangle

    \begin{aligned} I' \times (t_{1},t_{1}+ C_{2}T^{\bullet *}]. \end{aligned}
    • Estimate the probability of the event \mathcal{F}_{1} that damage occurs in the rectangle (?).

    • Estimate the probability of the event \mathcal{F}_{2} that at time t_{1} it is not true that the interval I' is germ-level blue with the possible exclusion of a subinterval J of size C_{1}{B}.

    • Show that assuming \neg(\mathcal{F}_{1}\cup\mathcal{F}_{2}), except for an event \mathcal{F}_{3} of probability \le\theta the interval I turns germ-level blue for M^{*} by time t_{2}.

    Condition 10.4 (Restoration Property) gives the upper bound

    \label{eq:sorg.q_{1}} \operatorname{\mathsf P}(\mathcal{F}_{1}) \le \frac{3 C_{1}{B}^{*} \cdot C_{2}T^{\bullet *})}{{B}T^{\bullet}}\varepsilon\le 4 C_{1}C_{2}{Q}{U}'\varepsilon.

    Assuming \neg\mathcal{E}^{*} implies \neg\mathcal{E} as well. Let \mathcal{F}_{2} be the event that \neg\mathcal{E} holds and there is no interval J of size C_{1}{B} such that, setting J'=\Gamma(J,2 C_{1}{B}), the set I\setminus J' is blue at time t_{1}.

    Step+.

    step:sorg.first We have \operatorname{\mathsf P}(\mathcal{F}_{2})\le (C_{1}{Q}\sigma)^{2}.

    Pproof.

    Let J_{i} = i C_{1}{B}+\left[0,C_{1}{B}\right). Under the assumption of \neg\mathcal{E}, which we will omit to write in the estimates below, for some i,h with |i-h|\ge 4, let \mathcal{F}_{i,h} be the event that neither J_{i} nor J_{h} is germ-level and blue, and both intersect I'.. The germ-level blueness of \eta at time t_{1} modulo \sigma implies \operatorname{\mathsf P}(\mathcal{F}_{i,h})\le\sigma^{2}, and hence \operatorname{\mathsf P}\mathopen\{\mskip 1mu\cmexists i,h: \mathcal{F}_{i,h}\mskip 1mu\mathclose\}\le (3 C_{1}{Q})^{2}\sigma^{2}. If there is no such pair i,h then it is easy to see that there is an i such that I\setminus J'_{i} is blue.

    Step+.

    step:sorg.lift Let \mathcal{F}_{3} be the event that \neg(\mathcal{E}\cup\mathcal{F}_{1}\cup\mathcal{F}_{2}) holds and I does not become germ-level blue in \eta^{*}. Then \operatorname{\mathsf P}(\mathcal{F}_{3})\le\theta, where \theta was defined in (?).

    Pproof.

    By \neg\mathcal{F}_{2} there is a J of size C_{1}{B} such that I'\setminus J is germ-level blue at time t_{1}, so we invoke Lemma 21.12.

    Summarizing, the probability that under condition \neg\mathcal{E} the interval I does not become blue in \eta^{*} is bounded by

    \begin{aligned} \operatorname{\mathsf P}(\mathcal{F}_{1}\cup\mathcal{F}_{2}\cup\mathcal{F}_{3}) \le 4C_{1}C_{2}{Q}{U}'\varepsilon + (C_{1}{Q}\sigma)^{2}+\theta. \end{aligned}

    Let us show that the latter is \le\sigma^{*}, using the definitions in (?), those in (?), and the inequality (?). We have, for large enough R and small enough \varepsilon:

    \begin{aligned} 4 C_{1}C_{2}{Q}_{k}{U}'_{k}\varepsilon_{k}&=4C_{1}C_{2}R^{2k+4}k^{2}\varepsilon_{k} <\theta_{k}/2, \\ (C_{1}{Q}_{k}\sigma_{k})^{2}&= C_{1}^{2}R^{2k+2}e^{-2R k^{2}} < \theta_{k}/2, \end{aligned}

    so (?) is bounded by 2\theta=\sigma^{*}.

    Proof

    Proof

    OKMP

    he field that will be remembered will be \ensuremath{\mathord{\textsf{\slshape{Color\/}}}}. For the size N of our space, let us define the finite or infinite level K:

    K=\bigvee\mathopen\{\mskip 1mu k : 5{B}_{k} \le N\mskip 1mu\mathclose\}.

    For a certain value of the field \ensuremath{\mathord{\textsf{\slshape{Color\/}}}} that we call blue, we create an initial configuration \eta^{1}(\cdot,0) with blue latent cells covering the whole space. Let the trajectories \eta^{1}, \eta^{k} be defined as before. The proof will show that by time C_{2}T^{\bullet}_{k} the space will be germ-level blue modulo \sigma_{k}; from this via trickle-down we will be able to control the probability of any particular space-time point (x_{1},t_{1}) not being blue.

    Let \mathcal{F}_{1} be the event \ensuremath{\mathord{\textit{Blue\/}}}\ne\eta^{1}(x_{1},t_{1}).\ensuremath{\mathord{\textsf{\slshape{Color\/}}}}^{1}. Eventually, we want to upper-bound \operatorname{\mathsf P}(\mathcal{F}_{1}). Let us consider first the case of infinite space, that is K=\infty. Let

    \begin{aligned} v_{1} &= t_{1}, & v_{k+1} &= v_{k}-T^{\bullet}_{k+1}, \\ I_{1} &= \{x_{1}\},& I_{k+1} &= \Gamma(I_{k}, \lambda{B}_{k+1}), \\ u_{1} &= 0, & u_{k+1} &= u_{k}+C_{2}T^{\bullet}_{k+1}. \end{aligned}

    By Lemma 21.14, for each k\le K, in the trajectory \eta^{k}, the whole space is germ-level blue at time u_{k} modulo \sigma_{k}. Let \mathcal{F}_{k} be the event that I_{k} is blue at time v_{k} in \eta^{k}.

    Step+.

    step:sorg.stor.F-k We have \operatorname{\mathsf P}(\mathcal{F}_{k+1}\setminus\mathcal{F}_{k})\stackrel{{}_*}{<} {U}'_{k}{Q}_{k}\varepsilon_{k}, where we used the notation introduced in (2.1).

    Pproof.

    If damage does not occur in \eta^{k} in I_{k+1}\times(v_{k}-({p}_{0}+2)T^{\bullet}_{k+1},v_{k}] and \mathcal{F}_{k+1} holds then Lemma 21.8 (Color trickle-down) implies \mathcal{F}_{k}. The right-hand side above upper-bounds the probability of damage there. Now

    \begin{aligned} {U}'_{k}{Q}_{k}\varepsilon_{k} < \varepsilon^{2^{n-2} + 2^{(n-3)/2}} <\varepsilon^{2^{n-2}}, \end{aligned}

    Let

    \begin{aligned} n = \bigwedge\mathopen\{\verythinmathskipk: v_{k+1} \le u_{k+1} \text{ or } k = K\mskip 1mu\mathclose\}, \quad t_{2} = u_{n}. \end{aligned}

    If K=\infty then we always have v_{n+1}\le u_{n+1}, hence

    \begin{aligned} v_{n+1} &=v_{n}-T^{\bullet}_{n+1} \le u_{n+1},\quad u_{n}<v_{n}, \\ v_{n} &\le u_{n+1}+T^{\bullet}_{n+1},\quad v_{n}-u_{n}\le(C_{2}+1)T^{\bullet}_{n+1}. \end{aligned}

    Let I' = \Gamma(I_{n}, (C_{2}+1){B}_{n} T^{\bullet} _{n+1}/{T_{\bullet}}_{n}). Let \mathcal{B} be the event that I' is blue in \eta^{n} at time u_{n}. Since \eta^{n} is blue at time u_{n} modulo \sigma_{n} for each n, we have

    \begin{aligned} \operatorname{\mathsf P}(\neg\mathcal{B})\stackrel{{}_*}{<} {U}'_{n}\sigma_{n}. \end{aligned}

    We claim \operatorname{\mathsf P}(\mathcal{B}\setminus\mathcal{F}_{n})\stackrel{{}_*}{<} ({U}'_{n})^{2}\varepsilon_{n}. Indeed, if damage does not occur in \eta^{k} in I'\times(u_{n},v_{n}] then \mathcal{B} and Lemma 21.4 imply \mathcal{F}_{n}. And the right-hand side upper-bounds the probability of damage occurring there. Thus,

    \begin{aligned} \operatorname{\mathsf P}(\neg\mathcal{F}_{1})&\le \sum_{k=1}^{n-1}\operatorname{\mathsf P}(\mathcal{F}_{k+1}\setminus\mathcal{F}_{k}) + \operatorname{\mathsf P}(\neg\mathcal{B})+\operatorname{\mathsf P}(\mathcal{B}\setminus\mathcal{F}_{n}) \\ &\stackrel{{}_*}{<} \sum_{k=1}^{n-1} {U}'_{k}{Q}_{k}\varepsilon_{k} +{U}'_{n}\sigma_{n} + ({U}'_{n})^{2}\varepsilon_{n}. \end{aligned}

    With the parameters of (?), large enough R and small enough \varepsilon we have

    \begin{aligned} &\sum_{k=1}^{n-1}\operatorname{\mathsf P}(\mathcal{F}_{k+1}\setminus\mathcal{F}_{i}) = O(\varepsilon), \\ &{U}'_{n}\sigma_{n}=R^{n+3}n^{2}e^{-R n^{2}}<e^{-R n^{2}/2}, \\ &({U}'_{n})^{2}\varepsilon_{n} = R^{2n+6}n^{4}\varepsilon^{2^{n-2} + 2^{(n-3)/2}} <\varepsilon^{2^{n-2}}, \end{aligned}

    for any somewhat large n and small \varepsilon, giving \operatorname{\mathsf P}(\neg\mathcal{F}_{1})\stackrel{{}_*}{<} e^{-R n^{2}/2}+\varepsilon. Let us upper-bound e^{-R n^{2}/2} by lower-bounding n. We have

    \begin{aligned} t_{1}\le (C_{2}+1)\sum_{k=1}^{n+1}T^{\bullet}_{k}\stackrel{{}_*}{<} T^{\bullet}_{n+1}. \end{aligned}

    From (?) for large k:

    \begin{aligned} t_{1} &\le T^{\bullet}_{n+1}= R^{(n+2)(n+3)/2-2}(n!)^{2}, \\ \ln t_{1}&< 0.6 n^{2}\lnR, \\ n^{2} &>(1/0.6\lnR) \ln t_{1}, \\ e^{-R n^{2}}&\le t_{1}^{-R/0.6\lnR}, \end{aligned}

    which leads to the estimate in Theorem 1.

    Step+.

    step:sorg.stor.fin Suppose u_{n+1}<v_{n+1}, hence n= K and the space is finite.

    Prooof.

    Given {B}_{n}\le N\le 5 {B}_{n} and the explicit expression for {B}_{n} and (within constant factor of) T^{\bullet}_{n} in (?), the estimate for \varepsilon_{n} in (?) and the definition (?), we have for large n,N, where for a later application we have been a little more generous:

    \begin{aligned} N &<{B}_{k+1}= R^{(n+1)(n+2)/2-1}, \\\log N &< (n+1)^{2}\logR/2, \\ n-2 &> (\log N)^{1/2}(2/\logR)^{1/2}-4, \\ 2^{n-2} &> c^{(\log N)^{1/2}}=h_{0}(N,c) \text{ for an appropriate } c>1, \\ \varepsilon_{n} &< \varepsilon^{2^{n-2}} \le \varepsilon^{h_{0}(N,c)}. \end{aligned}

    Let \mathcal{B} be the event that the whole space \mathbb{Z}_{N} is blue in \eta^{n} at time u_{n}. Since \eta^{n} is blue at time u_{n} modulo \sigma_{n}, and 5{B}_{n+1}>N, we have

    \begin{aligned} \operatorname{\mathsf P}(\neg\mathcal{B})\stackrel{{}_*}{<} {Q}_{n}\sigma_{n}. \end{aligned}

    The event \mathcal{B}\setminus \mathcal{F}_{n} occurs only if there is any damage in \eta^{n} between times u_{n} and v_{n}. We can upper-bound the probability of this within a constant factor by

    \begin{aligned} \varepsilon_{n}N t_{1}/{B}_{n}T^{\bullet}_{n} \le \varepsilon_{n} t_{1}/T^{\bullet}_{n}\le \varepsilon_{n}t_{1} \le\varepsilon^{h_{0}(N,c)}t_{1}, \end{aligned}

    which is what Theorem 1 states.

    Proof

    Proof

    N4KN

    his also proves Theorem 6, and the remark at the last part of the proof also proves Theorem 11 for the finite space. Let \ensuremath{\mathord{\textit{Tr\/}}} be a given standard computing transition function over an alphabet \Sigma. Construct an amplifier as in Lemma 11.7 with the transition function \ensuremath{\mathord{\textit{Pl-trans\/}}}_{1}(\cdot)=\ensuremath{\mathord{\textit{Tr\/}}}(\cdot). This amplifier defines cell body sizes {B}_{k} for all k. Given a string \rho\in\Sigma_{0}^{n} in the input-output alphabet, let

    \begin{aligned} l=\bigvee\mathopen\{\verythinmathskipk : {B}_{k}\le n\mskip 1mu\mathclose\}. \end{aligned}

    Create a germ of cells of M_{l} covering the space interval \left[0,n\right), with address {Q}_{l}/2 somewhere inside it. Fill its \ensuremath{\mathord{\textsf{\slshape{Payload\/}}}} track first with *, then write over the \ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}.\ensuremath{\mathord{\textsf{\slshape{Input\/}}}} track the string \rho. Now apply consecutively the encodings \phi_{*l}, \phi_{*(l-1)}, \dots, to get a string \rho_{l} of \mathbb{S}_{1}. The code \psi_{*} whose existence is stated in the theorem is defined as \psi_{*}(\rho)=\rho_{l}, which gives n_{l}:=|\rho_{l}|<2n as required by the theorem. From here, with \ensuremath{\mathord{\textit{Init\/}}} as in Definition 3.6, we obtain the initial configuration of M_{1} as \eta(\cdot,0)=\ensuremath{\mathord{\textit{Init\/}}}_{\psi_{*}}(\rho). For readability, we will call the color -1 “blue”, color 0 “white” and color 1 “red”. First, for simplicity, assume that the space is infinite.

    By the construction, the interval \left[0,n_{l}\right) is already an l-level white germ. First we will show how the space outside it will also promptly self-organize to level l: of color blue on the left and red on the right. From then on, the self-organization continues on the whole space, and at the same time, the computation in the white germ proceeds reliably, lifting to a higher level in every step of self-organization. Finally, the trickle-down argument shows that at any time the result can be read out at the lowest level.

    For k=1,2,\ldots, let

    \begin{aligned} a_{k}&=\sum_{i=2}^{k}C_{1}{B}_{i},\quad v_{k} = \sum_{i=2}^{k}C_{2}T^{\bullet}_{i}, \\ J_{k} &= \left[-a_{k},n_{l}+a_{k}\right), \quad H^{-}_{k}=(-\infty,-a_{k}),\quad H^{+}_{k}=\left[n_{l}+a_{k},\infty\right), \end{aligned}

    then J_{l}=\left[0,n_{l}\right), H^{-}_{1}=(-\infty,0). For j=1,2,3 let \mathcal{A}_{k,j} be the event that in \eta^{k} at time v_{k}, the interval \left[- j a_{k+1},-a_{k}\right) is not germ-level blue or \left[n_{l}- a_{k},n_{l}+ j a_{k+1}\right) is not germ-level red. Let

    \begin{aligned} \mathcal{D}_{k}=\bigcup_{i= 1}^{k}\mathcal{A}_{i,1}. \end{aligned}

    Note that \mathcal{A}_{1,1}=\mathcal{D}_{1}=\emptyset.

    Step+.

    step:1dim.comp.outside For each k, in \eta^{k} at time v_{k}, the set H^{-}_{k}\setminus H^{-}_{k+1} is germ-level blue and H^{+}_{l}\setminus H^{+}_{l+1} is germ-level red modulo (\sigma_{k},\mathcal{D}_{k-1}).

    Sloppypar.
    Pproof.

    Interval H^{-}_{1} is germ-level blue at time 0 in \eta^{1} by definition. Lemma 21.14 implies that H^{-}_{2} is germ-level blue in \eta^{2} at time v_{2} modulo (\sigma_{2},\mathcal{D}_{1}), further H^{-}_{3} is germ-level blue in \eta^{3} at time v_{3} modulo (\sigma_{3},\mathcal{D}_{2}), and so on. The same argument works for H^{+}_{k}.

    For k\ge l, let \mathcal{F}_{k} be the event that there is damage in \eta^{k} in the space-time rectangle

    \begin{aligned} \Gamma(J_{l},3 a_{k+1})\times (0,v_{k+1}]. \end{aligned}
    Step+.

    step:1dim.comp.middle Assuming \neg \mathcal{F}_{l}, the interval J_{l} is part of a white germ at time v_{l} in \eta^{l}.

    Pproof.

    We started from the interval J_{l} of level l cells surrounded by level 1 latent cells. In the absence of damage in \eta^{l}, these cells perform according to the program, hence up to time v_{l}<2 T^{\bullet}_{l+1}, none of them would die.

    Step+.

    step:1dim.comp.boundary From \neg(\mathcal{A}_{l,3}\cup\mathcal{F}_{l}) follows that in \eta^{l} at time v_{l}+2T^{\bullet}_{l+1}, interval J_{l} is part of a white germ, and \Gamma(J_{l},2 a_{l+1}) is germ-level color-controlled.

    Pproof.

    At time v_{l} in \eta^{l}, as part ? shows, \neg\mathcal{F}_{l} implies that J_{l} is part of a white germ. And \neg\mathcal{A}_{l,3}, implies by definition that \left[-3 a_{l+1},-a_{l}\right) is germ-level blue and \left[n_{l}-a_{l},n_{l}+3 a_{l+1}\right) is germ-level red. We can now apply the argument of Lemma 21.7 simultaneously with with I=\left[-3 a_{l+1},n_{l}\right), J=\left[-a_{l},0\right), and with I=\left[0,n_{l}+3 a_{l+1}\right), J=\left[n_{l},n_{l}+a_{l}\right), to imply that in \eta^{l} at time v_{l}+2T^{\bullet}_{l+1}, the whole interval \Gamma(J_{l},2 a_{l+1}) becomes germ-level color-controlled.

    Step+.

    step:1dim.comp.next From \neg(\mathcal{A}_{l,3}\cup\mathcal{F}_{l}) follows that in \eta^{l+1} at time v_{l+1}, the interval J_{l} is part of a white germ, and interval \Gamma(J_{l},a_{l+1}) is germ-level color-controlled, except for an event \mathcal{E}_{l} of probability

    \begin{aligned} \le (2 C_{1}+7)\theta_{l}, \end{aligned}

    where \theta_{l} was defined in (?).

    Pproof.

    From \mathcal{F}_{l} follows that J_{l} is part of a white germ also in \eta^{l+1}. By part ?, from \neg(\mathcal{A}_{l,3}\cup\mathcal{F}_{l}) follows that in \eta^{l} at time v_{l}+2T^{\bullet}_{l+1}, the interval \Gamma(J_{l},2 a_{l+1}) is germ-level color-controlled. Note that v_{l+1}=v_{l}+2T^{\bullet}_{l+1}+26{p}_{0}T^{\bullet}_{l+1}. Applying Lemma 21.12, for case \eta=\eta^{l}, t_{2}-t_{1}=26{p}_{0}T^{\bullet}_{l+1}, to any subinterval K of length 2{B}_{l+1} of \Gamma(J_{l},a_{l+1}), we find that K becomes color-controlled in \eta^{l+1} except for an event of probability \theta_{l}. If each of the r intervals of the form \left[i{B}_{l+1},(i+2){B}_{l+1}\right) intersecting \Gamma(J_{l},a_{l+1}) becomes color-controlled then so does \left[-a_{l+1},n_{l}-a_{l+1}\right). Let \mathcal{E}_{l} be the event that any one of them does not become color-controlled, then \operatorname{\mathsf P}(\mathcal{E}_{l})\le r\theta_{l}. The construction gave |J_{l}|<5 {B}_{l+1}, we know a_{l+1}<2C_{1}{B}_{l+1}, hence |\Gamma(J_{l},a_{l+1})|< (4 C_{1}+5){B}_{l+1}, r\le 4 C_{1}+9.

    Let us handle now first the case of infinite space \mathbb{Z}.

    Step+.

    step:1dim.comp.above Let k>l. Assume that in \eta^{k} at time v_{k} the interval J_{l} is part of a white germ, and the interval \Gamma(J_{l},a_{k}) is germ-level color-controlled. Then from \neg(\mathcal{A}_{k,2}\cup\mathcal{F}_{k}) follows that in \eta^{k+1} at time v_{k+1}, the interval J_{l} is part of a white germ, and interval \Gamma(J_{l},a_{k+1}) is germ-level color-controlled, except for an event \mathcal{E}_{k} of probability \le (2 C_{1}+3)\theta_{k}.

    Pproof.

    (This proof is similar to the one above.) From \mathcal{F}_{k} follows that J_{l} is part of a white germ also in \eta^{k+1}. From \neg\mathcal{A}_{k,2} follows that in \eta^{l} at time v_{l} also the interval \Gamma(J_{l},2 a_{k+1}) is germ-level color-controlled. Applying Lemma 21.12, for case \eta=\eta^{k}, t_{2}-t_{1}=C_{2}T^{\bullet}_{k+1}, to any subinterval K of length 2{B}_{k+1} of \Gamma(J_{l},a_{k+1}), we find that K becomes color-controlled in \eta^{k+1} except for an event of probability \theta_{k}. If each of the r intervals of the form \left[i{B}_{k+1},(i+2){B}_{k+1}\right) intersecting \Gamma(J_{l},a_{l+1}) becomes color-controlled then so does \Gamma(J_{l},a_{l+1}). Let \mathcal{E}_{k} be the event that any one of them does not become color-controlled; then \operatorname{\mathsf P}(\mathcal{E}_{k})\le r\theta_{k}. The construction gave |J_{l}|<{B}_{k+1}, we know a_{k+1}<2C_{1}{B}_{k+1}, hence |\Gamma(J_{l},a_{l+1})|< (4 C_{1}+1){B}_{l+1}, r\le 4 C_{1}+5.

    For k\ge l let

    \begin{aligned} \mathcal{D}'_{k} = \bigcup_{i=l}^{k}\mathcal{A}_{l,2}, \quad \mathcal{G}_{k}=\mathcal{D}_{l-1}\cup\mathcal{A}_{l,3}\cup\mathcal{D}'_{k-1}\cup\bigcup_{i=l}^{k-1}\mathcal{F}_{i} \cup\bigcup_{i=l}^{k-1}\mathcal{E}_{i}, \end{aligned}

    where the events \mathcal{E}_{i} were defined in the proofs of part ? and part ?.

    Step+.

    step:1dim.comp.combine Let k> l. Assuming \neg\mathcal{G}_{k}, in \eta^{l+1} at time v_{l+1} the interval \Gamma(J_{l},a_{k}) is germ-level color-controlled, and the interval J_{l} is part of a white germ. Also,

    \begin{aligned} \operatorname{\mathsf P}(\mathcal{G}_{k})&\le 2\sum_{i=1}^{l-1}{Q}_{i}\sigma_{i}+6{Q}_{l}\sigma_{l} + 4\sum_{i=l}^{k-1}{Q}_{i}\sigma_{i} \\ &+ 33\sum_{i=l}^{k-1}{Q}_{i}{U}'_{i}\varepsilon_{i} + (2 C_{1}+7)\theta_{l} + \sum_{i=l+1}^{k-1}(4 C_{1}+5)\theta_{i}=O(\sigma_{1}). \end{aligned}
    Pproof.

    The statement before the probability estimate, for k=l+1, follows from part ?. For k>l+1, it follows by induction from part ?. It remains to prove (?). From the definition, \mathcal{D}_{k}=\bigcup_{i=2}^{k}(\mathcal{A}_{i,1}\setminus\mathcal{D}_{i-1}). From

    \begin{aligned} \operatorname{\mathsf P}(\mathcal{A}_{i+1,j}\setminus\mathcal{A}_{i,j})&\le 2 j {Q}_{k}\sigma_{k} \end{aligned}

    we have \operatorname{\mathsf P}(\mathcal{D}_{k})\le 2\sum_{i=1}^{k-1}{Q}_{i}\sigma_{i}, \operatorname{\mathsf P}(\mathcal{D}'_{k})\le 4\sum_{i=l}^{k-1}{Q}_{i}\sigma_{i}. Given n_{l}<5{B}_{l+1}, a_{k+1}< 2{B}_{k+1}, v_{k+1}\le 2T^{\bullet}_{k+1}, we have

    \begin{aligned} \operatorname{\mathsf P}(\mathcal{F}_{k})\le 11 ({B}_{k+1}/{B}_{k})\cdot 2(T^{\bullet}_{k+1}/T^{\bullet}_{k}) \le 33 {Q}_{k}{U}'_{k}\varepsilon_{k}. \end{aligned}

    The estimates for \mathcal{E}_{k} were given in parts ? and ?.

    In the reasoning below, we assume \neg\mathcal{G}_{k}. Between times v_{k} and v_{k+1}, we have a white germ containing J_{l}, around the germ cell with address {Q}_{k}/2. Besides lifting from level k to level k+1, the trajectory \eta^{k} performs its payload computation; for each level i\le k, this proceeds without faults up to time v_{i+1}, in the area \Gamma(J_{l},a_{i+1}) which is all the area that matters, as the germ does not grow beyond it. But we are interested in the output of level 1, so trickle-down will be invoked. According to the rules \ensuremath{\mathord{\texttt{\slshape{Compute\/}}}} of Algorithm ? and \ensuremath{\mathord{\texttt{\slshape{Update-payload\/}}}} of Algorithm ?, payload computation happens on level k representing germ cells of level k+1 with addresses in \left[0,{Q}_{k+1}\right). We will estimate the number of payload computation steps performed, but first assume that time t' is the end of a dwell period of a germ cell x' of \eta^{k}, in which x=x'+a for some a\in\left[0,{B}_{k}\right), and \eta^{k}(x',t').\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}(a) is supposed to have the value \zeta(x,t). Under the assumption \neg\mathcal{G}_{k} indeed \zeta(x,t)=\eta^{k}(x', t').\ensuremath{\mathord{\textsf{\slshape{Payload\/}}}}(a). A trickle-down reasoning just like in Section ?, in the proof of Theorem 3, with D_{k}=T^{\bullet}_{k}, as done for information storage in the discussion after Lemma 11.7 (Amplifier), will bring the equality down to level 1:

    \begin{aligned} \operatorname{\mathsf P}\mathopen\{\mskip 1mu\zeta(x,t).\ensuremath{\mathord{\textsf{\slshape{Output\/}}}}\ne \eta(x, t').\ensuremath{\mathord{\textsf{\slshape{Output\/}}}}\mskip 1mu\mathclose\}&\le\operatorname{\mathsf P}(\mathcal{G}_{k})+ \varepsilon_{k}+\sum_{i=1}^{k-1}\varepsilon''_{i} \\ &= O(\sigma_{1})=O(e^{-R}). \end{aligned}

    Let us now estimate t' in terms of t. Let t'_{k} be the time by which the first white cell of M_{k} will be created, then we have v_{k-1}< t'_{k} \le v_{k}. Between times t'_{k} and t'_{k+1}, there are enough computation steps to simulate in \ensuremath{\mathord{\textit{Tr\/}}} the {B}_{k+1}-{B}_{k} steps of the expansion of an area of size {B}_{k} to one of size {B}_{k+1}. This shows that if {B}_{k}< t \le {B}_{k+1} then t_{k}\le t'<t_{k+1}. Recall the definition of bandwidth w_{k} in (?). During the time interval (t'_{k},t'_{k+1}], starting at time t'_{k} until the payload of a germ of size {B}_{k+1} is filled, each work period of a germ cell simulates at least a constant times w_{k}{B}_{k} steps of \ensuremath{\mathord{\textit{Tr\/}}}. So if t>{B}_{k} then to simulate t steps of \ensuremath{\mathord{\textit{Tr\/}}} we need, within constant factor, t/{B}_{k}w_{k} work periods, each of length \leT^{\bullet}_{k}, so

    \begin{aligned} t T^{\bullet}_{k}/{B}_{k}w_{k}. \end{aligned}

    For t\le{B}_{k} we need less, so we are conservative when going with this estimate for all t. Noting that \prod_{i<k}{U}'_{i} is within constant factor of T^{\bullet}_k, and using (?), we have within constant factor

    \begin{aligned} T^{\bullet}_{k}/{B}_{k}w_{k} = R^{k}(k!)^{2}< 2^{2.1 k\log k}. \end{aligned}

    Using (?) we have for large t,

    \begin{aligned} t&>B_{k}=R^{k(k+1)/2-1}, \\ \log t &> \logR\cdot k^{2}/2, \\ k &< (\log t)^{1/2}(2/\logR)^{1/2}, \\ 2^{2.1 k\log k} &< c^{ (\log t)^{1/2}\log\log t}, \end{aligned}

    for a constant c depending on R. So we can estimate t'\le t\cdot c^{(\log t)^{1/2}\log\log t} as Theorem 4 states.

    In case of the finite space \mathbb{Z}_{N} we can only hope to simulate the computation \zeta(\cdot,t) while it fits into a space of size N, so let

    \begin{aligned} K = \bigvee\mathopen\{\verythinmathskipk : B_{k}< N\mskip 1mu\mathclose\}. \end{aligned}
    Step+.

    step:1dim.comp.finite In case of a space \mathbb{Z}_{N} for finite N, adding \varepsilon^{h_{0}(N,c)}t to the estimate with a constant c>1 will do. The same argument works also to finish the proof of Theorem 11 for a finite space.

    Pproof.

    After the level has been raised to K, it will not be raised any longer. In every time period of size T^{\bullet}_{K}, the computation may fail if a fault of level K occurs, that is with probability \varepsilon_{K}. In time t the probability of this happening at least once can be (generously) be upper-bounded by \varepsilon_{K}t. We estimate, similarly to (?), for k=K:

    \begin{aligned} \varepsilon_{K} &< \varepsilon^{h_{0}(N,c)} \end{aligned}

    for an appropriate c>1.

    Example

    Example 22.1 (The contact process.)

    NG5G

    The contact process is a one-dimensional \ensuremath{\mathord{\textit{CCA\/}}} as defined in Section ?. Let us note that this this process is not noisy: not all local transition rates are positive. The process has states 0,1. In trajectory \eta(x,t), state \eta(x,t)=1 turns into 0 with rate 1. State \eta(x,t)=0 turns into 1 with rate \lambda(\eta(x-1,t)+\eta(x+1,t)). It is known that this process has a critical rate \lambda_{c}\in(0,\infty) with the following properties.

    If \lambda\le \lambda_{c} then the process is mixing with the invariant measure concentrated on the configuration \xi with \xi(x)=0 for all x. If \lambda>\lambda_{c} then the process is non-ergodic.

    If \lambda<\lambda_{c} then it is known (see Theorem 3.4 in Chapter VI of [Liggett85]) that the order of magnitude of r_{\infty}(n,\delta) is \log n.

    If \lambda=\lambda_{c} then the convergence is much slower, with an order of magnitude that is a power of n (see Theorem 3.10 in Chapter VI of [Liggett85] and [BezuidenhoutGrimmett90]).

    Source and licence

    The text on this page is from arXiv:math/0003117v2 by Peter Gacs, under the licence CC BY 4.0. The corpus made these changes: it read the items out of the LaTeX source, it expanded the macros of the paper, it put each proof after its statement, and it converted the text to HTML. The formulas are the TeX of the paper, and KaTeX renders them. A formula or a reference can look different from the PDF. The page is published under CC BY 4.0.

    The record of each item is in analysis/objects/0003/math-0003117.jsonl.