arXiv:2105.05968v1 [cs.FL] 12 May 2021

13
A new version of Toom’s proof Peter GΓ‘cs * Boston University Abstract There are several proofs now for the stability of Toom’s example of a two-dimensional stable cellular automaton and its application to fault- tolerant computation. Simon and Berman simplified and strengthened Toom’s original proof: the present report is a simplified exposition of their proof. 1 Introduction Let us define cellular automata. Definition 1.1 For a finite , let Z be the set of integers modulo ; we will also write Z ∞ = Z for the set of integers. A set C will be called a one-dimensional set of sites, or cells, if it has the form C = Z for a finite or infinite . For finite , and ∈ C, the values + 1 - 1 are always understood modulo . Similarly, it will be called a two- or three-dimensional set of sites if it has the form C = Z 1 Γ— Z 2 or C = Z 1 Γ— Z 2 Γ— Z 3 for finite or infinite . One- and three-dimensional sets of sites are defined similarly. For a given set C of sites and a finite set S of states, we call every function : C β†’ S a configuration. Configuration assigns state ( ) to site . For some interval βŠ‚( 0, ∞] , a function : C Γ— β†’ S will be called a space-time configuration. It assigns value ( , ) to cell at time . In a space-time vector ( , ) , we will always write the space coordinate first. y * Partially supported by NSF grant CCR-9204284 arXiv:2105.05968v1 [cs.FL] 12 May 2021

Transcript of arXiv:2105.05968v1 [cs.FL] 12 May 2021

A new version of Toom’s proof

Peter GΓ‘csβˆ—Boston University

Abstract

There are several proofs now for the stability of Toom’s example ofa two-dimensional stable cellular automaton and its application to fault-tolerant computation. Simon and Berman simplified and strengthenedToom’s original proof: the present report is a simplified exposition of theirproof.

1 Introduction

Let us define cellular automata.

Definition 1.1 For a finiteπ‘š, letZπ‘š be the set of integers moduloπ‘š; we will alsowrite Z∞ = Z for the set of integers. A set C will be called a one-dimensionalset of sites, or cells, if it has the form C = Zπ‘š for a finite or infinite π‘š. Forfinite π‘š, and π‘₯ ∈ C, the values π‘₯ + 1 π‘₯ βˆ’ 1 are always understood modulo π‘š.Similarly, it will be called a two- or three-dimensional set of sites if it has theform C = Zπ‘š1 Γ— Zπ‘š2 or C = Zπ‘š1 Γ— Zπ‘š2 Γ— Zπ‘š3 for finite or infinite π‘šπ‘–. One- andthree-dimensional sets of sites are defined similarly.

For a given set C of sites and a finite set S of states, we call every functionb : C β†’ S a configuration. Configuration b assigns state b(π‘₯) to site π‘₯. Forsome interval 𝐼 βŠ‚ (0,∞], a function [ : C Γ— 𝐼 β†’ S will be called a space-timeconfiguration. It assigns value [(π‘₯, 𝑑) to cell π‘₯ at time 𝑑.

In a space-time vector (π‘₯, 𝑑), we will always write the space coordinate first.y

βˆ—Partially supported by NSF grant CCR-9204284

arX

iv:2

105.

0596

8v1

[cs

.FL

] 1

2 M

ay 2

021

Definition 1.2 Let us be given a function function Trans : S3 β†’ S and a one-dimensional set of sites C. We say that a space-time configuration [ in one di-mension is a trajectory of the one-dimensional (deterministic) cellular automatonCA(Trans)

[(π‘₯, 𝑑) = Trans([(π‘₯ βˆ’ 𝐡, 𝑑 βˆ’ 𝑇), [(π‘₯, 𝑑 βˆ’ 𝑇), [(π‘₯ + 𝐡, 𝑑 βˆ’ 𝑇))

holds for all π‘₯, 𝑑. Deterministic cellular automata in several dimensions are de-fined similarly. y

Since we want to analyze the effect of noise, we will be interested in randomspace-time configurations.

Definition 1.3 For a given set C of sites and time interval 𝐼, consider a prob-ability distribution P over all space-time configurations [ : C Γ— 𝐼 β†’ S. Oncesuch a distribution is given, we will talk about a random space-time configuration(having this distribution). We will say that the distribution P defines a trajectoryof the Y-perturbation

CAY(Trans)if the following holds. For all π‘₯ ∈ C, 𝑑 ∈ 𝐼, π‘Ÿβˆ’1, π‘Ÿ0, π‘Ÿ1 ∈ S, let 𝐸0 be an eventthat [(π‘₯ + 𝑗, 𝑑 βˆ’ 1) = π‘Ÿ 𝑗 ( 𝑗 = βˆ’1, 0, 1) and [(π‘₯ β€², 𝑑′) is otherwise fixed in somearbitrary way for all 𝑑′ < 𝑑 and for all π‘₯ β€² β‰  π‘₯, 𝑑′ = 𝑑. Then we have

P{[(π‘₯, 𝑑) = Trans(π‘Ÿβˆ’1, π‘Ÿ0, π‘Ÿ1) | 𝐸0} ≀ Y.

y

A simple stable two-dimensional deterministic cellular automaton given byToom in [3] can be defined as follows.

Definition 1.4 (Toom rule) First we define the neighborhood

𝐻 = {(0, 0), (0, 1), (1, 0)}.

The transition function is, for each cell π‘₯, a majority vote over the three valuesπ‘₯ + 𝑔𝑖 where 𝑔𝑖 ∈ 𝐻. y

As in [2], let us be given an arbitrary one-dimensional transition functionTrans and the integers 𝑁, 𝑇 .

Definition 1.5 We define the three-dimensional transition function Transβ€² asfollows. The interaction neighborhood is 𝐻 Γ— {βˆ’1, 0, 1} with the neighborhood𝐻 defined above. The rule Transβ€² says: in order to obtain your state at time 𝑑+1,

2

first apply majority voting among self and the northern and eastern neighborsin each plane defined by fixing the third coordinate. Then, apply rule Trans oneach line obtained by fixing the first and second coordinates.

For a finite or infinite π‘š, let C be our 3-dimensional space that is the prod-uct of Z2

π‘š and a 1-dimensional (finite or infinite) space A with 𝑁 = |A|. Fora trajectory Z of Trans on A, we define the trajectory Zβ€² of Transβ€² on C byZβ€²(𝑖, 𝑗, 𝑛, 𝑑) = Z(𝑛, 𝑑). y

Let Zβ€² be a trajectory of Transβ€² and [ a trajectory of CAY(Transβ€²) such that[(𝑀, 0) = Zβ€²(𝑀, 0).Theorem 1 Let π‘Ÿ = 24, and suppose Y < 1

32Β·π‘Ÿ8 . If π‘š = ∞ then we have

P{[(𝑀, 𝑑) β‰  Zβ€²(𝑀, 𝑑) } ≀ 4π‘ŸY.

If π‘š is finite then we have

P{[(𝑀, 𝑑) β‰  Zβ€²(𝑀, 𝑑) } ≀ 4π‘ŸY + (𝑑𝑁) Β· 2π‘Ÿπ‘š2(2π‘Ÿ2Y1/12)π‘š.

The proof we give here is a further simplification of the simplified proof of[1].

Definition 1.6 Let Noise be the set of space-time points 𝑣where [ does not obeythe transition rule Transβ€². Let us define a new process b such that b(𝑀, 𝑑) = 0 if[(𝑀, 𝑑) = Zβ€²(𝑀, 𝑑), and 1 otherwise. Let

Corr(π‘Ž, 𝑏, 𝑒, 𝑑) = Maj(b(π‘Ž, 𝑏, 𝑒, 𝑑), b(π‘Ž + 1, 𝑏, 𝑒, 𝑑), b(π‘Ž, 𝑏 + 1, 𝑒, 𝑑)).

y

For all points (π‘Ž, 𝑏, 𝑒, 𝑑 + 1) βˆ‰ Noise([), we have

b(π‘Ž, 𝑏, 𝑒, 𝑑 + 1) ≀ max(Corr(π‘Ž, 𝑏, 𝑒 βˆ’ 1, 𝑑), Corr(π‘Ž, 𝑏, 𝑒, 𝑑), Corr(π‘Ž, 𝑏, 𝑒 + 1, 𝑑)).

Now, Theorem 1 can be restated as follows:Suppose Y < 1

32Β·π‘Ÿ8 . If π‘š = ∞ then

P{b(𝑀, 𝑑) = 1} ≀ 4π‘ŸY.

If π‘š is finite then

P{b(𝑀, 𝑑) = 1} ≀ 4π‘ŸY + (𝑑𝑁) Β· 2π‘Ÿπ‘š2(2π‘Ÿ2Y1/12)π‘š.

3

2 Proof using small explanation trees

Definition 2.1 (Covering process) If π‘š < ∞ let Cβ€² = Z3 be our covering space,and Vβ€² = Cβ€² Γ— Z our covering space-time. There is a projection proj(𝑒) from Cβ€²

to C defined byproj(𝑒)𝑖 = 𝑒𝑖 mod π‘š (𝑖 = 1, 2).

This rule can be extended to Cβ€² identically. We define a random process bβ€² overCβ€² by

bβ€²(𝑀, 𝑑) = b(proj(𝑀), 𝑑).The set Noise is extended similarly to Noiseβ€². Now, if proj(𝑀1) = proj(𝑀2) thenbβ€²(𝑀1, 𝑑) = bβ€²(𝑀2, 𝑑) and therefore the failures at time 𝑑 in 𝑀1 and 𝑀2 are notindependent. y

Definition 2.2 (Arrows, forks) In figures, we generally draw space-time withthe time direction going down. Therefore, for two neighbor points 𝑒, 𝑒′ of thespace Z (where 𝑒 is considered a neighbor for itself as well) and integers π‘Ž, 𝑏, 𝑑,we will call arrows, or vertical edges the following kinds of (undirected) edges:

{(π‘Ž, 𝑏, 𝑒, 𝑑), (π‘Ž, 𝑏, 𝑒′, 𝑑 βˆ’ 1)}, {(π‘Ž, 𝑏, 𝑒, 𝑑), (π‘Ž + 1, 𝑏, 𝑒′, 𝑑 βˆ’ 1)},{(π‘Ž, 𝑏, 𝑒, 𝑑), (π‘Ž, 𝑏 + 1, 𝑒′, 𝑑 βˆ’ 1)}.

We will call forks, or horizontal edges the following kinds of edges:

{(π‘Ž, 𝑏, 𝑒, 𝑑), (π‘Ž + 1, 𝑏, 𝑒, 𝑑)}, {(π‘Ž, 𝑏, 𝑒, 𝑑), (π‘Ž, 𝑏 + 1, 𝑒, 𝑑)},{(π‘Ž + 1, 𝑏, 𝑒, 𝑑), (π‘Ž, 𝑏 + 1, 𝑒, 𝑑)}.

We define the graphG by introducing all possible arrows and forks. Thus, a pointis adjacent to 6 possible forks and 18 possible arrows: the degree of G is at most

π‘Ÿ = 24.

(If the space is 𝑑 + 2-dimensional, then π‘Ÿ = 12(𝑑 + 1).) We use the notationTime((𝑀, 𝑑)) = 𝑑. y

The following lemma is key to the proof, since it will allow us to estimatethe probability of each deviation from the correct space-time configuration. Itassigns to each deviation a certain tree called its β€œexplanation”. Larger expla-nations contain more noise and have a correspondingly smaller probability. Forsome constants 𝑐1, 𝑐2, there will be ≀ 2𝑐1𝐿 explanations of size 𝐿 and each suchexplanation will have probability upper bound Y𝑐2𝐿.

4

Lemma 2.3 (Explanation Tree) Let 𝑒 be a point outside the set π‘π‘œπ‘–π‘ π‘’β€² withbβ€²(𝑒) = 1. Then there is a tree Expl(𝑒, bβ€²) consisting of 𝑒 and points 𝑣 of Gwith Time(𝑣) < Time(𝑒) and connected with arrows and forks called an expla-nation of 𝑒. It has the property that if 𝑛 nodes of Expl belong to Noiseβ€² then thenumber of edges of Expl is at most 4(𝑛 βˆ’ 1).

This lemma will be proved in the next section. To use it in the proof of themain theorem, we need some easy lemmas.

Definition 2.4 A weighted tree is a tree whose nodes have weights 0 or 1, withthe root having weight 0. The redundancy of such a tree is the ratio of its numberof edges to its weight. The set of nodes of weight 1 of a tree 𝑇 will be denotedby 𝐹(𝑇).

A subtree of a tree is a subgraph that is a tree. y

Lemma 2.5 Let 𝑇 be a weighted tree of total weight 𝑀 > 3 and redundancy _. Ithas a subtree of total weight 𝑀1 with 𝑀/3 < 𝑀1 ≀ 2𝑀/3, and redundancy ≀ _.

Proof. Let us order 𝑇 from the root π‘Ÿ down. Let 𝑇1 be a minimal subtree below π‘Ÿ

with weight > 𝑀/3. Then the subtrees immediately below 𝑇1 all weigh ≀ 𝑀/3.Let us delete as many of these as possible while keeping 𝑇1 weigh > 𝑀/3. Atthis point, the weight 𝑀1 of 𝑇1 is > 𝑀/3 but ≀ 2𝑀/3 since we could subtract anumber ≀ 𝑀/3 from it so that 𝑀1 would become ≀ 𝑀/3 (note that since 𝑀 > 3)the tree 𝑇1 is not a single node.

Now 𝑇 has been separated by a node into 𝑇1 and 𝑇2, with weights 𝑀1, 𝑀2 >

𝑀/3. Since the root of a tree has weight 0, by definition the possible weight ofthe root of 𝑇1 stays in 𝑇2 and we have 𝑀1 +𝑀2 = 𝑀. The redundancy of 𝑇 is thena weighted average of the redundancies of 𝑇1 and 𝑇2, and we can choose the oneof the two with the smaller redundancy: its redundancy is smaller than that of𝑇 . οΏ½

Theorem 2 (Tree Separator) Let 𝑇 be a weighted tree with weight 𝑀 and re-dundancy _, and let π‘˜ < 𝑀. Then 𝑇 has a subtree with weight 𝑀′ such thatπ‘˜/3 < 𝑀′ ≀ π‘˜ and redundancy ≀ _.

Proof. Let us perform the operation of Lemma 2.5 repeatedly, until we get weight≀ π‘˜. Then the weight 𝑀′ of the resulting tree is > π‘˜/3. οΏ½

Lemma 2.6 (Tree Counting) In a graph of maximum node degree π‘Ÿ the number ofweighted subtrees rooted at a given node and having π‘˜ edges is at most 2π‘Ÿ Β· (2π‘Ÿ2)π‘˜.

5

Proof. Let us number the nodes of the graph arbitrarily. Each tree of π‘˜ edges cannow be traversed in a breadth-first manner. At each non-root node of the treeof degree 𝑖 from which we continue, we make a choice out of π‘Ÿ for 𝑖 and then achoice out of π‘Ÿ βˆ’ 1 for each of the 𝑖 βˆ’ 1 outgoing edges. This is π‘Ÿπ‘– possibilities atmost. At the root, the number of outgoing edges is equal to 𝑖, so this is π‘Ÿπ‘–+1. Thetotal number of possibilities is then at most π‘Ÿ2π‘˜+1 since the sum of the degrees is2π‘˜. Each point of the tree can have weight 0 or 1, whichmultiplies the expressionby 2π‘˜+1. οΏ½

Proof of Theorem 1. Let us consider each explanation tree a weighted tree inwhich the weight is 1 in a node exactly if the node is in Noiseβ€². For each 𝑛, letE𝑛 be the set of possible explanation trees Expl for 𝑒 with weight |𝐹(Expl) | = 𝑛.First we prove the theorem for π‘š = ∞, that is Noiseβ€² = Noise. If we fix anexplanation tree Expl then all the events 𝑀 ∈ Noiseβ€² for all 𝑀 ∈ 𝐹 = 𝐹(Expl)are independent from each other. It follows that the probability of the event𝐹 βŠ‚ Noiseβ€² is at most Y𝑛. Therefore we have

P{b(𝑒) = 1} β‰€βˆžβˆ‘οΈπ‘›=1

|E𝑛 |Y𝑛.

By the Explanation Tree Lemma, each tree in E𝑛 has at most π‘˜ = 4(π‘›βˆ’1) edges.By the Tree Counting Lemma, we have

|E𝑛 | ≀ 2π‘Ÿ Β· (2π‘Ÿ2)4(π‘›βˆ’1) ,

Hence

P{b(𝑒) = 1} ≀ 2π‘ŸYβˆžβˆ‘οΈπ‘›=0

(16π‘Ÿ8Y)𝑛 = 2π‘ŸY(1 βˆ’ 16π‘Ÿ8Y)βˆ’1.

If Y is small enough to make 16π‘Ÿ8Y < 1/2 then this is < 4π‘ŸY.In the case C β‰  Cβ€² this estimate bounds only the probability of bβ€²(𝑒) =

1, |Expl(𝑒, bβ€²) | ≀ π‘š, since otherwise the events 𝑀 ∈ Noiseβ€² are not necessarilyindependent for 𝑀 ∈ 𝐹. Let us estimate the probability that an explanationExpl(𝑒, bβ€²) has π‘š or more nodes. It follows from the Tree Separator Theoremthat Expl has a subtree 𝑇 with weight 𝑛′ where π‘š/12 ≀ 𝑛′ ≀ π‘š/4, and atmost π‘š nodes. Since 𝑇 is connected, no two of its nodes can have the sameprojection. Therefore for a fixed tree of this kind, for each node of weight 1the events that they belong to Noiseβ€² are independent. Hence for each tree 𝑇of these sizes, the probability that 𝑇 is such a subtree of Expl is at most Yπ‘š/12.To get the probability that there is such a subtree we multiply by the number of

6

such subtrees. An upper bound on the number of places for the root is π‘‘π‘š2𝑁.An upper bound on the number of trees from a given root is obtained from theTree Counting Lemma. Hence

P{ |Expl(𝑒, bβ€²) | > π‘š} ≀ 2π‘Ÿπ‘‘π‘š2𝑁 Β· (2π‘Ÿ2Y1/12)π‘š.

οΏ½

3 The existence of small explanation trees

3.1 Some geometrical facts

Let us introduce some geometrical concepts.

Definition 3.1 Three linear functionals are defined as follows for 𝑣 = (π‘₯, 𝑦, 𝑧, 𝑑).

𝐿1(𝑣) = βˆ’π‘₯ βˆ’ 𝑑/3, 𝐿2(𝑣) = βˆ’π‘¦ βˆ’ 𝑑/3, 𝐿3(𝑣) = π‘₯ + 𝑦 + 2𝑑/3.

y

Notice 𝐿1(𝑣) + 𝐿2(𝑣) + 𝐿3(𝑣) = 0.

Definition 3.2 For a set 𝑆, we write

Size(𝑆) =3βˆ‘οΈπ‘–=1

maxπ‘£βˆˆπ‘†

𝐿𝑖(𝑣).

y

Notice that for a point 𝑣 we have Size({𝑣}) = 0.

Definition 3.3 A set S = {𝑆1, . . . , 𝑆𝑛} of sets is connected by intersection if thegraph 𝐺(S) is connected which we obtain by introducing an edge between 𝑆𝑖and 𝑆 𝑗 whenever 𝑆𝑖 ∩ 𝑆 𝑗 β‰  βˆ…. y

Definition 3.4 A spanned set is an object P = (𝑃, 𝑣1, 𝑣2, 𝑣3) where 𝑃 is a space-time set and 𝑣𝑖 ∈ 𝑃. The points 𝑣𝑖 are the poles of P, and 𝑃 is its base set. Wedefine Span(P) as βˆ‘3

𝑖=1 𝐿𝑖(𝑣𝑖). y

Remark 3.5 As said in the introduction, this paper is an exposition of Toom’smore general proof in [3], specialized to the case of the construction in [2].Some of the terminology is taken from [1], and differs from the one in [3].What is called a spanned set here is called a β€œpolar” in [3], and its span is calledits β€œextent” there. In our definition of 𝐿𝑖 the terms depending on 𝑑 play no role,they just make the exposition compatible with [3]. y

7

Lemma 3.6 (Spanned Set Creation) If 𝑃 is a set then there is a spanned set(𝑃, 𝑣1, 𝑣2, 𝑣3) on 𝑃 with Span(P) = Size(𝑃).

Proof. Assign 𝑣𝑖 to a point of the set 𝑃 in which 𝐿𝑖 is maximal. οΏ½

The following lemma is our main tool.

Lemma 3.7 (Spanning) Let L = (𝐿, 𝑒1, 𝑒2, 𝑒3) be a spanned set and M be a setof subsets of 𝐿 connected by intersection, whose union covers the poles of L. Thenthere is a set {M1, . . . ,M𝑛} of spanned sets whose base sets 𝑀𝑖 are elements of M,such that the following holds. Let 𝑀 β€²

𝑖be the set of poles of M𝑖.

a) Span(L) = βˆ‘π‘– Span(M𝑖).

b) The union of the sets 𝑀 ′𝑗covers the set of poles of L.

c) The system {𝑀 β€²1, . . . , 𝑀

′𝑛} is a minimal system connected by intersection (that

is none of them can be deleted) that connects the poles of L.

Proof. Let 𝑀𝑖 𝑗 ∈ M be a set containing the point 𝑒 𝑗. Let us choose 𝑒 𝑗 as the 𝑗-thpole of 𝑀𝑖 𝑗 . Now leave only those sets ofM that are needed for a minimal tree Tof the graph 𝐺(M) connecting 𝑀𝑖1 , 𝑀𝑖2 , 𝑀𝑖3 . Keep deleting points from each set(except 𝑒 𝑗 from 𝑀𝑖 𝑗) until every remaining point is necessary for a connectionamong 𝑒 𝑗. There will only be two- and three-element sets, and any two of themintersect in at most one element. Let us draw an edge between each pair ofpoints if they belong to a common set 𝑀 β€²

𝑖. This turns the union

𝑉 =⋃𝑖

𝑀 ′𝑖

into a graph. (Actually, this graph can have only two simple forms: a pointconnected via disjoint paths to the poles 𝑒𝑖 or a triangle connected via disjointpaths to these poles.) For each 𝑖 and 𝑗, there is a shortest path between 𝑀 β€²

𝑖and

𝑒 𝑗. The point of 𝑀 ′𝑖where this path leaves 𝑀 β€²

𝑖will be made the 𝑗-th pole 𝑒𝑖 𝑗 of

𝑀𝑖. For 𝑗 ∈ {1, 2, 3} we have 𝑒𝑖 𝑗 𝑗 = 𝑒 𝑗 by definition. This rule creates three polesin each 𝑀𝑖 and each point of 𝑀 β€²

𝑖is a pole.

Let us showβˆ‘π‘– Span(M𝑖) = Span(L). We can writeβˆ‘οΈ

𝑖

Span(M𝑖) =βˆ‘οΈπ‘£βˆˆπ‘‰

βˆ‘οΈπ‘–, 𝑗:𝑣=𝑒𝑖 𝑗

𝐿 𝑗(𝑣). (1)

For a point 𝑣 ∈ 𝑉, let

𝐼(𝑣) = { 𝑖 : 𝑣 ∈ 𝑀 ′𝑖 }.

8

For 𝑖 ∈ 𝐼(𝑣) let 𝐸𝑖(𝑣) be the set of those 𝑗 ∈ {1, 2, 3} for which either 𝑖 = 𝑖 𝑗 or𝑣 β‰  𝑒𝑖 𝑗. Because graph T is a tree, for each fixed 𝑣 the sets 𝐸𝑖(𝑣) are disjoint.Because of connectedness, they form a partition of the set {1, 2, 3}. Let 𝑒𝑖( 𝑗, 𝑣) =1 if 𝑗 ∈ 𝐸𝑖(𝑣) and 0 otherwise, then we have

βˆ‘π‘– 𝑒𝑖( 𝑗, 𝑣) = 1 for each 𝑗.

We can now rewrite the sum (1) as

3βˆ‘οΈπ‘—=1

βˆ‘οΈπ‘£βˆˆπ‘‰

𝐿 𝑗(𝑣) (𝑒𝑖 𝑗 ( 𝑗, 𝑣) +βˆ‘οΈπ‘£βˆˆπ‘‰

βˆ‘οΈπ‘–βˆˆπΌ (𝑣)\{𝑖 𝑗 }

(1 βˆ’ 𝑒𝑖( 𝑗, 𝑣))).

If 𝑖 = 𝑖 𝑗 ∈ 𝐼(𝑣) then by definition we have 1 βˆ’ 𝑒𝑖( 𝑗, 𝑣) = 0, therefore we cansimplify the sum as

3βˆ‘οΈπ‘—=1

βˆ‘οΈπ‘£βˆˆπ‘‰

𝐿 𝑗(𝑣)𝑒𝑖 𝑗 ( 𝑗, 𝑣) +βˆ‘οΈπ‘–βˆˆπΌ (𝑣)

3βˆ‘οΈπ‘—=1

𝐿 𝑗(𝑣) (1 βˆ’ 𝑒𝑖( 𝑗, 𝑣)).

The first term is equal to Span(L); we show that the last term is 0. Moreover, weshow 0 =

βˆ‘3𝑗=1 𝐿 𝑗(𝑣)

βˆ‘π‘–βˆˆπΌ (𝑣) (1βˆ’π‘’π‘–( 𝑗, 𝑣)) for each 𝑣. Indeed,

βˆ‘π‘–βˆˆπΌ (𝑣) (1βˆ’π‘’π‘–( 𝑗, 𝑣))

is independent of 𝑗 since it is |𝐼(𝑣) | βˆ’βˆ‘π‘– 𝑒𝑖( 𝑗, 𝑣) = |𝐼(𝑣) | βˆ’1. On the other hand,βˆ‘3

𝑗 𝐿 𝑗(𝑣) = 0 as always. οΏ½

3.2 Building an explanation tree

Let us define the excuse of a space-time point.

Definition 3.8 (Excuse) Let 𝑣 = (π‘Ž, 𝑏, 𝑒, 𝑑 + 1) with bβ€²(𝑣) = 1. If 𝑣 βˆ‰ Noiseβ€²

then there is a 𝑒′ such that bβ€²(𝑀) = 1 for at least two members 𝑀 of the set{(π‘Ž, 𝑏, 𝑒′, 𝑑), (π‘Ž + 1, 𝑏, 𝑒′, 𝑑), (π‘Ž, 𝑏 + 1, 𝑒′, 𝑑)

}.

We define the set Excuse(𝑣) as such a pair of elements 𝑀, and as the empty setin all other cases. By Lemma 3.6, we can turn Excuse(𝑣) into a spanned set,(Excuse(𝑣), 𝑀1, 𝑀2, 𝑀3) with span 1. Denote

Excuse𝑖(𝑣) = 𝑀𝑖.

Since no excuse is built from a node in Noiseβ€², let us delete all arrows leadingdown from nodes in Noiseβ€²: the new graph is denoted by Gβ€². y

The following lemma utilizes the fact that Toom’s rule β€œmakes triangles shrink”.

9

Lemma 3.9 (Excuse size) If V = (𝑉, 𝑣1, 𝑣2, 𝑣3) is a spanned set and 𝑣𝑖 are notin Noiseβ€² then we have

3βˆ‘οΈπ‘—=1

𝐿 𝑗(Excuse 𝑗(𝑣 𝑗)) = Span(V) + 1.

Proof. Let 𝑇 be the triangular prism

(0, 0, 0,βˆ’1) + {𝑒 : 𝐿1(𝑒) ≀ 0, 𝐿2(𝑒) ≀ 0, 𝐿3(𝑒) ≀ 1}.

We have Size(𝑇) = 1, and Excuse(𝑣) βŠ‚ 𝑣 + 𝑇 . Since the chosen poles turnExcuse(𝑣) into a spanned set of size 1, the function 𝐿 𝑗 achieves its maximum in𝑣 + 𝑇 on Excuse 𝑗(𝑣). We have

𝐿 𝑗(Excuse 𝑗(𝑣)) = maxπ‘’βˆˆπ‘£+𝑇

𝐿 𝑗(𝑒) = 𝐿 𝑗(𝑣) +maxπ‘’βˆˆπ‘‡

𝐿 𝑗(𝑒).

Hence we haveβˆ‘οΈπ‘—

𝐿 𝑗(Excuse 𝑗(𝑣 𝑗)) =βˆ‘οΈπ‘—

maxπ‘’βˆˆπ‘‡

𝐿 𝑗(𝑒) +βˆ‘οΈπ‘—

𝐿 𝑗(𝑣 𝑗)

= Size(𝑇) + Span(V) = 1 + Span(V).

οΏ½

Definition 3.10 (Clusters) Let us call two nodes 𝑒, 𝑣 of the above graph withTime(𝑒) = Time(𝑣) = 𝑑 equivalent if there is a path between them in Gβ€² madeof arrows, using only points π‘₯ with Time(π‘₯) ≀ 𝑑. An equivalence class will becalled a cluster. For a cluster 𝐾 we will denote by Time(𝐾) the time of its points.We will say that a fork or arrow connects two clusters if it connects some of theirnodes. y

By our definition of Gβ€², if a cluster contains a point in Noiseβ€² then it containsno other points.

Definition 3.11 (Cause graph) Within a subgraphGβ€² that is some excuse graph,for a cluster 𝐾, we define the cause graph𝐺𝐾 = (𝑉𝐾 , 𝐸𝐾) as follows. The elementsof 𝐺𝐾 are those clusters 𝑅 with Time(𝑅) = Time(𝐾) βˆ’ 1 which are reachable byan arrow from 𝐾. For 𝑅, 𝑆 ∈ 𝑉𝐾 we have {𝑅, 𝑆} ∈ 𝐸𝐾 iff for some 𝑣 ∈ 𝑅 and𝑀 ∈ 𝑆 we have Time(𝑣) = Time(𝑀) = Time(𝐾) βˆ’ 1 and {𝑣, 𝑀} ∈ Forks. y

Lemma 3.12 The cause graph 𝐺𝐾 is connected.

10

Proof. The points of 𝐾 are connected via arrows using points π‘₯ with Time(π‘₯) ≀Time(𝐾). The clusters in 𝐺𝐾 are therefore connected with each other onlythrough pairs of arrows going trough 𝐾. The tails of each such pair of arrows inTime(𝐾) βˆ’ 1 are connected by a fork. οΏ½

Definition 3.13 A spanned cluster is a spanned set that is a cluster. y

The explanation tree will be built from an intermediate object defined below.Let us fix a point 𝑒0: from now on we will work in the subgraph of the graph Gβ€²

reachable from 𝑒0 by arrows pointing backward in time. Clusters are defined inthis graph.

Figure 1: An explanation tree. The black points are noise. The squares are otherpoints of the explanation tree. Thin lines are arrows not in the explanation tree.Framed sets are clusters to which the refinement operation was applied. Thicksolid lines are arrows, thick broken lines are forks of the explanation tree.

Definition 3.14 A partial explanation tree is an object of the form (𝐢0, 𝐢1, 𝐸).Elements of 𝐢0 are spanned clusters called unprocessed nodes, elements of 𝐢1are processed nodes, these are nodes of G. The set 𝐸 is a set of arrows or forks

11

between processed nodes, between poles of the spanned clusters, and betweenprocessed nodes and poles of the spanned clusters. From this structure a graphis formed if we identify each pole of a spanned cluster with the cluster itself.This graph is required to be a tree.

The span of such a tree will be the sum Span(𝑇) of the spans of its unpro-cessed clusters and the number of its forks. y

The explanation tree will be built by applying repeatedly a β€œrefinement” op-eration to partial explanation trees.

Definition 3.15 (Refinement) Let 𝑇 be a partial explanation tree, and let thespanned cluster K = (𝐾, 𝑣1, 𝑣2, 𝑣3) be one of its unprocessed nodes, with 𝑣𝑖 notin Noiseβ€². We apply an operation whose result will be a new tree 𝑇 β€².

Consider the cause graph 𝐺𝐾 = (𝑉𝐾 , 𝐸𝐾) defined above. Let M = 𝑉𝐾 βˆͺ𝐸𝐾 , that is the family of all clusters in 𝑉𝐾 (sets of points) and all edges in 𝐺𝐾connecting them, (two-element sets). Let 𝐿 be the union of these sets, and L =

(𝐿, 𝑒1, 𝑒2, 𝑒3) a spanned set where 𝑒𝑖 = Excuse𝑖(𝑣𝑖). Lemma 3.12 implies thatthe set M is connected by intersection. Applying the Spanning Lemma 3.7 to Land M, we find a familyM1, . . . ,M𝑛 of spanned sets withβˆ‘οΈ

𝑖

Span(M𝑖) = Span(L) =βˆ‘οΈπ‘–

𝐿𝑖(𝑒𝑖).

It follows from Lemma 3.9 that the latter sum is Span(K) + 1, and that 𝑒𝑖 areamong the poles of these sets. Some of these sets are spanned clusters, oth-ers are forks connecting them, adjacent to their poles. Consider these forksagain as edges and the spanned clusters as nodes. By the minimality propertyof Lemma 3.7, they form a tree π‘ˆ (K) that connect the three poles of L.

The refinement operation takes an unprocessed node K = (𝐾, 𝑣1, 𝑣2, 𝑣3) inthe tree 𝑇 . This node is connected to other parts of the tree by some of its poles𝑣 𝑗.

The operation deletes cluster 𝐾, and keeps those poles 𝑣 𝑗 that were needed tokeep connected K to other clusters and nodes in 𝑇 . It turns these into processednodes, and adds the tree π‘ˆ (K) just built, declaring each of its spanned clustersunprocessed nodes. Then it adds the arrow from these 𝑣 𝑗 to Excuse 𝑗(𝑣 𝑗). Even ifnone of these nodes were needed for connection, it keeps 𝑣1 and adds the arrowfrom 𝑣1 to Excuse1(𝑣1). y

The refinement operation increases both the span and the number of arrowsby 1.

12

Let us build now the explanation tree. We start with a node 𝑒0 βˆ‰ Noiseβ€² withbβ€²(𝑒0) = 1 and from now on work in the subgraph of the graphG of points reach-able from 𝑒0 by arrows backward in time. Then ({𝑒0}, 𝑒0, 𝑒0, 𝑒0) is a spannedcluster, forming a one-node partial explanation tree if we declare it an unpro-cessed node. We apply the refinement operation to this partial explanation tree,as long as we can. When it cannot be applied any longer then all nodes are eitherprocessed or one-point spanned clusters belonging to Noiseβ€². See an example inFigure 1.

Proof of Lemma 2.3. What is left to prove is the estimate on the number of edgesof our explanation tree 𝑇 . Note the following:β€’ The span of 𝑇 is the number of its forks.β€’ Each point at some time 𝑑 that is not in Noiseβ€² is incident to some arrows going

to time 𝑑 βˆ’ 1.Let us contract each arrow (𝑒, 𝑣) of 𝑇 one-by-one into its bottom point 𝑣. Theedges of the resulting tree 𝑇 β€² are the forks. All the processed nodes will becontracted into the remaining one-node clusters that are elements of Noiseβ€². If𝑛 is the number of these nodes then there are 𝑛 βˆ’ 1 = Span(𝑇) forks in 𝑇 β€².

The number of arrows in 𝑇 is at most 3(𝑛 βˆ’ 1). Indeed, each introduction ofat most 3 arrows by the refinement operation was accompanied by an increaseof the span by 1. The total number of edges of 𝑇 is thus at most 4(𝑛 βˆ’ 1). οΏ½

References

[1] Piotr Berman and Janos Simon, Investigations of fault-tolerant networks ofcomputers, Proc. of the 20-th Annual ACM Symp. on the Theory of Comput-ing, 1988, pp. 66–77.

[2] Peter GΓ‘cs and John Reif, A simple three-dimensional real-time reliable cel-lular array, Journal of Computer and System Sciences 36 (1988), no. 2,125–147, Short version in STOC ’85.

[3] Andrei L. Toom, Stable and attractive trajectories in multicomponent systems,Multicomponent Systems (R. L. Dobrushin, ed.), Advances in Probability,vol. 6, Dekker, New York, 1980, Translation from Russian, pp. 549–575.

13