The Problem of Distributed Consensus

Distributed Consensus with Cellular Automata & Related Systems Research Conference

In preparation for a conference entitled “Distributed Consensus with Cellular Automata & Related Systems” that we’re organizing with NKN (= “New Kind of Network”) I decided to explore the problem of distributed consensus using methods from A New Kind of Science (yes, NKN “rhymes” with NKS) as well as from the Wolfram Physics Project.

A Simple Example

&#10005

BlockRandom[SeedRandom[77]; 
 Module[{pts = 
    RandomPointConfiguration[HardcorePointProcess[0.09, 2, 2], 
      Rectangle[{0, 0}, {40, 40}]]["Points"], clrs}, 
  clrs = Table[
    RandomChoice[{.65, .35} -> {Hue[0.15, 0.72, 1], Hue[
       0.98, 1, 0.8200000000000001]}], Length[pts]]; 
  Graphics[{EdgeForm[Gray], 
    Table[Style[Disk[pts[[n]]], clrs[[n]]], {n, 
      Range[Length[pts]]}]}]]]

Consider a collection of “nodes”, each one of two possible colors. We want to determine the majority or “consensus” color of the nodes, i.e. which color is the more common among the nodes.

One obvious method to find this “majority” color is just sequentially to visit each node, and tally up all the colors. But it’s potentially much more efficient if we can use a distributed algorithm, where we’re running computations in parallel across the various nodes.

One possible algorithm works as follows. First connect each node to some number of neighbors. For now, we’ll just pick the neighbors according to the spatial layout of the nodes:

&#10005

ConsensusState[points_, colors_, nn_ : 5] := 
 NearestNeighborGraph[points, nn, DirectedEdges -> True, 
  DistanceFunction -> EuclideanDistance, 
  VertexStyle -> MapThread[Rule, {points, colors}], 
  VertexSize -> 0.75, EdgeStyle -> \!\(\*
TagBox[
StyleBox["Gray",
ShowSpecialCharacters->False,
ShowStringCharacters->True,
NumberMarks->True],
FullForm]\)];

BlockRandom[SeedRandom[77]; 
 Module[{pts = 
    RandomPointConfiguration[HardcorePointProcess[0.09, 2, 2], 
      Rectangle[{0, 0}, {40, 40}]]["Points"], clrs},
  clrs = 
   Table[
    RandomChoice[{.65, .35} -> {Hue[0.15, 0.72, 1], Hue[
       0.98, 1, 0.8200000000000001]}], Length[pts]]; 
  ConsensusState[pts, clrs]]]

The algorithm works in a sequence of steps, at each step updating the color of each node to be whatever the “majority color” of its neighbors is. In the case shown, this procedure converges after a few steps to make all nodes have the “majority color” (which here is yellow)—or in effect “agree” on what the majority color is:

&#10005

ConsensusState[points_, colors_, nn_:5] := NearestNeighborGraph[points,nn,DirectedEdges->True, DistanceFunction->EuclideanDistance,VertexStyle -> MapThread[Rule, {points, colors}], VertexSize -> 0.75, EdgeStyle -> Gray]
NodeDependencies[points_, nn_:5]:= Table[n-> Flatten[Map[Position[points, #]&,VertexOutComponent[NearestNeighborGraph[points,nn, DirectedEdges -> True, DistanceFunction->EuclideanDistance], points[[n]], {1}]]], {n, Range[Length[points]]}]
SynchronousStepNewColors[dependencies_, colors_]:= 
Flatten[Map[With[{neighbors = Sort[Counts[Part[colors, Last[#]]], Greater]},
If[DuplicateFreeQ[Values[neighbors]],
First[Keys[neighbors]], 
colors[[First[#]]]]]&, dependencies]]
GraphicsGrid[Partition[BlockRandom[SeedRandom[77];Module[{pts = RandomPointConfiguration[HardcorePointProcess[0.09, 2, 2], Rectangle[{0, 0}, {40, 40}]]["Points"],clrslist, highlights},
clrslist=NestList[SynchronousStepNewColors[NodeDependencies[pts], #]&, Table[RandomChoice[{.65,.35}->{Yellow,Red}], Length[pts]], 7];
MapIndexed[With[{colors = #}, Graph[ConsensusState[pts, colors],ImageSize->150]] &,clrslist]
]],4],ImageSize-> 600]

This is a simple example of a distributed consensus algorithm in action. The challenge we’ll discuss here is to find the most efficient and robust such algorithms.

The Background

In any decentralized system with computers, people, databases, measuring devices or anything else one can end up with different values or results at different “nodes”. But for all sorts of reasons one often wants to agree on a single “consensus” value, that one can for example use to “make a decision and go on to the next step”.

Blockchains are one example of systems that need this kind of consensus to “finish each block”. Traditional blockchains achieve consensus through what amounts to a centralized mechanism (even though there are multiple “decentralized” copies of the blockchain that is produced).

But there are now starting to be distributed analogs of blockchains that need distributed consensus algorithms. And the main inspiration for the algorithms being developed are cellular automata (and to a lesser extent spin systems in statistical mechanics).

One issue is to make the algorithm as efficient as possible. Another is to make it as robust as possible, for example with respect to random noise—or malicious errors—introduced at or between nodes.

The amount of random noise can be thought of as something like a temperature. And at least in certain cases there can be a “phase transition” so that below a certain “temperature” there can be zero effect on the consensus output—implying robustness to a certain level of noise.

Some of what happens can be studied using methods from standard equilibrium statistical physics. But in most cases one has to take account of the time dependence or evolution of the system, leading to something like a probabilistic cellular automaton (closely related to directed percolation, dynamic spin systems, etc.).

As I’ll discuss below, in the early days of computing, there was great interest in synthesizing reliable systems out of unreliable components. And by the 1960s there was study first of neural nets and then of cellular automata with probabilistic elements. And some surprising results were obtained that showed that cellular automata could be set up that would be robust with respect to a certain nonzero level of noise.

One feature of cellular automata is that their elements are all assumed to be arranged in a definite array, and to be updated in parallel “at the same time” in a sequence of steps. For many practical applications, however, one instead wants elements that are connected in some kind of graph (that may even be dynamic), and that are in general updated asynchronously, in no particular order.

The simple example we gave above is a graph cellular automaton: the connections between elements are defined by a graph, but the updates are all done synchronously at each step. In the past, it’s been difficult to analyze the more general setup where there is no rigid notion of either space or time. But this is exactly the setup in our new Physics Project, and so there’s now the potential to use its formalism and results (as well as intuition imported from physics) to make further progress.

Deterministic Cellular Automata

To start getting some intuition for the problem of distributed consensus, let’s consider the following very simple setup. We have a line of cells, each with one of two possible colors. Then we update the colors of these cells in a sequence of steps, based on a local rule which depends on neighboring cells. This system is a one-dimensional cellular automaton—of the kind that I started studying more than 40 years ago.

We imagine that the initial condition involves a fraction p of red cells. We want all the cells to turn red if p > , and all of them to turn yellow if p < . The most obvious rule that might achieve this would just replace each cell by the majority color in its neighborhood (rule 232 in my numbering scheme):

&#10005

RulePlot[CellularAutomaton[232], 
 ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
   1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange]

Here’s what rule 232 does starting with 70% red cells in a “random configuration”:

&#10005

BlockRandom[SeedRandom[567]; 
 ArrayPlot[
  CellularAutomaton[232, RandomChoice[{.7, .3} -> {1, 0}, 120], 20], 
  Mesh -> True, 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange]]

As we can see, it manages to achieve a little “local consensus”, but ultimately it’s not successful at reaching a “global consensus” in which all cells are the same color.

And we might imagine that there’d be no rule for a 1D deterministic cellular automaton that would lead to global consensus (or be able to solve the “density classification problem” of deciding whether the density of initial red cells is above or below 50%). But it turns out that this isn’t true. And for example in 1978 the following “radius 3” rule (operating on size-7 neighborhoods) was constructed (and we’ll call it the “GKL rule”):

&#10005

{l3_, _, l1_, c_, r1_, _, r3_} :> 
 If[If[c == 0, r1 + r3, l1 + l3] + c >= 2, 1, 0]

Here’s what this rule does with 60% red cells:

&#10005

BlockRandom[SeedRandom[567]; 
 ArrayPlot[
  CellularAutomaton[{FromDigits[
     Tuples[{1, 0}, 7] /. {l3_, _, l1_, c_, r1_, _, r3_} :> 
       If[If[c == 0, r1 + r3, l1 + l3] + c >= 2, 1, 0], 2], 2, 3}, 
   RandomChoice[{.6, .4} -> {1, 0}, 300], 60], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False]]

And here’s what it does with 40% red cells:

&#10005

BlockRandom[SeedRandom[569]; 
 ArrayPlot[
  CellularAutomaton[{FromDigits[
     Tuples[{1, 0}, 7] /. {l3_, _, l1_, c_, r1_, _, r3_} :> 
       If[If[c == 0, r1 + r3, l1 + l3] + c >= 2, 1, 0], 2], 2, 3}, 
   RandomChoice[{.4, .6} -> {1, 0}, 300], 60], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False]]

In both these cases, the rule successfully achieves “global consensus”. And in fact one can prove that this rule will always do this, at least after sufficiently many steps. Here’s a plot of how the density evolves as a function of time for different initial densities:

&#10005

data=ParallelTable[If[p==.5,Nothing,MeanAround/@Transpose[Table[Mean/@CellularAutomaton[{FromDigits[Tuples[{1,0},7]/. {l3_,_,l1_,c_,r1_,_,r3_}:>If[If[c==0,r1+r3,l1+l3]+c>=2,1,0],2],2,3},RandomChoice[{p,1-p}->{1,0},5000],200],200]]],{p,.3,.7,.05}];
ListLinePlot[MapThread[Callout[#1, Row[{Style["p",Italic],"=",#2}]]&,{data, Cases[Range[.3, .7, .05], Except[0.5]]}]]

And what we see is that there’s what looks like a phase transition: for initial density p < 0.5, the final density is exactly 0, while for initial density p > 0.5, it’s instead exactly 1.

What happens precisely at p = 0.5? In a sense the cellular automaton “can’t make up its mind” and on an infinite line it generates an infinite nested sequence of domains that alternate between 0 and 1:

&#10005

BlockRandom[SeedRandom[24425]; 
 ArrayPlot[
  CellularAutomaton[{FromDigits[
     Tuples[{1, 0}, 7] /. {l3_, _, l1_, c_, r1_, _, r3_} :> 
       If[If[c == 0, r1 + r3, l1 + l3] + c >= 2, 1, 0], 2], 2, 3}, 
   RandomChoice[{.5, .5} -> {1, 0}, 1000], 500], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False]]

This nested structure is typical of what’s seen in critical phenomena in statistical physics, and in fact cellular automata like this are the very simplest examples of “true” phase transitions that I know. (Like other phase transitions, these don’t become “sharp” except in infinite systems. In typical statistical mechanics one doesn’t get phase transitions in 1D, but that’s a consequence of the assumption of microscopic reversibility, which doesn’t apply to cellular automata like this.)

So what other cellular automaton rules achieve consensus like this? There are no radius-1 rules that work. And if one searches all 232 radius-2 rules (as I did for A New Kind of Science), the best one finds are a handful of examples that achieve “approximate consensus” in the sense that most, though not all, of the cells go to the “majority value” (this is the r = 2 rule 4196304428, for p = 0.6):

&#10005

BlockRandom[SeedRandom[567]; 
 ArrayPlot[
  CellularAutomaton[{4196304428, 2, 2}, 
   RandomChoice[{.6, .4} -> {1, 0}, 500], 200], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False]]

By the way, among radius-1 rules, there is rule 184 (often used as a basic model of road traffic flow), which doesn’t achieve consensus on “overall density”, but does do so with respect to left- and right-moving stripes, here with the nested pattern generated when p = 0.5:

&#10005

BlockRandom[SeedRandom[567]; 
 ArrayPlot[CellularAutomaton[184, RandomChoice[{1, 0}, 400], 180], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False]]

What about “achieving consensus faster”? Here’s a comparison of our original GKL rule with another radius-3 rule (discovered by genetic programming methods) whose average consensus time is shorter:

&#10005

Column[BlockRandom[SeedRandom[24125]; 
    ArrayPlot[
     CellularAutomaton[#, RandomChoice[{.48, .52} -> {1, 0}, 800], 
      180], 
     ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
       1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False, 
     ImageSize -> {650, 
       Automatic}]] & /@ {{339789091192587366278221041213531750560, 2,
     3}, {339841014953466429132970652455676805280, 2, 3}}]

It’s not known in general what the “fastest” radius-3 rule is. The two rules above have the feature that they “do their job” in a fairly “simple-looking” way. But there are also rules like the following that do their job in a “more ornate” way:

&#10005

Column[BlockRandom[SeedRandom[24125]; 
    ArrayPlot[
     CellularAutomaton[#, RandomChoice[{.48, .52} -> {1, 0}, 800], 
      240], ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
       1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False, 
     ImageSize -> {650, 
       Automatic}]] & /@ {{337607298446901146542393000444934784552, 2,
     3}, {338557163619953682141694933300561896488, 2, 
    3}, {313421633154342960352882914658469183496, 2, 3}}]

Human-engineered rules (like the first one above) almost inevitably work in simpler and more “understandable” ways. But experience elsewhere (such as with optimal sorting networks) suggests that optimal rules will often be ones that don’t look simple in their behavior, and that can’t realistically be constructed by standard engineering methods, and essentially just have to be found “experimentally” by searching the computational universe of possible rules.

A notable feature of particularly the earlier rules we looked at is that they show a small number of types of very distinct “domains” with definite walls or boundaries between them. And in many ways such walls can be thought of as being like localized structures, “defects” or “particles”. But for our purposes here what tends to be important is whether these particles move around, and whether they annihilate each other to leave a uniform “consensus” final state.

In the simple majority rule it’s inevitable that there are static domain walls:

&#10005

BlockRandom[SeedRandom[567]; 
 ArrayPlot[
  CellularAutomaton[232, RandomChoice[{.6, .4} -> {1, 0}, 300], 60], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange]]

The reason is that as soon as a domain is larger than the cellular automaton neighborhood, a cell at the boundary of the domain will inevitably see a balanced number of cells of each color on the two sides of the boundary. So the cell itself will act as a “tie breaker”, and will always decide to stay its own color—thereby making the domain boundary stay as it is.

So what if we have a longer-range rule, that samples more distant cells? With range-2 (i.e. a 5-cell neighborhood) “wrong domains” with widths below 4 disappear:

&#10005

majrn[n_] := 
 FromDigits[If[Total[#] > n/2, 1, 0] & /@ Tuples[{1, 0}, n], 2]

BlockRandom[SeedRandom[567]; 
 ArrayPlot[
  CellularAutomaton[{majrn[5], 2, {{-2}, {-1}, {0}, {1}, {2}}}, 
   RandomChoice[{.6, .4} -> {1, 0}, 300], 60], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange]]

Things work a bit better if the cells being sampled aren’t adjacent, but are for example in the pattern :

&#10005

majrn[n_] := 
 FromDigits[If[Total[#] > n/2, 1, 0] & /@ Tuples[{1, 0}, n], 2]

BlockRandom[SeedRandom[567]; 
 ArrayPlot[
  CellularAutomaton[{majrn[5], 2, {{-3}, {-1}, {0}, {2}, {4}}}, 
   RandomChoice[{.6, .4} -> {1, 0}, 300], 60], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange]]

But no finite-size sampling with the pure majority rule will remove all domains. What about the GKL rule? This rule actually only samples 5 cells, but its “extremities” are at distance 3. So can we “improve” it by having it sample more distant cells?

Here’s a comparison of a few cases (the first one is the original):

&#10005

GraphicsGrid[
 Partition[
  Labeled[BlockRandom[SeedRandom[567]; 
      ArrayPlot[
       CellularAutomaton[{4177065992, 2, List /@ #}, 
        RandomChoice[{.6, .4} -> {1, 0}, 300], 100], 
       ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
         1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange, 
       ImageSize -> 300]], Style[#, 11]] & /@ {{-3, -1, 0, 1, 
     3}, {-5, -1, 0, 1, 5}, {-3, -1, 0, 1, 5}, {-3, -1, 0, 2, 4}}, 2]]

Here we’ve only discussed cellular automata with two possible colors for each cell. We could also consider rules that involve other “helper” colors that either disappear before the final state is reached, or define additional consensus states.

But Does It Always Work?

We’ve seen that there are 1D cellular automata that—at least in the examples we’ve looked at—achieve “majority consensus”. But given a particular rule, will it always reach consensus, or are there exceptions?

As a first way to get a well-defined version of that question, we can consider finite cellular automata, say with a total of n cells, and cyclic boundary conditions. There are a total of 2n possible configurations in this case, and we can represent all possible paths of evolution of the cellular automaton using a state transition graph.

Here’s the graph for the GKL rule we discussed above, for the case n = 5. Each node in the graph is colored according to whether its “red-cell fraction” is above or below . And what we see in this case is “perfect density classification” or “perfect consensus”, with all states correctly leading to all-red or all-yellow states:

&#10005

With[{n = 5}, 
 Graph[# -> 
     CellularAutomaton[{339789091192587366278221041213531750560, 2, 
        3}][#] & /@ Tuples[{1, 0}, n], 
  VertexStyle -> (# -> 
       If[Mean[#] > 1/2, Hue[0.98, 1, 0.8200000000000001], Hue[
        0.15, 0.72, 1]] & /@ Tuples[{1, 0}, n]), 
  GraphLayout -> {"VertexLayout" -> "LayeredDigraphEmbedding", 
    "PackingLayout" -> "LayeredLeft"}, EdgeStyle -> \!\(\*
TagBox[
StyleBox[
InterpretationBox[
RowBox[{"CloudGet", "[", "\"\<http://wolfr.am/VtlQl86f\>\"", "]"}],
Hue[0.75, 0, 0.35],
Editable->False,
Selectable->False],
ShowSpecialCharacters->False,
ShowStringCharacters->True,
NumberMarks->True],
FullForm]\)]]

But as soon as we look, for example, at n = 7, we immediately see a problem:

&#10005

With[{n = 7}, 
 Graph[# -> 
     CellularAutomaton[{339789091192587366278221041213531750560, 2, 
        3}][#] & /@ Tuples[{1, 0}, n], 
  VertexStyle -> (# -> 
       If[Mean[#] > 1/2, Hue[0.98, 1, 0.8200000000000001], Hue[
        0.15, 0.72, 1]] & /@ Tuples[{1, 0}, n]), VertexSize -> .4, 
  GraphLayout -> {"VertexLayout" -> "LayeredDigraphEmbedding", 
    "PackingLayout" -> "Layered"}, EdgeStyle -> \!\(\*
TagBox[
StyleBox[
InterpretationBox[
RowBox[{"CloudGet", "[", "\"\<http://wolfr.am/VtlQl86f\>\"", "]"}],
Hue[0.75, 0, 0.35],
Editable->False,
Selectable->False],
ShowSpecialCharacters->False,
ShowStringCharacters->True,
NumberMarks->True],
FullForm]\)]]

The states

&#10005

ArrayPlot[
   CellularAutomaton[{FromDigits[
      Tuples[{1, 0}, 7] /. {l3_, _, l1_, c_, r1_, _, r3_} :> 
        If[If[c == 0, r1 + r3, l1 + l3] + c >= 2, 1, 0], 2], 2, 3}, #,
     4], ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
     1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False, 
   Mesh -> True, MeshStyle -> Orange, ImageSize -> Tiny] & /@ {{0, 0, 
   1, 0, 0, 1, 1}, {0, 0, 1, 1, 0, 1, 1}}

and their cyclic variations “get stuck” and do not achieve consensus. At size 11 there’s another issue: now a few states that should have achieved “consensus 1” actually go to “consensus 0”:

&#10005

With[{size11 = 
   Graph[# -> 
       CellularAutomaton[{339789091192587366278221041213531750560, 2, 
          3}][#] & /@ Tuples[{1, 0}, 11], 
    VertexStyle -> (# -> 
         If[Mean[#] > 1/2, Hue[0.98, 1, 0.8200000000000001], Hue[
          0.15, 0.72, 1]] & /@ Tuples[{1, 0}, 11]), VertexSize -> .4, 
    EdgeStyle -> \!\(\*
TagBox[
StyleBox[
InterpretationBox[
RowBox[{"CloudGet", "[", "\"\<http://wolfr.am/VtlQl86f\>\"", "]"}],
Hue[0.75, 0, 0.35],
Editable->False,
Selectable->False],
ShowSpecialCharacters->False,
ShowStringCharacters->True,
NumberMarks->True],
FullForm]\)]}, 
 Grid[{{Show[Graph[# , AspectRatio -> 1/3], 
       ImageSize -> {300, Automatic}] &[
     WeaklyConnectedGraphComponents[size11][[1]]], 
    With[{stuck = 
       Catenate[
        EdgeList /@ Drop[WeaklyConnectedGraphComponents[size11], 2]]},
      Show[Graph[stuck, 
       VertexStyle -> (# -> 
            If[Mean[#] > 1/2, Hue[0.98, 1, 0.8200000000000001], Hue[
             0.15, 0.72, 1]] & /@ (First /@ stuck)), 
       EdgeStyle -> \!\(\*
TagBox[
StyleBox[
InterpretationBox[
RowBox[{"CloudGet", "[", "\"\<http://wolfr.am/VtlQl86f\>\"", "]"}],
Hue[0.75, 0, 0.35],
Editable->False,
Selectable->False],
ShowSpecialCharacters->False,
ShowStringCharacters->True,
NumberMarks->True],
FullForm]\), 
       GraphLayout -> {"VertexLayout" -> "LayeredDigraphEmbedding", 
         "PackingLayout" -> "NestedGrid"}], 
      ImageSize -> {Automatic, 200}]]}, {Show[
       Graph[# , AspectRatio -> 1/3], 
       ImageSize -> {300, Automatic}] &[
     WeaklyConnectedGraphComponents[size11][[2]]], SpanFromAbove}}, 
  Alignment -> {Center, Center}]]

The states that “get to the wrong consensus” here all turn out to be cyclic variations of the following

&#10005

ArrayPlot[
   CellularAutomaton[{FromDigits[
      Tuples[{1, 0}, 7] /. {l3_, _, l1_, c_, r1_, _, r3_} :> 
        If[If[c == 0, r1 + r3, l1 + l3] + c >= 2, 1, 0], 2], 2, 3}, #,
     7], ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
     1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False, 
   Mesh -> True, MeshStyle -> Orange, ImageSize -> Tiny] & /@ {{1, 0, 
   1, 1, 0, 0, 0, 1, 1, 0, 1}, {0, 1, 0, 0, 1, 1, 1, 0, 0, 1, 0}}

where in the first case there are 6 cells and 5 , yet the final state is all , and in the second case it’s the other way around.

And it turns out that there’s actually a general problem: one can prove that there’s no rule that can perfectly achieve “majority consensus” on a finite array with cyclic boundary conditions.

What about on an infinite array? Here it’s possible to achieve “perfect majority consensus” for all but a set of “special initial conditions” with measure 0. An example of such a “special initial condition” is an infinite repetition of either of the two blocks shown above. These initial conditions—instead of going to consensus—will just remain fixed with time.

If initial conditions are generated “at random”, with the value of each cell being chosen according to certain fixed probabilities, then there’s effectively zero probability of getting one of the “exception” initial conditions. And even though the “tapers” might be arbitrarily long, there’s no chance of not eventually reaching a consensus state.

But this conclusion depends on the idea that initial conditions are really generated “at random”. If, for example, they were generated by a definite program, then though the initial conditions might seem “statistically random” with respect to certain tests, it doesn’t mean that they won’t give special weight to the “exceptional” initial conditions.

Beyond One Dimension

In one dimension one can explain the fact that certain configurations “get stuck” and don’t achieve consensus by saying that in 1D effects can’t “get around each other”. But in 2D there is no such constraint.

So then what about the “pure 2D majority rule” (totalistic code 56):

&#10005

RulePlot[CellularAutomaton[<|"Dimension" -> 2, "Neighborhood" -> 5, 
   "TotalisticCode" -> 56|>], 
 ColorFunction -> (Blend[{RGBColor@Hue[0.15, 0.72, 1], 
      RGBColor@Hue[0.98, 1, 0.8200000000000001]}, #] &), 
 MeshStyle -> Orange]

Starting say from 30% 1s we again see that things get stuck:

&#10005

BlockRandom[SeedRandom[23424]; 
 ArrayPlot[#, 
    ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
      1 -> Hue[0.98, 1, 0.8200000000000001]}, ImageSize -> 120, 
    Frame -> False, Mesh -> True, MeshStyle -> Orange] & /@ 
  CellularAutomaton[<|"Dimension" -> 2, "Neighborhood" -> 5, 
    "TotalisticCode" -> 56|>, 
   RandomChoice[{.3, .7} -> {1, 0}, {30, 30}], {{0, 4}, All}]]

Here is the corresponding evolution shown in 3D, with time going down:

&#10005

BlockRandom[SeedRandom[23424]; 
 ArrayPlot3D[#, 
    ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
      1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange] &@
  CellularAutomaton[<|"Dimension" -> 2, "Neighborhood" -> 5, 
    "TotalisticCode" -> 56|>, 
   RandomChoice[{.3, .7} -> {1, 0}, {30, 30}], {{0, 10}, All}]]

But here is another rule (9-neighbor totalistic code 976):

&#10005

GraphicsGrid[
 Partition[
  BlockRandom[SeedRandom[23424]; 
   ArrayPlot[#, 
      ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
        1 -> Hue[0.98, 1, 0.8200000000000001]}, ImageSize -> 80, 
      Frame -> False] & /@ (CellularAutomaton[<|"Dimension" -> 2, 
       "Neighborhood" -> 9, "TotalisticCode" -> 976|>, 
      RandomChoice[{.45, .55} -> {1, 0}, {30, 30}], {{0, 17}, All}])],
   7]]

And now what we see is that in this case blob-like domains of the “minority color” get left over, but gradually get smaller. We can see the phenomenon in 3D:

&#10005

BlockRandom[SeedRandom[23424]; 
 ArrayPlot3D[#, 
    ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
      1 -> Hue[0.98, 1, 0.8200000000000001]}] &@(CellularAutomaton[<|
     "Dimension" -> 2, "Neighborhood" -> 9, "TotalisticCode" -> 976|>,
     RandomChoice[{.45, .55} -> {1, 0}, {50, 50}], {{0, 40}, All}])]

Looking at a spacetime slice in the center, and letting more distant cells “recede into the fog”, we see what looks like “diffusive” behavior, with domain walls in effect executing random walks that eventually annihilate:

&#10005

BlockRandom[SeedRandom[23424]; 
 ArrayPlot[
  Mean /@ Transpose[
    MapIndexed[#1*(1.6^-Last[#2]) &, 
     CellularAutomaton[<|"Dimension" -> 2, "TotalisticCode" -> 976, 
       "Neighborhood" -> 9|>, 
      RandomChoice[{.45, .55} -> {1, 0}, {220, 40}], 80], {-1}], 
    2 <-> 3], 
  ColorFunction -> (Blend[{RGBColor@Hue[0.15, 0.72, 1], 
       RGBColor@Hue[0.98, 1, 0.8200000000000001]}, #] &), 
  Frame -> False]]

The rule we just saw is close to the majority rule on a 9-cell 3×3 region, except for totals 4 and 5, which are taken to give 1 and 0 rather than 0 and 1. If we use the pure majority rule on the 3×3 region it gets stuck:

&#10005

GraphicsGrid[
 Partition[
  BlockRandom[SeedRandom[23424]; 
   ArrayPlot[#, 
      ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
        1 -> Hue[0.98, 1, 0.8200000000000001]}, ImageSize -> 80, 
      Frame -> False] & /@ (CellularAutomaton[<|"Dimension" -> 2, 
       "Neighborhood" -> 9, "TotalisticCode" -> 992|>, 
      RandomChoice[{.45, .55} -> {1, 0}, {30, 30}], {{0, 8}, All}])], 
  7]]

But it turns out to be straightforward to find 2D majority rules that do not get stuck. In fact, basically any majority rule that samples cells in an asymmetric way will work.

As an example, consider a rule that samples the following cells in each 3×3 neighborhood:

&#10005

majplot[offsets_] := 
 ArrayPlot[
  Reverse[Transpose[SparseArray[(2 + offsets) -> 1, {3, 3}]]], 
  Mesh -> True, ImageSize -> 40]

majplot[{{0, 1}, {1, 0}, {0, 0}}]

Here is the 3D evolution of this rule starting from 45% 1s:

&#10005

BlockRandom[SeedRandom[23424]; 
 ArrayPlot3D[#, 
    ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
      1 -> Hue[
       0.98, 1, 0.8200000000000001]}] &@(CellularAutomaton[{{{_, 
        a_, _}, {_, b_, c_}, {_, _, _}} :> If[a + b + c >= 2, 1, 0]}, 
    RandomChoice[{.45, .55} -> {1, 0}, {50, 50}], {{0, 80}, All}])]

And here is what a spacetime slice looks like:

&#10005

BlockRandom[SeedRandom[23424]; 
 ArrayPlot[
  Mean /@ Transpose[
    MapIndexed[#1*(1.6^-Last[#2]) &, 
     CellularAutomaton[{{{_, a_, _}, {_, b_, c_}, {_, _, _}} :> 
        If[a + b + c >= 2, 1, 0]}, 
      RandomChoice[{.45, .55} -> {1, 0}, {220, 40}], 60], {-1}], 
    2 <-> 3], 
  ColorFunction -> (Blend[{RGBColor@Hue[0.15, 0.72, 1], 
       RGBColor@Hue[0.98, 1, 0.8200000000000001]}, #] &), 
  Frame -> False]]

The behavior as a function of the initial density shows a clear transition at 50%:

&#10005

Row[ParallelTable[
  BlockRandom[SeedRandom[23424]; 
   Labeled[ArrayPlot[
     Mean /@ Transpose[
       MapIndexed[#1*(1.6^-Last[#2]) &, 
        CellularAutomaton[{{{_, a_, _}, {_, b_, c_}, {_, _, _}} :> 
           If[a + b + c >= 2, 1, 0]}, 
         RandomChoice[{p, 1 - p} -> {1, 0}, {60, 40}], 60], {-1}], 
       2 <-> 3], ImageSize -> 72, 
     ColorFunction -> (Blend[{RGBColor@Hue[0.15, 0.72, 1], 
          RGBColor@Hue[0.98, 1, 0.8200000000000001]}, #] &), 
     Frame -> False], Style[PercentForm[p], 11]]], {p, .3, .7, .05}]]

Here are results for different samplings of cells in the 3×3 neighborhood; all successfully achieve consensus:

&#10005

MajorityRule[offsets_] := 
 With[{n = Length[offsets]}, {FromDigits[
    If[# > n/2, 1, 0] & /@ Reverse[Range[0, n]], 2], {2, 1}, offsets}]

majrow[oo_] := 
 Row[BlockRandom[
   SeedRandom[23424]; {majplot[oo], 
    ArrayPlot3D[#, 
       ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
         1 -> Hue[0.98, 1, 0.8200000000000001]}, 
       ImageSize -> 220] &@(CellularAutomaton[MajorityRule[oo], 
       RandomChoice[{.45, .55} -> {1, 0}, {50, 50}], {{0, 60}, All}]),
     ArrayPlot[
     Mean /@ 
      Transpose[
       MapIndexed[#1*(1.6^-Last[#2]) &, 
        CellularAutomaton[MajorityRule[oo], 
         RandomChoice[{.45, .55} -> {1, 0}, {100, 60}], 60], {-1}], 
       2 <-> 3], 
     ColorFunction -> (Blend[{RGBColor@Hue[0.15, 0.72, 1], 
          RGBColor@Hue[0.98, 1, 0.8200000000000001]}, #] &), 
     Frame -> False, ImageSize -> 300]}], Spacer[25]]

majrow[{{1, -1}, {1, 1}, {0, 0}}]

&#10005

majrow[{{0, -1}, {1, 1}, {0, 0}}]

&#10005

majrow[{{0, -1}, {1, 1}, {-1, 0}}]

&#10005

majrow[{{0, 1}, {-1, 0}, {1, 1}, {1, 0}, {0, -1}}]

With our original 5-cell “symmetrical” neighborhood we can get very similar behavior by setting things up like the 1D GKL rule:

&#10005

{{{_, a_, _}, {b_, c_, d_}, { _, e_, _}} :> 
  If[If[c == 0, a + b, d + e] + c >= 2, 1, 0]}

&#10005

{BlockRandom[SeedRandom[23424]; 
  ArrayPlot3D[#, 
     ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
       1 -> Hue[
        0.98, 1, 0.8200000000000001]}] &@(CellularAutomaton[{{{_, 
         a_, _}, {b_, c_, d_}, { _, e_, _}} :> 
       If[If[c == 0, a + b, d + e] + c >= 2, 1, 0]}, 
     RandomChoice[{.45, .55} -> {1, 0}, {50, 50}], {{0, 80}, All}])], 
 BlockRandom[SeedRandom[23424]; 
  ArrayPlot[
   Mean /@ Transpose[
     MapIndexed[#1*(1.6^-Last[#2]) &, 
      CellularAutomaton[{{{_, a_, _}, {b_, c_, d_}, { _, e_, _}} :> 
         If[If[c == 0, a + b, d + e] + c >= 2, 1, 0]}, 
       RandomChoice[{.45, .55} -> {1, 0}, {100, 40}], 60], {-1}], 
     2 <-> 3], 
   ColorFunction -> (Blend[{RGBColor@Hue[0.15, 0.72, 1], 
        RGBColor@Hue[0.98, 1, 0.8200000000000001]}, #] &), 
   Frame -> False]]}

Cellular Automata with Noise

So far we’ve assumed that once it’s started, the evolution of the cellular automaton is entirely deterministic. But what if there’s some “noise” in the evolution—say if the values of cells are randomly flipped with some probability? Here’s what happens with the simple majority rule in 1D in this case:

&#10005

BlockRandom[SeedRandom[34646]; 
 ArrayPlot[
  NestList[MapAt[1 - # &, CellularAutomaton[232][#], 
     List /@ RandomInteger[{1, 400}, 5]] &, 
   RandomChoice[{.4, .6} -> {1, 0}, 400], 100], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False]]

What about the GKL rule? At low levels of noise the rule will typically “fight it off” and still achieve consensus:

&#10005

BlockRandom[SeedRandom[32546]; 
 ArrayPlot[
  NestList[MapAt[1 - # &, 
     CellularAutomaton[{FromDigits[
         Tuples[{1, 0}, 7] /. {l3_, _, l1_, c_, r1_, _, r3_} :> 
           If[If[c == 0, r1 + r3, l1 + l3] + c >= 2, 1, 0], 2], 2, 
        3}][#], List /@ RandomInteger[{1, 400}, 5]] &, 
   RandomChoice[{.4, .6} -> {1, 0}, 400], 120], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False]]

But eventually the level of noise becomes too great, and consensus is typically lost:

&#10005

BlockRandom[SeedRandom[32546]; 
 ArrayPlot[
  NestList[MapAt[1 - # &, 
     CellularAutomaton[{FromDigits[
         Tuples[{1, 0}, 7] /. {l3_, _, l1_, c_, r1_, _, r3_} :> 
           If[If[c == 0, r1 + r3, l1 + l3] + c >= 2, 1, 0], 2], 2, 
        3}][#], List /@ RandomInteger[{1, 400}, 30]] &, 
   RandomChoice[{.4, .6} -> {1, 0}, 400], 150], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False]]

In general, the presence of “noise” turns our system from an ordinary cellular automaton into a probabilistic cellular automaton. (And this, in turn, is equivalent to what’s sometimes called directed percolation, or to a spin system that’s taken to evolve in time with random updates according to rules with certain weightings. It’s also related to what’s sometimes been called an “interacting particle system”—in which for example boundaries of regions follow something like an array of random walks, that annihilate when they meet. )

Let’s talk in a bit more detail about the overall behavior of the GKL rule. When there’s no noise, it shows a sharp transition from final state 0 to final state 1 when the initial density goes from below 0.5 to above 0.5. But what happens when we add noise? We can summarize the result by a classic physics-style phase diagram:

&#10005

(*res2=With[{length=500,steps=1000},
BlockRandom[SeedRandom[625];
ParallelTable[Mean[Nest[MapAt[1-#&,CellularAutomaton[{\
339789091192587366278221041213531750560,2,3}][#],List/@RandomInteger[{\
1,length},Floor[length*\[Epsilon]]]]&,RandomChoice[{p,1-p}\[Rule]{1,0}\
,length],steps]],{p, 0, 1,.001}, {\[Epsilon], 0, 0.15,.001}]]];*)


res2 = Import[
   "https://www.wolframcloud.com/obj/sw-writings/DistributedConsensus/\
Data/gklnoise-01.wxf"];

ListDensityPlot[res2, DataRange -> {{ 0, 0.15}, { 0, 1}}, 
 ColorFunction -> (Blend[{RGBColor[1., 0.9279999999999999, 0.28], 
      RGBColor[0.8200000000000001, 0., 0.0984000000000001]}, #] &), 
 AspectRatio -> .7, FrameLabel -> {"noise level", "initial density"}]

This diagram shows the final density produced by the rule as a function of the initial density and the noise level. At zero noise level, there’s a fairly sharp transition as a function of initial density. (It’s not perfectly sharp because this diagram was generated by sampling a finite number of initial conditions in a finite region.) And as the noise level increases, the sharp transition seems to survive for a while—until eventually a critical noise level is reached at which it disappears.

Is there a rigorous way to analyze what’s going on? Well, not yet. And in fact for a long time it was thought that in the presence of noise any 1D system like this would necessarily be ergodic, in the sense that it would eventually visit all possible states, and certainly not evolve from different initial densities to different final states.

But in the 1980s a complicated cellular automaton was constructed that it was possible to prove would not show such behavior. The system was put together for the purpose of “doing reliable computation even in the presence of noise” and was set up using rather elaborate software-engineering-like methodology. But ultimately it was just a 1D cellular automaton, albeit with an astronomically complicated rule. And the crucial point was that up to some nonzero level of noise, the system could reliably perform a computation—such as achieving majority consensus.

But does one really need a system with such complicated underlying rules to do this? Undoubtedly not. And the situation reminds me of what happened with the problem of ordinary computation universality in cellular automata. Back in the 1950s it seemed one could achieve this with a very complicated setup, constructed in an engineering-like way. But now we know that actually even one of the very simplest conceivable 1D cellular automata—rule 110—is already computation universal. And in fact the Principle of Computational Equivalence implies that whenever we see behavior that is not obviously simple, we can expect computation universality.

Of course, it doesn’t seem like we should need to have computation universality to get distributed consensus—though the Principle of Computational Equivalence suggests that computation universality is “cheap” so might in effect “come along for free” with rules that have other necessary properties. (And by the way, this isn’t a trivial issue, because when systems are capable of universal computation there’s the potential for them to “do something one couldn’t predict”, including, for example, break out of some computer security constraint one thinks one’s defined.)

But knowing that there’s a very complicated cellular automaton that achieves distributed consensus even in the presence of noise makes one wonder what the simplest cellular automaton which can do this might be. And based on my previous experience, I would expect it’ll be very simple—like the GKL rule—though it may be very difficult to prove this.

It might be useful to make a few remarks about the whole issue of “noise”. In a sense when one says there’s “noise” in a system one’s saying that the system is “open”, and there’s something coming from “outside” it that one can’t predict. But as an “approximation” one can imagine just having some pseudorandom generator of noise—like the rule 30 cellular automaton. And then one once again has a “closed” system, to which one can immediately apply thinking based for example on the Principle of Computational Equivalence.

But what about “truly unpredictable noise”? To say that this is present is to say that there are different paths of history that the system could follow, and one doesn’t know which one will be followed in any particular case. Informed by our Physics Project, we can represent these possibilities by defining a multiway graph, in which there’s a branch whenever two different states are generated, depending on the noise.

But in addition to branches, there can also be merges in the multiway graph. And in the rather trivial case of a cellular automaton with the identity rule, allowing every possible individual cell to be flipped by noise, we get the multiway graph:

&#10005

getStateGraphics[state_] := 
  Framed[
   Style[
    ArrayPlot[{state}, 
     ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
       1 -> Hue[0.98, 1, 0.8200000000000001]}, Mesh -> True, 
     MeshStyle -> Orange], Hue[0.62, 1, 0.48]], 
   Background -> Directive[Opacity[0.2], Hue[0.62, 0.45, 0.87]], 
   FrameMargins -> {{2, 2}, {0, 0}}, RoundingRadius -> 0, 
   FrameStyle -> Directive[Opacity[0.5], Hue[0.62, 0.52, 0.82]]];

getStateRenderingFunction[] := 
  Inset[getStateGraphics[ToExpression[#2]], #1, 
    Center, {First[#3], Automatic}] &;

flipbits[list_] := 
  Table[list -> MapAt[1 - # &, list, i], {i, Length[list]}];

SimpleGraph[
 Flatten[
  NestList[Flatten[flipbits /@ (Last /@ #)] &, flipbits[{0, 0, 0}], 
   5]], VertexShapeFunction -> getStateRenderingFunction[], 
 VertexSize -> 1, EdgeStyle -> Hue[0.75, 0, 0.35], 
 PerformanceGoal -> "Quality"]

Here’s what happens if we apply the majority cellular automata rule (rule 232) after each “noise flip” (and go a total of just 2 steps):

&#10005

getStateGraphics[state_] := 
  Framed[
   Style[
    ArrayPlot[{state}, 
     ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
       1 -> Hue[0.98, 1, 0.8200000000000001]}, Mesh -> True, 
     MeshStyle -> Orange], Hue[0.62, 1, 0.48]], 
   Background -> Directive[Opacity[0.2], Hue[0.62, 0.45, 0.87]], 
   FrameMargins -> {{2, 2}, {0, 0}}, RoundingRadius -> 0, 
   FrameStyle -> Directive[Opacity[0.5], Hue[0.62, 0.52, 0.82]]];

getStateRenderingFunction[] := 
  Inset[getStateGraphics[ToExpression[#2]], #1, 
    Center, {First[#3], Automatic}] &;

flipbitsCA[ru_, list_] := 
 Table[list -> ru[MapAt[1 - # &, list, i]], {i, Length[list]}]

SimpleGraph[
 With[{g = 
    Graph[
     Flatten[
      NestList[
       Flatten[
         flipbitsCA[CellularAutomaton[232], #] & /@ (Last /@ #)] &, 
       flipbitsCA[CellularAutomaton[232], {0, 1, 1, 1, 0}], 3]]]}, 
  Graph[g, VertexShapeFunction -> getStateRenderingFunction[], 
   AspectRatio -> 1/2, VertexSize -> 1.6, 
   EdgeStyle -> Hue[0.75, 0, 0.35], PerformanceGoal -> "Quality"]]]

Going more steps, with thicker edges representing more updating events connecting the same states, we get:

&#10005

getStateGraphics[state_] := 
  Framed[
   Style[
    ArrayPlot[{state}, 
     ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
       1 -> Hue[0.98, 1, 0.8200000000000001]}, Mesh -> True, 
     MeshStyle -> Orange], Hue[0.62, 1, 0.48]], 
   Background -> Directive[Opacity[0.2], Hue[0.62, 0.45, 0.87]], 
   FrameMargins -> {{2, 2}, {0, 0}}, RoundingRadius -> 0, 
   FrameStyle -> Directive[Opacity[0.5], Hue[0.62, 0.52, 0.82]]];

getStateRenderingFunction[] := 
  Inset[getStateGraphics[ToExpression[#2]], #1, 
    Center, {First[#3], Automatic}] &;

flipbitsCA[ru_, list_] := 
 Table[list -> ru[MapAt[1 - # &, list, i]], {i, Length[list]}]

With[{g = 
   Graph[
    Flatten[
     NestList[
      Flatten[
        flipbitsCA[CellularAutomaton[232], #] & /@ (Last /@ #)] &, 
      flipbitsCA[CellularAutomaton[232], {0, 1, 1, 1, 0}], 4]]]}, 
 SimpleGraph[g, VertexShapeFunction -> getStateRenderingFunction[], 
  VertexSize -> 1.25, PerformanceGoal -> "Quality", 
  EdgeStyle -> 
   Thread[
    EdgeList[
      SimpleGraph[
       g]] -> (Directive[Hue[0.75, 0, 0.35], 
         Thickness[1.5*Counts[EdgeList[g]][#]/Length[EdgeList[g]]], 
         Arrowheads[
          7.5*Counts[EdgeList[g]][#]/Length[EdgeList[g]]]] & /@ 
       EdgeList[SimpleGraph[g]])]]]

There are several subtle limits to be taken. The size of the cellular automaton is being taken to infinity. The number of steps is also being taken to infinity (though slower). And by saying that there is only a certain “density of noise” we’re effectively taking limits on the relative weightings of edges.

To have a system which achieves consensus even in the presence of noise, only particular attractors must survive in these limits. But quite what kind of underlying rule is necessary for this we don’t know—though my guess is that it will ultimately be surprisingly simple.

Will computation universality “come along for the ride”? I don’t know, but I wouldn’t be surprised if it did. Though it’s worth understanding that the definition of computation universality in a multiway system like this is somewhat subtle. (I recently discussed it in the context of multiway Turing machines, but there are still more issues when one’s interested in probabilities and “probabilistic weightings” of different paths.)

“Purposeful Attacks” on a Cellular Automaton

We’ve just talked about the effects of “random noise” on consensus in a cellular automaton. But what about “noise” (or “errors”) that are “purposefully introduced”? Is there a pattern of some potentially small number of errors that will, for example, flip the consensus result?

One version of this question—reminiscent of adversarial examples in neural networks—is just to ask what changes need to be made to an initial condition to “flip its result”. Or, put another way: let’s say one has a system (like the GKL rule) that basically achieves correct consensus for almost all randomly chosen initial conditions. Now we ask the question of whether there is a systematic way to tweak a given randomly chosen initial condition to make it “lead to the wrong answer”. (One can think of this as a bit like asking whether one can find a nonce that will make a cryptographic hash come out in a particular way.)

Needless to say, there are many subtleties to this question. What do we mean by “random initial conditions”? Presumably a periodic state wouldn’t qualify. What kinds of “tweaks” can we make?

Something that might conceivably happen is that there’s a certain behavior with “ordinary” initial conditions, but there’s some special “seed” that—if it occurs—will produce unbounded (“tumor-style”) growth that eventually takes over the system, as in this simple example from rule 122:

&#10005

BlockRandom[SeedRandom[244234]; 
 ArrayPlot[
  CellularAutomaton[122, 
   ReplacePart[Append[Riffle[RandomInteger[1, 101], 0], 0], 140 -> 1],
    40], Frame -> False]]

If instead of just “attacking” the initial conditions one allows the possibility of, say, changing the value of a particular cell on every step, it’s easy to end up, for example, with “immovable lumps” that in effect prevent “full consensus”:

&#10005

BlockRandom[SeedRandom[3257]; 
 ArrayPlot[
  NestList[MapAt[RandomChoice[{0, 1} -> {# &, 1 - # &}], 
     CellularAutomaton[{339789091192587366278221041213531750560, 2, 
        3}][#], List /@ Range[195, 205]] &, 
   RandomChoice[{.4, .6} -> {1, 0}, 400], 120], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, Frame -> False]]

But what if one considers making changes at a small number of places in the ongoing evolution—say in effect adding a little “intelligent noise” at locations carefully computed from the actual pattern of evolution? Will the system always be able to “heal itself” from such “Byzantine tampering”, in effect “correcting few-bit errors”? Or is there some particular “vulnerability” that can be exploited to “corrupt” the final results with just a few carefully chosen changes?

One can think of the two consensus final states as being attractors, whose basins of attraction include all initial conditions above or below density . Alternatively, one can think of the cellular automaton as “solving the classification problem” of “recognizing the initial density”. And perhaps there is some way to extend the cellular automaton to a neural net with continuous weights, and then use machine learning methods to iteratively find minimal places where weights can be changed.

Graph Cellular Automata

In an ordinary cellular automaton, values are assigned to cells laid out in a definite grid. But as a generalization one can allow the cells to lie at the nodes of a graph—and then to take the neighbors on the graph to define the neighbors to be used in the rule:

&#10005

RandomGraph[{20, 40}, EdgeStyle -> Gray, 
 VertexStyle -> 
  Table[i -> (RandomInteger[] /. {0 -> Hue[0.15, 0.72, 1], 
       1 -> Hue[0.98, 1, 0.8200000000000001]}), {i, 20}], 
 VertexSize -> .5]

There is one immediate issue here. In the basic definition of a standard cellular automaton, the rule “takes its arguments” in a definite order. But if one’s dealing with an ordinary graph (as opposed to, for example, an ordered hypergraph), all one knows is what nodes are connected to a given node—with no immediate ordering defined.

And this implies constraints on the type of cellular automaton rule we can use. One can think of setting up a “geodesic ball” around each node in the graph. Successive “shells” contain nodes that are successive graph distances away from a given node. But the cellular automaton rule can’t distinguish which “position” a given cell is at within a particular shell; all it can do is count the total number of cells in each shell that have a given value.

If the graph is vertex transitive, so that the graph structure around every node in the graph is the same (as for a Cayley graph), then the cellular automaton rule can basically contain a fixed table of results that depend only on the number of cells of each value in each shell. But for a general graph the rule for the cellular automaton must allow for arbitrary numbers of cells in each shell.

And one case where this happens to be straightforward to do is for the simple majority rule. So here’s an example of this rule applied to “geodesic shells of radius 1” in the graph above:

&#10005

SynchronousStepNewColors[dependencies_, colors_] := 
 Flatten[
  Map[With[{neighbors = 
       Sort[Counts[Part[colors, Last[#]]], Greater]},
     If[DuplicateFreeQ[Values[neighbors]],
      First[Keys[neighbors]], 
      colors[[First[#]]]]] &, dependencies]]

GraphMajorityCA[graph0_, p_, steps_, radius_ : 1] := 
 BlockRandom[SeedRandom[14];
  With[{graph = IndexGraph[graph0]}, 
   With[{init = 
      Association[# -> RandomChoice[{1 - p, p} -> {1, 0}] & /@ 
        VertexList[graph]]}, 
    Module[{dependencies},
     dependencies = 
      Table[
       n -> 
        VertexOutComponent[graph, VertexList[graph][[n]], 
         radius], {n, VertexCount[graph]}];
     Graph[EdgeList[graph], 
        VertexStyle -> 
         MapThread[
          Rule[#1, 
            Switch[#2, 0, Hue[0.15, 0.72, 1], 1, Hue[
             0.98, 1, 0.8200000000000001]]] &, {Keys[init], #}],  
        EdgeStyle -> Gray, VertexSize -> .5] & /@ 
      NestList[SynchronousStepNewColors[dependencies, #] &, 
       Values[init], steps]
     ]]]]

Rotate[#, 90 Degree] & /@ (Graph[#, ImageSize -> 190] & /@ 
   GraphMajorityCA[\!\(\*
GraphicsBox[
NamespaceBox["NetworkGraphics",
DynamicModuleBox[{Typeset`graph = HoldComplete[
Graph[{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 
           19, 20}, {Null, 
SparseArray[
            Automatic, {20, 20}, 0, {
             1, {{0, 2, 5, 7, 9, 13, 20, 25, 29, 33, 36, 41, 43, 46, 
               48, 54, 59, 63, 68, 72, 80}, {{5}, {7}, {11}, {16}, {
               18}, {11}, {13}, {16}, {18}, {1}, {6}, {9}, {20}, {
               5}, {13}, {15}, {16}, {17}, {19}, {20}, {1}, {9}, {
               13}, {15}, {16}, {10}, {15}, {19}, {20}, {5}, {7}, {
               12}, {20}, {8}, {15}, {20}, {2}, {3}, {16}, {17}, {
               20}, {9}, {19}, {3}, {6}, {7}, {17}, {18}, {6}, {7}, {
               8}, {10}, {18}, {20}, {2}, {4}, {6}, {7}, {11}, {6}, {
               11}, {14}, {18}, {2}, {4}, {14}, {15}, {17}, {6}, {
               8}, {12}, {20}, {5}, {6}, {8}, {9}, {10}, {11}, {15}, {
               19}}}, Pattern}]}, {EdgeStyle -> {
GrayLevel[0.5]}, VertexSize -> {0.5}, 
            VertexStyle -> {
             18 -> Hue[0.98, 1, 0.8200000000000001], 6 -> 
              Hue[0.98, 1, 0.8200000000000001], 15 -> 
              Hue[0.15, 0.72, 1], 1 -> Hue[0.15, 0.72, 1], 20 -> 
              Hue[0.15, 0.72, 1], 9 -> 
              Hue[0.98, 1, 0.8200000000000001], 13 -> 
              Hue[0.98, 1, 0.8200000000000001], 2 -> 
              Hue[0.98, 1, 0.8200000000000001], 8 -> 
              Hue[0.15, 0.72, 1], 3 -> 
              Hue[0.98, 1, 0.8200000000000001], 4 -> 
              Hue[0.98, 1, 0.8200000000000001], 11 -> 
              Hue[0.98, 1, 0.8200000000000001], 10 -> 
              Hue[0.15, 0.72, 1], 19 -> 
              Hue[0.98, 1, 0.8200000000000001], 7 -> 
              Hue[0.15, 0.72, 1], 16 -> Hue[0.15, 0.72, 1], 17 -> 
              Hue[0.98, 1, 0.8200000000000001], 14 -> 
              Hue[0.15, 0.72, 1], 12 -> Hue[0.15, 0.72, 1], 5 -> 
              Hue[0.15, 0.72, 1]}}]]}, 
TagBox[GraphicsGroupBox[GraphicsComplexBox[CompressedData["
1:eJxTTMoPSmViYGAQAWIQ/f6kR7GgOLuDhRP7AqlYDgefsPSGL9fv2f8Lnlkc
mvfBvlZItHLWuS/2DGgg/9jtrhs7ftvvM+ptrezlcCgy9vQT9GBy2Ll97u7Y
OCaHo7IP/Cbs+mnfZbVWik2F2SGqOd7o0ar/9t8kP65/vJjL4Wi3ZX5Y6VP7
NZUzj4qe5nFo3Jj1qfrrf/v3vhsYxNawO3AEfFuR0nfZ/tTMg6XzfL7Z82q9
dLwv+cG+ZsK3ia8MhBxkHH6bp6f8sQ9p/u2R+eGffUTSNr4jU1/Ym2z+VXtG
8ZJ9ztZLRw4cZnFg2NDoE27D5JBj4p33avNHe1n24FmPsj7bvxN+fM7e86d9
ixWjlEzhJ/tz3z/kCdxkcEiQU3+SM+u5fcT+3BNHM37bP2tYmmyryOug/He9
3TWdr/a919meTv/D5rCNS/Ajo/gXewA1KJH+
"], {
{GrayLevel[0.5], Opacity[0.7], Arrowheads[0.], 
              ArrowBox[{{1, 5}, {1, 7}, {2, 11}, {2, 16}, {2, 18}, {3,
                11}, {3, 13}, {4, 16}, {4, 18}, {5, 6}, {5, 9}, {5, 
               20}, {6, 13}, {6, 15}, {6, 16}, {6, 17}, {6, 19}, {6, 
               20}, {7, 9}, {7, 13}, {7, 15}, {7, 16}, {8, 10}, {8, 
               15}, {8, 19}, {8, 20}, {9, 12}, {9, 20}, {10, 15}, {10,
                20}, {11, 16}, {11, 17}, {11, 20}, {12, 19}, {14, 
               17}, {14, 18}, {15, 18}, {15, 20}, {17, 18}, {19, 20}},
                0.09587857253283466]}, 
{Hue[0.6, 0.2, 0.8], EdgeForm[{GrayLevel[0], Opacity[0.7]}], 
{Hue[0.15, 0.72, 1], DiskBox[1, 0.09587857253283466]}, 
{Hue[0.98, 1, 0.8200000000000001], DiskBox[2, 0.09587857253283466]}, 
{Hue[0.98, 1, 0.8200000000000001], DiskBox[3, 0.09587857253283466]}, 
{Hue[0.98, 1, 0.8200000000000001], DiskBox[4, 0.09587857253283466]}, 
{Hue[0.15, 0.72, 1], DiskBox[5, 0.09587857253283466]}, 
{Hue[0.98, 1, 0.8200000000000001], DiskBox[6, 0.09587857253283466]}, 
{Hue[0.15, 0.72, 1], DiskBox[7, 0.09587857253283466]}, 
{Hue[0.15, 0.72, 1], DiskBox[8, 0.09587857253283466]}, 
{Hue[0.98, 1, 0.8200000000000001], DiskBox[9, 0.09587857253283466]}, 
{Hue[0.15, 0.72, 1], DiskBox[10, 0.09587857253283466]}, 
{Hue[0.98, 1, 0.8200000000000001], 
               DiskBox[11, 0.09587857253283466]}, 
{Hue[0.15, 0.72, 1], DiskBox[12, 0.09587857253283466]}, 
{Hue[0.98, 1, 0.8200000000000001], 
               DiskBox[13, 0.09587857253283466]}, 
{Hue[0.15, 0.72, 1], DiskBox[14, 0.09587857253283466]}, 
{Hue[0.15, 0.72, 1], DiskBox[15, 0.09587857253283466]}, 
{Hue[0.15, 0.72, 1], DiskBox[16, 0.09587857253283466]}, 
{Hue[0.98, 1, 0.8200000000000001], 
               DiskBox[17, 0.09587857253283466]}, 
{Hue[0.98, 1, 0.8200000000000001], 
               DiskBox[18, 0.09587857253283466]}, 
{Hue[0.98, 1, 0.8200000000000001], 
               DiskBox[19, 0.09587857253283466]}, 
{Hue[0.15, 0.72, 1], DiskBox[20, 0.09587857253283466]}}}]],
MouseAppearanceTag["NetworkGraphics"]],
AllowKernelInitialization->False]],
DefaultBaseStyle->{
        "NetworkGraphics", FrontEnd`GraphicsHighlightColor -> 
         Hue[0.8, 1., 0.6]},
FormatType->TraditionalForm,
FrameTicks->None]\), .3, 3])

So what globally happens with this rule? For the graph

&#10005

Graph[ResourceFunction["TorusGraph"][{3, 3}], VertexStyle -> White, 
 VertexSize -> .2, EdgeStyle -> \!\(\*
TagBox[
StyleBox[
InterpretationBox[
RowBox[{"CloudGet", "[", "\"\<http://wolfr.am/VtlQl86f\>\"", "]"}],
Hue[0.75, 0, 0.35],
Editable->False,
Selectable->False],
ShowSpecialCharacters->False,
ShowStringCharacters->True,
NumberMarks->True],
FullForm]\)]

here’s what the state transition graph looks like when the rule is applied, whereas above nodes are colored according to which value is in the majority:

&#10005

SynchronousStepNewColors[dependencies_, colors_] := 
 Flatten[
  Map[With[{neighbors = 
       Sort[Counts[Part[colors, Last[#]]], Greater]},
     If[DuplicateFreeQ[Values[neighbors]],
      First[Keys[neighbors]], 
      colors[[First[#]]]]] &, dependencies]]

GraphMajorityCASTG[graph0_, radius_ : 1] :=
 
 With[{graph = IndexGraph[graph0]},
  Module[{dependencies},
   dependencies = 
    Table[
     n -> 
      VertexOutComponent[graph, VertexList[graph][[n]], radius], {n, 
      VertexCount[graph]}];
   # -> SynchronousStepNewColors[dependencies, #] & /@ 
    Tuples[{1, 0}, VertexCount[graph]]
   ]]

With[{g = 
   GraphMajorityCASTG[ResourceFunction["TorusGraph"][{3, 3}], 1]}, 
 Graph[g, 
  VertexStyle -> (# -> 
       If[Mean[#] > 1/2, Hue[0.98, 1, 0.8200000000000001], Hue[
        0.15, 0.72, 1]] & /@ VertexList[g]), EdgeStyle -> \!\(\*
TagBox[
StyleBox[
InterpretationBox[
ButtonBox[
TooltipBox[
GraphicsBox[{
{GrayLevel[0], RectangleBox[{0, 0}]}, 
{GrayLevel[0], RectangleBox[{1, -1}]}, 
{Hue[0.75, 0, 0.35], RectangleBox[{0, -1}, {2, 1}]}},
AspectRatio->1,
DefaultBaseStyle->"ColorSwatchGraphics",
Frame->True,
FrameStyle->Hue[0., 0., 0.23333333333333334`],
FrameTicks->None,
ImageSize->{Automatic, 12.879},
PlotRangePadding->None],
StyleBox[
RowBox[{"Hue", "[", 
RowBox[{"0.75`", ",", "0", ",", "0.35`"}], "]"}], NumberMarks -> 
           False]],
Appearance->None,
BaseStyle->{},
BaselinePosition->Baseline,
ButtonFunction:>With[{Typeset`box$ = EvaluationBox[]}, 
If[
Not[
AbsoluteCurrentValue["Deployed"]], 
            SelectionMove[Typeset`box$, All, Expression]; 
            FrontEnd`Private`$ColorSelectorInitialAlpha = 1; 
            FrontEnd`Private`$ColorSelectorInitialColor = 
             Hue[0.75, 0, 0.35]; 
            FrontEnd`Private`$ColorSelectorUseMakeBoxes = True; 
            MathLink`CallFrontEnd[
FrontEnd`AttachCell[Typeset`box$, 
FrontEndResource["HueColorValueSelector"], {0, {Left, Bottom}}, {
               Left, Top}, 
               "ClosingActions" -> {
                "SelectionDeparture", "ParentChanged", 
                 "EvaluatorQuit"}]]]],
DefaultBaseStyle->{},
Evaluator->Automatic,
Method->"Preemptive"],
Hue[0.75, 0, 0.35],
Editable->False,
Selectable->False],
ShowSpecialCharacters->False,
ShowStringCharacters->True,
NumberMarks->True],
FullForm]\)]]

No doubt there are general results that can be proved about the “success rate” for the majority cellular automaton rule on graphs. But experiments tend to suggest that the rule does much better on graphs than it does on regular arrays.

Presumably there are graph-theoretic features of the underlying graph that affect the performance. Higher connectivity presumably helps, not least because it tends to avoid “bridges” where colors can be balanced on “all sides” of a particular node. Lack of symmetry also probably tends to inhibit the appearance of cycles. And in general one can think of the “spreading of consensus” as being at least somewhat like a percolation process.

For ordinary cellular automata, it’s clear what it means to ask about the “infinite-size limit”. But for graphs it’s only immediately clear when one’s dealing with some readily extensible family of graphs (like grids or torus graphs or various Cayley graphs). And for arbitrary “random graphs” the results will probably depend significantly on the graph distribution used.

In our Physics Project we have been concerned with large graphs that can be “grown” according to local rules. We expect such graphs often to show certain “statistical regularities” in the “continuum limit”. In our project, we characterize the structure of these graphs by looking for example at the growth rates of volumes of geodesic balls, and identifying things like dimension and curvature from them. So what will happen if we run a majority rule cellular automaton on a large graph that has certain “geometrical” properties?

Essentially we need to ask what the “continuum limit” of the majority rule cellular automaton is. The grids used in ordinary cellular automata are too special for them to achieve any kind of generic such limit. But on “geometrizable” graphs, it’s more reasonable to expect such a continuum limit.

We can try considering a 1D example. The initial values are then just given by a continuous function of position:

&#10005

With[{if = (SeedRandom[69774]; 
    Interpolation[RandomReal[{-10, 10}, 10], 
     InterpolationOrder -> 6])}, 
 Plot[if[x], {x, 1, 10}, Filling -> Axis, 
  ColorFunctionScaling -> False, 
  ColorFunction -> (If[#2 > 0, Hue[0.98, 1, 0.8200000000000001], Hue[
      0.15, 0.72, 1]] &), Frame -> True, AspectRatio -> 1/3, 
  FrameTicks -> None]]

The “consensus result” in this case should be a constant function whose value is effectively the sign of the integral of this function. But what kind of integro-differential-algebraic equation can reproduce the time evolution isn’t clear.

Going back to majority cellular automata on graphs, it’s worth noting that if the edges of the graph can be assigned both positive and negative weights, then the system is effectively like a synchronous version of a neural net. The analog of this on a regular grid (which is structurally like a spin glass) is then known to show various features of computational irreducibility.

Instead of thinking about underlying graphs with weighted edges, we can consider cellular automaton rules that don’t just involve pure nearest-neighbor majority. For example, we could consider rules that have different weights for geodesic shells of different radii (much like the activation-inhibition cellular automata used to model things like biological pigmentation patterns).

But is it really true that only totalistic rules based on geodesic shells can be used for graph cellular automata? To do more than this requires in effect defining “directions” in the graph. But our Physics Project has provided a variety of mechanisms for doing just this—and this in principle for setting up non-totalistic graph cellular automata.

Asynchronous Updating

An important feature of cellular automata is the assumption that all cell values are updated “simultaneously” or “synchronously” in a definite series of steps. But in practical examples of distributed consensus one’s often dealing with values that are instead updated asynchronously. In effect, what one wants is to “break down” the synchronous updating of an ordinary cellular automaton into a sequence of updates of individual cells, with the order of these updates not being specified by any particular rule.

So an obvious first question is: “Does it actually matter in what order these individual updates are done?” And sometimes it doesn’t. Here’s an example. Instead of an ordinary cellular automaton, consider a block cellular automaton in which at each step pairs of values adjacent cells are replaced by new values:

&#10005

RulePlot[SubstitutionSystem[{{0, 0} -> {0, 0}, {1, 0} -> {0, 1}, {0, 
     1} -> {0, 1}, {1, 1} -> {1, 1}}], 
 ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
   1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange]

For synchronous updating, we might apply these rules in a systematic “brick-like” pattern. But to study asynchronous updating, let’s just apply these rules in random positions at each step. Here are a few examples of what can happen:

&#10005

BlockRandom[SeedRandom[235234]; 
 With[{i = RandomInteger[1, 30]}, 
  Table[ArrayPlot[
    NestList[
     First[
       Sort[{Flatten[
          MapAt[Sort, Partition[#, 2], 
           Union[List /@ RandomInteger[{1, Length[#]/2}, 20]]]], 
         RotateRight[
          Flatten[
           MapAt[Sort, Partition[RotateLeft[#], 2], 
            Union[
             List /@ RandomInteger[{1, Length[#]/2}, 20]]]]]}]] &, i, 
     63], ImageSize -> {150, Automatic}, 
    ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
      1 -> Hue[0.98, 1, 0.8200000000000001]}, Mesh -> True, 
    MeshStyle -> Orange], 4]]]

And the notable feature is that even though the specific evolution in each case is different, the final result is always the same—in this case just corresponding to having all sorted before .

It doesn’t work this way for all rules, but for this rule, regardless of the intermediate states that are produced, there is always eventual consistency in the final result.

As it turns out, this kind of phenomenon is crucial in our Physics Project. And indeed the generalization that we call “causal invariance” is what leads, for example, to relativistic invariance. But from the formalism of the Physics Project we also get a general approach to asynchronous evolution: trace all possible “update histories” using a multiway graph.

Here is the multiway graph for the simple sorting rule above:

&#10005

getStateGraphics[state_] := 
  Framed[
   Style[
    ArrayPlot[{state}, 
     ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
       1 -> Hue[0.98, 1, 0.8200000000000001]}, Mesh -> True, 
     MeshStyle -> Orange], Hue[0.62, 1, 0.48]], 
   Background -> Directive[Opacity[0.2], Hue[0.62, 0.45, 0.87]], 
   FrameMargins -> {{2, 2}, {0, 0}}, RoundingRadius -> 0, 
   FrameStyle -> Directive[Opacity[0.5], Hue[0.62, 0.52, 0.82]]];

getStateRenderingFunction[] := 
  Inset[getStateGraphics[ToExpression[#2]], #1, 
    Center, {First[#3], Automatic}] &;

ResourceFunction[
  "MultiwaySystem"][{{1, 0} -> {0, 1}}, {{1, 0, 1, 1, 0, 0, 
   1}}, 8, "StatesGraph", 
 "StateRenderingFunction" -> getStateRenderingFunction[], 
 VertexSize -> 1.75, PerformanceGoal -> "Quality"]

As expected, all possible update histories eventually converge to the same final state.

So what about the majority rule cellular automaton? It doesn’t always show eventual consistency, as this example shows:

&#10005

randomOrderCAFunc[ruleRadius_, ruleNumber_, init_, eventCount_, func_] :=
  func[evaluateSingleEvent[ruleRadius, ruleNumber, #] &, init, eventCount];

RandomOrderCA[args___] := randomOrderCAFunc[args, Nest];

RandomOrderCAList[args___] := randomOrderCAFunc[args, NestList];

findLastEvent[eventNumber_, position_, eventsIndex_] := Module[{},
  Max[Select[Lookup[eventsIndex, position, {-Infinity}], # < eventNumber &]]
];

getCausalLinks[eventNumber_, position_, eventsIndex_, size_, ruleRadius_] := Module[{},
  DeleteCases[
    findLastEvent[eventNumber, #, eventsIndex] -> eventNumber & /@
      Mod[Range[position - ruleRadius, position + ruleRadius], size, 1],
    -Infinity -> _]
];

RandomOrderCACausalGraph[ruleRadius_, ruleNumber_, init_, eventCount_, opts___] := Module[{eventsIndex, eventPositions},
  eventsIndex = KeySort @ Map[
    Last,
    GroupBy[
      Thread[
        (eventPositions = Reap[RandomOrderCA[ruleRadius, ruleNumber, init, eventCount]][[2, 1]]) ->
          Range[eventCount]],
      First],
    {2}];
  Graph[
    Range[eventCount],
    Catenate[getCausalLinks[#, eventPositions[[#]], eventsIndex, Length[init], ruleRadius] & /@ Range[eventCount]],
    EdgeStyle -> ResourceFunction["WolframPhysicsProjectStyleData"]["CausalGraph", "EdgeStyle"],
    VertexStyle -> ResourceFunction["WolframPhysicsProjectStyleData"]["CausalGraph", "VertexStyle"],
    opts]
]

randomInit[size_, onesFraction_] := RandomChoice[{1 - onesFraction, onesFraction} -> {0, 1}, size];

evaluateSingleEvent[ruleRadius_, ruleNumber_, init_] :=
  evaluateEventAtPlace[ruleRadius, ruleNumber, init, Sow[RandomInteger[{1, Length[init]}]]];

evaluateEventAtPlace[ruleRadius_, ruleNumber_, init_, center_] := Module[{input, newCenterValue},
  input = cyclicTake[init, Range[center - ruleRadius, center + ruleRadius]];
  newCenterValue = CellularAutomaton[{ruleNumber, 2, ruleRadius}, input][[ruleRadius + 1]];
  ReplacePart[init, center -> newCenterValue]
];

cyclicTake[list_, indices_] := cyclicPart[list, #] & /@ indices;

cyclicPart[list_, index_] := list[[Mod[index, Length[list], 1]]];

getStateGraphics[state_] := 
  Framed[
   Style[
    ArrayPlot[{state}, 
     ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
       1 -> Hue[0.98, 1, 0.8200000000000001]}, Mesh -> True, 
     MeshStyle -> Orange], Hue[0.62, 1, 0.48]], 
   Background -> Directive[Opacity[0.2], Hue[0.62, 0.45, 0.87]], 
   FrameMargins -> {{2, 2}, {0, 0}}, RoundingRadius -> 0, 
   FrameStyle -> Directive[Opacity[0.5], Hue[0.62, 0.52, 0.82]]];

getStateRenderingFunction[] := 
  Inset[getStateGraphics[List @@ #2], #1, 
    Center, {First[#3], Automatic}] &;

SeedRandom[643767 + 5]; SimpleGraph[
 NestGraph[
  Table[state @@ evaluateEventAtPlace[1, 232, List @@ #, c], {c, 1, 
     Length[#]}] &, state @@ randomInit[9, 0.7], 20, 
  VertexShapeFunction -> getStateRenderingFunction[],  
  PerformanceGoal -> "Quality", VertexSize -> 1, 
  ResourceFunction["WolframPhysicsProjectStyleData"]["StatesGraph", 
   "Options"]]]

So this means that in general it matters in what order asynchronous updates are done, or, in effect, what “path of history” is taken. But to get a sense of typical behavior, we can consider random sequences of updates. Here’s an example of what one gets, doing one update per step:

&#10005

caEvaluateCompiled = 
  FunctionCompile[
   Function[{Typed[rule, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[rad, "MachineInteger"], 
     Typed[init, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[eventCount, "Integer64"]}, 
    Module[{state, position, substate, rulePart, newCellValue},
     
     state = init;
     Do[
      position = RandomInteger[{1, Length[state]}];
      substate = 
       state[[
        Mod[#, Length[state], 1] & /@ 
         Range[position - rad, position + rad]]];
      rulePart = Fold[2 #1 + #2 &, 0, substate] + 1;
      newCellValue = rule[[rulePart]];
      state[[position]] = newCellValue;
      , eventCount];
     state
     ]]];

Should be compiled for all machine targets:

caEvaluateCompiled = CompiledCodeFunction[
Association["Signature" -> TypeSpecifier[{
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64", 
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64"} -> 
      "PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]]], "Input" -> Compile`Program[{}, 
Function[{
Typed[rule, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[rad, "MachineInteger"], 
Typed[init, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[eventCount, "Integer64"]}, 
Module[{state, position, substate, rulePart, newCellValue}, state = init; 
        Do[position = RandomInteger[{1, 
Length[state]}]; substate = Part[state, 
Map[Mod[#, 
Length[state], 1]& , 
Range[position - rad, position + rad]]]; 
          rulePart = Fold[2 # + #2& , 0, substate] + 1; 
          newCellValue = Part[rule, rulePart]; 
          Part[state, position] = newCellValue; Null, eventCount]; state]]], 
    "ErrorFunction" -> Automatic, "InitializationName" -> 
    "Initialization_667648a7_ecf6_4a9d_97c7_f8cc07f5743e", "ExpressionName" -> 
    "Main_ExprInvocation", "CName" -> "Main_CInvocation", "FunctionName" -> 
    "Main", "SystemID" -> "MacOSX-x86-64", "VersionData" -> {12.3, 0, 0}, 
    "CompiledIR" -> Association["MacOSX-x86-64" -> ByteArray[CompressedData["
1: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
"]], "Linux-x86-64" -> 
      ByteArray[CompressedData["
1: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
jHZ0I2GDKAO6wzJm5c3CO9CEgTgTCgm6C3nCnOOQjlyEprMncs1EQIQxOM89
6UCEsKdShGF4hQhX/sDxDdXzMzETBOJuL6tPh2w8NJ1ldnsFmmenHXzQIEHG
+CbG6tC5eRtWZB+h3cZ41acLsIDGPcHROYbzjwICLIjYlzk9Hkl43z3BvBwj
vaNGekG1XnVzM2uO0GB9kkCy4NUKnumSmHkgynIoYjvifkG95aPbwV/Z2mhg
eXCMesmb7pWp+BGCcCFebMlf2EAnl1Kg6/hSUFm0YxeGlYA2rlj8521QYcDF
nEegiq450ayK1McnldnjV1VF4Fax4l9qsOkWWIEUvuZUHoj6Vm9c0ZD8vTp+
jtVdS75VXC2v+MBZxJvKVZVx7LTSm15o5/1hKVzEc0NX3VYvyfvhuzNg3o7v
qWK7FQSB9yLKdopVquu8HQ+pbl7z8l1BuPGbp4xjSViFN5eserPgOrmHqSmx
IxIE9YsoG2761VLqLTGOSAWyaENFNP8s4GAY5eCdkgOzRZgrDTbZQieQz2gk
k6csztsYQgFYJ0HWCRy9K6Ml58C6B+g6kZpiXfwidmGDzWm3JbJ1z1mc0aeN
2rmgIotgLihCqGQtUFJ5UUnl8Krur66T/xbLqCQtodCqayWW7CVxtX75K68g
iftXNWXi5vwS9JWe978EWD17WGAP8zYKEnJfAB/aSMTOOuGca8bJ3CgIAicI
l+PChNm0S97dDMM38NywEGw6VkyLJCWpkEP1OiWGAioOC2z6jXfo8W7Dl5qk
9Nc8FnAPSCNUr5thBEohsgo1OS/jcsi6jHrgD+LZwB8aYMQfA9cr/TFX9VnI
8UCjvxm5BAyLco24KSl0/+qDYC2eugcuyrXO2CjYk3eQxayfTQLLC3nQkiBe
asZWxL/FKgr/DtyixHda9V3I8R6jtwzHX7ZwyhkbVGxzQ5ozU0gXnEDF9oYv
jntx0qye+Jb0DBvLD8RhyahDPVRRONTbE1BwqN5HibGskkvJU7my48lPpoTI
rW8ygBPytiqdsFO5xuSUGKyZZMxFWMbnpMLM3/pxrjjsCbM3mXw115fEBcZW
Il1A/WOUef42BbE/F6t+G3qcPdfbBBU/RhW7im6ba0ZS3YnDSrq3wWCvJCEP
CtNQK5iVztIA3OaZKpWlp4rdRV+b5whnb8R+T7sEp+fwJnqwKYApgSZK4Ccl
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
ZDS1t/0sIuq/915sXAwCDKkvyvjy8JM8GazsaxKSPSNOVQ+eap2qXK6NLLy0
62bhLuep4U8XrD5szA7HzXVvm+Pl92rTEDDU1YtZJ5GoLG1KpreOVlcltiBV
wc9DZxzeYy4Axu7HG18efXKW+PP0FGR8Of5J/X8AtX+YQbb5LXtPrGr4l9ip
+vuVf4gPiOo+Ij6X37nG19KQntHvu42v7UF7ZYnG1/5Aj15MNnYqCVeYxOmm
KaDSXp68Ghgv7Z8qjbKBUbbpQ9z2F1NPChc5wmREgSf7+k/2DZ8cGqq4OFrx
+3gF4PDxSKxC3aP6V4eXXATFxO5dq4DN9J8dDW+RdwboX+q04c99/SPkS4px
0/uJ31MKOqPG5wKDfRj/6QPV2Om00mDHX6dtre6abrB7913du2xqV4fLXUjG
A72P29459eRCljUs1xX39OOpikLfeOA5otaBdq8ji8W/gULE8aJeturuk3uG
hro+5LRoNKOe92JvxevwW693Vb2OGr86PEmR5UhuZyl329SuiYm58lDWxJ2s
jjd2OiMjzBlsWZV2pvoOpBAjF4ix4sLh2Bmx8O+UAqwsUT2PnpaompFEMxEp
dQl6g172KgS9IgR2K7LXJWYlGTn/b02YHH3Xj57L+g8kBAwkfe4qyzpWBtXt
z7xr9WFcY1FvS1yrQdPqls0R5V+leD9Aq3iHFGnitqmJ1AuYx8j40fjW1vEz
reMdU++5AZ6y06zDIx/O9FV30J+KkWtKvXHgnMEDOY/ouFU1LvqTYCkrzxef
7QqTXWpK6JQ6Hpkq6dj8Csqw+3Lyu67LJYaP0UavVCRH9Tl+7qrMOq2qONMu
K5z6mLJed/rJfWXL8temO+hi9eXfrZglmZjqs6xZZD8rkJJzZCrIlkqg9n/8
x/AcVuBK3qSDaVPA38s747UZPiHImUDMZs3ML2cCyaZo6R9b+YF63TBvegWx
s91rtd0Xr/x9qLo0+aYuMnn3zVFwhoL2toxSnc2Ap/6x63RZD480zc0OVNdB
uxAt/723ddetql23hqYqqoaiFPicq8enXqQ86zRAa9WoT2UgDAdia6JOz28d
glB7dB7i7u2a+lT1B08kT5yxZyajjK3XIRdwbjWF01Fahqo+5EhFikxZNTBZ
vcsNKcl/S96zvAviIgTsrLo4cLZuwKh1YNvvU5uuLvpaEZra66ZAUf4dubxt
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
95quYlkc+H/bqQ28
"]]], "orcInstance" -> 140373448223744, "orcModuleId" -> 1, 
    "targetMachineId" -> 140373447970304], 5481287872, 5481287664, 5481287744,
    5481283584, 
   "{\"PackedArray\"[\"Integer64\", TypeFramework`TypeLiteral[1, \
\"Integer64\"]], \"Integer64\", \"PackedArray\"[\"Integer64\", \
TypeFramework`TypeLiteral[1, \"Integer64\"]], \"Integer64\"} -> \"PackedArray\
\"[\"Integer64\", TypeFramework`TypeLiteral[1, \"Integer64\"]]"];

RandomAsynchronousCellularAutomaton[{rn_, 2, r_}, init_, {t_, ct_}] := 
 NestList[
  caEvaluateCompiled[Reverse[IntegerDigits[rn, 2, 2^(2 r + 1)]], r, #, ct] &, 
  init, t]

BlockRandom[SeedRandom[567]; 
 ArrayPlot[
  RandomAsynchronousCellularAutomaton[{232, 2, 1}, 
   RandomChoice[{.7, .3} -> {1, 0}, 400], {100, 1}], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange, 
  Frame -> None]]

And here’s the corresponding result if we do 20 updates per step:

&#10005

caEvaluateCompiled = 
  FunctionCompile[
   Function[{Typed[rule, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[rad, "MachineInteger"], 
     Typed[init, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[eventCount, "Integer64"]}, 
    Module[{state, position, substate, rulePart, newCellValue},
     
     state = init;
     Do[
      position = RandomInteger[{1, Length[state]}];
      substate = 
       state[[
        Mod[#, Length[state], 1] & /@ 
         Range[position - rad, position + rad]]];
      rulePart = Fold[2 #1 + #2 &, 0, substate] + 1;
      newCellValue = rule[[rulePart]];
      state[[position]] = newCellValue;
      , eventCount];
     state
     ]]];

Should be compiled for all machine targets:

caEvaluateCompiled = CompiledCodeFunction[
Association["Signature" -> TypeSpecifier[{
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64", 
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64"} -> 
      "PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]]], "Input" -> Compile`Program[{}, 
Function[{
Typed[rule, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[rad, "MachineInteger"], 
Typed[init, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[eventCount, "Integer64"]}, 
Module[{state, position, substate, rulePart, newCellValue}, state = init; 
        Do[position = RandomInteger[{1, 
Length[state]}]; substate = Part[state, 
Map[Mod[#, 
Length[state], 1]& , 
Range[position - rad, position + rad]]]; 
          rulePart = Fold[2 # + #2& , 0, substate] + 1; 
          newCellValue = Part[rule, rulePart]; 
          Part[state, position] = newCellValue; Null, eventCount]; state]]], 
    "ErrorFunction" -> Automatic, "InitializationName" -> 
    "Initialization_667648a7_ecf6_4a9d_97c7_f8cc07f5743e", "ExpressionName" -> 
    "Main_ExprInvocation", "CName" -> "Main_CInvocation", "FunctionName" -> 
    "Main", "SystemID" -> "MacOSX-x86-64", "VersionData" -> {12.3, 0, 0}, 
    "CompiledIR" -> Association["MacOSX-x86-64" -> ByteArray[CompressedData["
1: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
"]], "Linux-x86-64" -> 
      ByteArray[CompressedData["
1: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
jHZ0I2GDKAO6wzJm5c3CO9CEgTgTCgm6C3nCnOOQjlyEprMncs1EQIQxOM89
6UCEsKdShGF4hQhX/sDxDdXzMzETBOJuL6tPh2w8NJ1ldnsFmmenHXzQIEHG
+CbG6tC5eRtWZB+h3cZ41acLsIDGPcHROYbzjwICLIjYlzk9Hkl43z3BvBwj
vaNGekG1XnVzM2uO0GB9kkCy4NUKnumSmHkgynIoYjvifkG95aPbwV/Z2mhg
eXCMesmb7pWp+BGCcCFebMlf2EAnl1Kg6/hSUFm0YxeGlYA2rlj8521QYcDF
nEegiq450ayK1McnldnjV1VF4Fax4l9qsOkWWIEUvuZUHoj6Vm9c0ZD8vTp+
jtVdS75VXC2v+MBZxJvKVZVx7LTSm15o5/1hKVzEc0NX3VYvyfvhuzNg3o7v
qWK7FQSB9yLKdopVquu8HQ+pbl7z8l1BuPGbp4xjSViFN5eserPgOrmHqSmx
IxIE9YsoG2761VLqLTGOSAWyaENFNP8s4GAY5eCdkgOzRZgrDTbZQieQz2gk
k6csztsYQgFYJ0HWCRy9K6Ml58C6B+g6kZpiXfwidmGDzWm3JbJ1z1mc0aeN
2rmgIotgLihCqGQtUFJ5UUnl8Krur66T/xbLqCQtodCqayWW7CVxtX75K68g
iftXNWXi5vwS9JWe978EWD17WGAP8zYKEnJfAB/aSMTOOuGca8bJ3CgIAicI
l+PChNm0S97dDMM38NywEGw6VkyLJCWpkEP1OiWGAioOC2z6jXfo8W7Dl5qk
9Nc8FnAPSCNUr5thBEohsgo1OS/jcsi6jHrgD+LZwB8aYMQfA9cr/TFX9VnI
8UCjvxm5BAyLco24KSl0/+qDYC2eugcuyrXO2CjYk3eQxayfTQLLC3nQkiBe
asZWxL/FKgr/DtyixHda9V3I8R6jtwzHX7ZwyhkbVGxzQ5ozU0gXnEDF9oYv
jntx0qye+Jb0DBvLD8RhyahDPVRRONTbE1BwqN5HibGskkvJU7my48lPpoTI
rW8ygBPytiqdsFO5xuSUGKyZZMxFWMbnpMLM3/pxrjjsCbM3mXw115fEBcZW
Il1A/WOUef42BbE/F6t+G3qcPdfbBBU/RhW7im6ba0ZS3YnDSrq3wWCvJCEP
CtNQK5iVztIA3OaZKpWlp4rdRV+b5whnb8R+T7sEp+fwJnqwKYApgSZK4Ccl
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
ZDS1t/0sIuq/915sXAwCDKkvyvjy8JM8GazsaxKSPSNOVQ+eap2qXK6NLLy0
62bhLuep4U8XrD5szA7HzXVvm+Pl92rTEDDU1YtZJ5GoLG1KpreOVlcltiBV
wc9DZxzeYy4Axu7HG18efXKW+PP0FGR8Of5J/X8AtX+YQbb5LXtPrGr4l9ip
+vuVf4gPiOo+Ij6X37nG19KQntHvu42v7UF7ZYnG1/5Aj15MNnYqCVeYxOmm
KaDSXp68Ghgv7Z8qjbKBUbbpQ9z2F1NPChc5wmREgSf7+k/2DZ8cGqq4OFrx
+3gF4PDxSKxC3aP6V4eXXATFxO5dq4DN9J8dDW+RdwboX+q04c99/SPkS4px
0/uJ31MKOqPG5wKDfRj/6QPV2Om00mDHX6dtre6abrB7913du2xqV4fLXUjG
A72P29459eRCljUs1xX39OOpikLfeOA5otaBdq8ji8W/gULE8aJeturuk3uG
hro+5LRoNKOe92JvxevwW693Vb2OGr86PEmR5UhuZyl329SuiYm58lDWxJ2s
jjd2OiMjzBlsWZV2pvoOpBAjF4ix4sLh2Bmx8O+UAqwsUT2PnpaompFEMxEp
dQl6g172KgS9IgR2K7LXJWYlGTn/b02YHH3Xj57L+g8kBAwkfe4qyzpWBtXt
z7xr9WFcY1FvS1yrQdPqls0R5V+leD9Aq3iHFGnitqmJ1AuYx8j40fjW1vEz
reMdU++5AZ6y06zDIx/O9FV30J+KkWtKvXHgnMEDOY/ouFU1LvqTYCkrzxef
7QqTXWpK6JQ6Hpkq6dj8Csqw+3Lyu67LJYaP0UavVCRH9Tl+7qrMOq2qONMu
K5z6mLJed/rJfWXL8temO+hi9eXfrZglmZjqs6xZZD8rkJJzZCrIlkqg9n/8
x/AcVuBK3qSDaVPA38s747UZPiHImUDMZs3ML2cCyaZo6R9b+YF63TBvegWx
s91rtd0Xr/x9qLo0+aYuMnn3zVFwhoL2toxSnc2Ap/6x63RZD480zc0OVNdB
uxAt/723ddetql23hqYqqoaiFPicq8enXqQ86zRAa9WoT2UgDAdia6JOz28d
glB7dB7i7u2a+lT1B08kT5yxZyajjK3XIRdwbjWF01Fahqo+5EhFikxZNTBZ
vcsNKcl/S96zvAviIgTsrLo4cLZuwKh1YNvvU5uuLvpaEZra66ZAUf4dubxt
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
95quYlkc+H/bqQ28
"]]], "orcInstance" -> 140373448223744, "orcModuleId" -> 1, 
    "targetMachineId" -> 140373447970304], 5481287872, 5481287664, 5481287744,
    5481283584, 
   "{\"PackedArray\"[\"Integer64\", TypeFramework`TypeLiteral[1, \
\"Integer64\"]], \"Integer64\", \"PackedArray\"[\"Integer64\", \
TypeFramework`TypeLiteral[1, \"Integer64\"]], \"Integer64\"} -> \"PackedArray\
\"[\"Integer64\", TypeFramework`TypeLiteral[1, \"Integer64\"]]"];

RandomAsynchronousCellularAutomaton[{rn_, 2, r_}, init_, {t_, ct_}] := 
 NestList[
  caEvaluateCompiled[Reverse[IntegerDigits[rn, 2, 2^(2 r + 1)]], r, #, ct] &, 
  init, t]

BlockRandom[SeedRandom[567]; 
 ArrayPlot[
  RandomAsynchronousCellularAutomaton[{232, 2, 1}, 
   RandomChoice[{.7, .3} -> {1, 0}, 400], {100, 20}], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange, 
  Frame -> None]]

We might have thought that asynchronous updating would add enough randomness to “break ties” and prevent things getting stuck. But in fact it’s not hard to see that the results are in this case in the end no different from synchronous updating.

What about for something like the GKL rule? Here are asynchronous results for it, now with 50 updates per step (with initially 60% ).

&#10005

caEvaluateCompiled = 
  FunctionCompile[
   Function[{Typed[rule, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[rad, "MachineInteger"], 
     Typed[init, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[eventCount, "Integer64"]}, 
    Module[{state, position, substate, rulePart, newCellValue},
     
     state = init;
     Do[
      position = RandomInteger[{1, Length[state]}];
      substate = 
       state[[
        Mod[#, Length[state], 1] & /@ 
         Range[position - rad, position + rad]]];
      rulePart = Fold[2 #1 + #2 &, 0, substate] + 1;
      newCellValue = rule[[rulePart]];
      state[[position]] = newCellValue;
      , eventCount];
     state
     ]]];

Should be compiled for all machine targets:

caEvaluateCompiled = CompiledCodeFunction[
Association["Signature" -> TypeSpecifier[{
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64", 
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64"} -> 
      "PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]]], "Input" -> Compile`Program[{}, 
Function[{
Typed[rule, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[rad, "MachineInteger"], 
Typed[init, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[eventCount, "Integer64"]}, 
Module[{state, position, substate, rulePart, newCellValue}, state = init; 
        Do[position = RandomInteger[{1, 
Length[state]}]; substate = Part[state, 
Map[Mod[#, 
Length[state], 1]& , 
Range[position - rad, position + rad]]]; 
          rulePart = Fold[2 # + #2& , 0, substate] + 1; 
          newCellValue = Part[rule, rulePart]; 
          Part[state, position] = newCellValue; Null, eventCount]; state]]], 
    "ErrorFunction" -> Automatic, "InitializationName" -> 
    "Initialization_667648a7_ecf6_4a9d_97c7_f8cc07f5743e", "ExpressionName" -> 
    "Main_ExprInvocation", "CName" -> "Main_CInvocation", "FunctionName" -> 
    "Main", "SystemID" -> "MacOSX-x86-64", "VersionData" -> {12.3, 0, 0}, 
    "CompiledIR" -> Association["MacOSX-x86-64" -> ByteArray[CompressedData["
1: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
"]], "Linux-x86-64" -> 
      ByteArray[CompressedData["
1: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
jHZ0I2GDKAO6wzJm5c3CO9CEgTgTCgm6C3nCnOOQjlyEprMncs1EQIQxOM89
6UCEsKdShGF4hQhX/sDxDdXzMzETBOJuL6tPh2w8NJ1ldnsFmmenHXzQIEHG
+CbG6tC5eRtWZB+h3cZ41acLsIDGPcHROYbzjwICLIjYlzk9Hkl43z3BvBwj
vaNGekG1XnVzM2uO0GB9kkCy4NUKnumSmHkgynIoYjvifkG95aPbwV/Z2mhg
eXCMesmb7pWp+BGCcCFebMlf2EAnl1Kg6/hSUFm0YxeGlYA2rlj8521QYcDF
nEegiq450ayK1McnldnjV1VF4Fax4l9qsOkWWIEUvuZUHoj6Vm9c0ZD8vTp+
jtVdS75VXC2v+MBZxJvKVZVx7LTSm15o5/1hKVzEc0NX3VYvyfvhuzNg3o7v
qWK7FQSB9yLKdopVquu8HQ+pbl7z8l1BuPGbp4xjSViFN5eserPgOrmHqSmx
IxIE9YsoG2761VLqLTGOSAWyaENFNP8s4GAY5eCdkgOzRZgrDTbZQieQz2gk
k6csztsYQgFYJ0HWCRy9K6Ml58C6B+g6kZpiXfwidmGDzWm3JbJ1z1mc0aeN
2rmgIotgLihCqGQtUFJ5UUnl8Krur66T/xbLqCQtodCqayWW7CVxtX75K68g
iftXNWXi5vwS9JWe978EWD17WGAP8zYKEnJfAB/aSMTOOuGca8bJ3CgIAicI
l+PChNm0S97dDMM38NywEGw6VkyLJCWpkEP1OiWGAioOC2z6jXfo8W7Dl5qk
9Nc8FnAPSCNUr5thBEohsgo1OS/jcsi6jHrgD+LZwB8aYMQfA9cr/TFX9VnI
8UCjvxm5BAyLco24KSl0/+qDYC2eugcuyrXO2CjYk3eQxayfTQLLC3nQkiBe
asZWxL/FKgr/DtyixHda9V3I8R6jtwzHX7ZwyhkbVGxzQ5ozU0gXnEDF9oYv
jntx0qye+Jb0DBvLD8RhyahDPVRRONTbE1BwqN5HibGskkvJU7my48lPpoTI
rW8ygBPytiqdsFO5xuSUGKyZZMxFWMbnpMLM3/pxrjjsCbM3mXw115fEBcZW
Il1A/WOUef42BbE/F6t+G3qcPdfbBBU/RhW7im6ba0ZS3YnDSrq3wWCvJCEP
CtNQK5iVztIA3OaZKpWlp4rdRV+b5whnb8R+T7sEp+fwJnqwKYApgSZK4Ccl
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
ZDS1t/0sIuq/915sXAwCDKkvyvjy8JM8GazsaxKSPSNOVQ+eap2qXK6NLLy0
62bhLuep4U8XrD5szA7HzXVvm+Pl92rTEDDU1YtZJ5GoLG1KpreOVlcltiBV
wc9DZxzeYy4Axu7HG18efXKW+PP0FGR8Of5J/X8AtX+YQbb5LXtPrGr4l9ip
+vuVf4gPiOo+Ij6X37nG19KQntHvu42v7UF7ZYnG1/5Aj15MNnYqCVeYxOmm
KaDSXp68Ghgv7Z8qjbKBUbbpQ9z2F1NPChc5wmREgSf7+k/2DZ8cGqq4OFrx
+3gF4PDxSKxC3aP6V4eXXATFxO5dq4DN9J8dDW+RdwboX+q04c99/SPkS4px
0/uJ31MKOqPG5wKDfRj/6QPV2Om00mDHX6dtre6abrB7913du2xqV4fLXUjG
A72P29459eRCljUs1xX39OOpikLfeOA5otaBdq8ji8W/gULE8aJeturuk3uG
hro+5LRoNKOe92JvxevwW693Vb2OGr86PEmR5UhuZyl329SuiYm58lDWxJ2s
jjd2OiMjzBlsWZV2pvoOpBAjF4ix4sLh2Bmx8O+UAqwsUT2PnpaompFEMxEp
dQl6g172KgS9IgR2K7LXJWYlGTn/b02YHH3Xj57L+g8kBAwkfe4qyzpWBtXt
z7xr9WFcY1FvS1yrQdPqls0R5V+leD9Aq3iHFGnitqmJ1AuYx8j40fjW1vEz
reMdU++5AZ6y06zDIx/O9FV30J+KkWtKvXHgnMEDOY/ouFU1LvqTYCkrzxef
7QqTXWpK6JQ6Hpkq6dj8Csqw+3Lyu67LJYaP0UavVCRH9Tl+7qrMOq2qONMu
K5z6mLJed/rJfWXL8temO+hi9eXfrZglmZjqs6xZZD8rkJJzZCrIlkqg9n/8
x/AcVuBK3qSDaVPA38s747UZPiHImUDMZs3ML2cCyaZo6R9b+YF63TBvegWx
s91rtd0Xr/x9qLo0+aYuMnn3zVFwhoL2toxSnc2Ap/6x63RZD480zc0OVNdB
uxAt/723ddetql23hqYqqoaiFPicq8enXqQ86zRAa9WoT2UgDAdia6JOz28d
glB7dB7i7u2a+lT1B08kT5yxZyajjK3XIRdwbjWF01Fahqo+5EhFikxZNTBZ
vcsNKcl/S96zvAviIgTsrLo4cLZuwKh1YNvvU5uuLvpaEZra66ZAUf4dubxt
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
95quYlkc+H/bqQ28
"]]], "orcInstance" -> 140373448223744, "orcModuleId" -> 1, 
    "targetMachineId" -> 140373447970304], 5481287872, 5481287664, 5481287744,
    5481283584, 
   "{\"PackedArray\"[\"Integer64\", TypeFramework`TypeLiteral[1, \
\"Integer64\"]], \"Integer64\", \"PackedArray\"[\"Integer64\", \
TypeFramework`TypeLiteral[1, \"Integer64\"]], \"Integer64\"} -> \"PackedArray\
\"[\"Integer64\", TypeFramework`TypeLiteral[1, \"Integer64\"]]"];

RandomAsynchronousCellularAutomaton[{rn_, 2, r_}, init_, {t_, ct_}] := 
 NestList[
  caEvaluateCompiled[Reverse[IntegerDigits[rn, 2, 2^(2 r + 1)]], r, #, ct] &, 
  init, t]

BlockRandom[SeedRandom[567]; 
 ArrayPlot[
  RandomAsynchronousCellularAutomaton[{\
339789091192587366278221041213531750560, 2, 3}, 
   RandomChoice[{.6, .4} -> {1, 0}, 400], {150, 50}], 
  ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
    1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange, 
  Frame -> None]]

And unlike what we saw above for synchronous updating when we added noise, the change to asynchronous updating seems to completely destroy “majority consensus” for this rule. Note that using more updatings per step does not improve the result (which should in the end be not ):

&#10005

caEvaluateCompiled = 
  FunctionCompile[
   Function[{Typed[rule, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[rad, "MachineInteger"], 
     Typed[init, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[eventCount, "Integer64"]}, 
    Module[{state, position, substate, rulePart, newCellValue},
     
     state = init;
     Do[
      position = RandomInteger[{1, Length[state]}];
      substate = 
       state[[
        Mod[#, Length[state], 1] & /@ 
         Range[position - rad, position + rad]]];
      rulePart = Fold[2 #1 + #2 &, 0, substate] + 1;
      newCellValue = rule[[rulePart]];
      state[[position]] = newCellValue;
      , eventCount];
     state
     ]]];

Should be compiled for all machine targets:

caEvaluateCompiled = CompiledCodeFunction[
Association["Signature" -> TypeSpecifier[{
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64", 
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64"} -> 
      "PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]]], "Input" -> Compile`Program[{}, 
Function[{
Typed[rule, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[rad, "MachineInteger"], 
Typed[init, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[eventCount, "Integer64"]}, 
Module[{state, position, substate, rulePart, newCellValue}, state = init; 
        Do[position = RandomInteger[{1, 
Length[state]}]; substate = Part[state, 
Map[Mod[#, 
Length[state], 1]& , 
Range[position - rad, position + rad]]]; 
          rulePart = Fold[2 # + #2& , 0, substate] + 1; 
          newCellValue = Part[rule, rulePart]; 
          Part[state, position] = newCellValue; Null, eventCount]; state]]], 
    "ErrorFunction" -> Automatic, "InitializationName" -> 
    "Initialization_ebf3942d_117d_4dd2_a02b_59c5c41b2c75", "ExpressionName" -> 
    "Main_ExprInvocation", "CName" -> "Main_CInvocation", "FunctionName" -> 
    "Main", "SystemID" -> "MacOSX-x86-64", "VersionData" -> {12.3, 0, 0}, 
    "CompiledIR" -> Association["MacOSX-x86-64" -> ByteArray[CompressedData["
1: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
73j/yfF4/+x5PHnK4eE5h/fvSUdR//1/gIavxg==
"]]], "orcInstance" -> 
    140546848939520, "orcModuleId" -> 1, "targetMachineId" -> 
    140546849609216], 5154796080, 5154795872, 5154795952, 5154791424, 
   "{\"PackedArray\"[\"Integer64\", TypeFramework`TypeLiteral[1, \
\"Integer64\"]], \"Integer64\", \"PackedArray\"[\"Integer64\", \
TypeFramework`TypeLiteral[1, \"Integer64\"]], \"Integer64\"} -> \"PackedArray\
\"[\"Integer64\", TypeFramework`TypeLiteral[1, \"Integer64\"]]"];

RandomAsynchronousCellularAutomaton[{rn_, 2, r_}, init_, {t_, ct_}] := 
 NestList[
  caEvaluateCompiled[Reverse[IntegerDigits[rn, 2, 2^(2 r + 1)]], r, #, ct] &, 
  init, t]

Grid[Partition[
  Labeled[
     BlockRandom[SeedRandom[567]; 
      ArrayPlot[
       RandomAsynchronousCellularAutomaton[{\
339789091192587366278221041213531750560, 2, 3}, 
        RandomChoice[{.6, .4} -> {1, 0}, 400], {150, #}], 
       ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
         1 -> Hue[0.98, 1, 0.8200000000000001]}, MeshStyle -> Orange, 
       Frame -> None, ImageSize -> {300, 150}]], Style[#, 11], 
     Spacings -> {0, -0.5}] & /@ {100, 1000, 10000, 10^5}, 2], 
 Spacings -> {0, 0}]

So what happens if we search for rules that achieve consensus asynchronously? In the nearest-neighbor case, the simple majority rule does best, although it’s basically no good.

Here are results for a few rules found by searching a million range-2 rules:

&#10005

caEvaluateCompiled = 
  FunctionCompile[
   Function[{Typed[rule, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[rad, "MachineInteger"], 
     Typed[init, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[eventCount, "Integer64"]}, 
    Module[{state, position, substate, rulePart, newCellValue},
     
     state = init;
     Do[
      position = RandomInteger[{1, Length[state]}];
      substate = 
       state[[
        Mod[#, Length[state], 1] & /@ 
         Range[position - rad, position + rad]]];
      rulePart = Fold[2 #1 + #2 &, 0, substate] + 1;
      newCellValue = rule[[rulePart]];
      state[[position]] = newCellValue;
      , eventCount];
     state
     ]]];

Should be compiled for all machine targets:

caEvaluateCompiled = CompiledCodeFunction[
Association["Signature" -> TypeSpecifier[{
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64", 
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64"} -> 
      "PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]]], "Input" -> Compile`Program[{}, 
Function[{
Typed[rule, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[rad, "MachineInteger"], 
Typed[init, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[eventCount, "Integer64"]}, 
Module[{state, position, substate, rulePart, newCellValue}, state = init; 
        Do[position = RandomInteger[{1, 
Length[state]}]; substate = Part[state, 
Map[Mod[#, 
Length[state], 1]& , 
Range[position - rad, position + rad]]]; 
          rulePart = Fold[2 # + #2& , 0, substate] + 1; 
          newCellValue = Part[rule, rulePart]; 
          Part[state, position] = newCellValue; Null, eventCount]; state]]], 
    "ErrorFunction" -> Automatic, "InitializationName" -> 
    "Initialization_667648a7_ecf6_4a9d_97c7_f8cc07f5743e", "ExpressionName" -> 
    "Main_ExprInvocation", "CName" -> "Main_CInvocation", "FunctionName" -> 
    "Main", "SystemID" -> "MacOSX-x86-64", "VersionData" -> {12.3, 0, 0}, 
    "CompiledIR" -> Association["MacOSX-x86-64" -> ByteArray[CompressedData["
1:eJzVfGlYU9fW8MlAEiCEBFHCHEApKmIYZFYTZgUsDteiogkICEoIMqMCGRBw
BLSlOKBgrUNvtbQq4EgCiFQRUaxYEAJCRYsKFgUVMN/e5wQKvb33e9/veb8f
L89Dzt7rrL32mtfeZzILE64IwyEIIlqHIB0yPU3QRHTBfwzokxEE5+Ep61gA
AGoAFkZlz1y65kbk+pGLn2suFwXAcWZUBHEB5zXxZgge9GeAf7LYooBbT1xC
otu5HMBlUWepUfRNiHvCREbeeI8Dmh49dDtdZwrTX8MuPtcvrtbMwksnZy+d
ewAfXk/5UZfl6ZPL+hlnF5/FnGM1J992R1lIAetWPaC7i4UgqeBoZ16vzgrf
STxocTIL/HRnlebr6gTs36uZ1RNAf19thGPSRXhPJIFYwslywWdRU5as9FI/
OD+wKm0FlWEmmeGNZB/gigEhChlvZmXrS286obuLaMYt8dEHkIX7aQ+U/SL1
YHU+/3QuUqT8HMc1I83bjbzUO7KLnet3S/lR1WAUsOgU3dl4rsdBO+sZmt/t
RXS7DrACGAjy4CHCOaqD1G8kVp+gsvBij51+CEXN4H4pS5RlzmURl4bPuflb
HMua8g8NjpjDyv+OItL5cSnOmb6UHP9VF96K8dImerdV6B8uOWn5O3OvWcWf
4B3OR5D8mP2I69LD5kuLMp5uO8GLO7wrylJdLevgydknsn7+7PxnH78FDfXp
yGF5kIVh+2321S6rL7L1Ec5V8xDk4dybT0ksq+df7L6pVeYcVEa15+zK9q6c
dSZYghj755eEz7YhE0K5d+xCKOTNNGKDLqlbRutna79jaf8WpPGar32OTnvR
Savia7zrpHVztF8M0F5zSFtZtC629m8sciKfHC+SELln2Wqc3Uekb5Xrfl+T
q8w0DqeII4NzlUn5ZsTDoWYZPx6iSHMTR1UKLIgTMbsQpg89N5QYWrrWwMjP
3/YpHlnORJBVwLkMczuV4I/MojqyPJCZMvwqw9xQ5IAWiYFoBglYu5FgR1Yd
xNAWEYM4pjFNOd0oPodQLeLnxBflpEURUvNz4pk5iUU58VGEBFFOMoUcjzSY
GT0ONbmNYz3pMm5lGT+RGz0r1WrAmbSWGFeLTZpw7Jw4fk6aFVkUl5MSRUg6
k5MsynEsyYmjk5OtctKmDpcZV8uN/83wM+SUopw4tmpqx6icuBJy4sTwxxwW
ji9AdvWgPMu0EWdk5v8SzkusIM+LER0OLgl5Kydt1BepnXGk70WsDffWITNK
WvnO5DLkF1LPB4iHiyJw8B/5BLwaB2+NGMdwzHF+KL4ObkBOCv+I4gwQEBoS
TfBAcS7Jz+D5uDNaWd7IHdJTvChcKlYHcMP3ZiMocj6iRSFIjG+HmgD+O7km
t0ONHgDGMFnMjOqn6kGaGEdOKMpxZJNTo6RAjds4ZJlRtRjIboRUG3eUaj0s
NWkFA0Um1Vyjx6VGz/6ixhQK1MbfDj9h8iTUpFpudPtv1ciX+kVhispAZDgW
zoBOQozpL4Nog2xtAaL9RxCtO582GEQT8GkDTbQuDk3kkkVwa/B0QbLcrnka
npS6FdW4XxS7yDwNL3o6NxFckWd02ksQbgj99QBNUEJ71wQGkt7SaU9ltN/Y
2lOHV3o6V/674SCEB+m0Z6qpSa/otLeiP2c35IRhehYBw1n9L/FJThwSRzLk
nPiT8zn/SzgvScWcRID4cUyRxDL5e+D8z/kEHAknIxvmst9jPu+oG0Yn4n4q
ZRLMKPlaRH2iTD+GdZuPNPKlYSRcHIkrIkYjAlYjB0AIYhIJaCPXwVlk/5hz
Boc7Cmv1EpBXTcBxWjaHaUnB2XIpu9XFtmbOlhSynZmfJfE2sSvYUpd8waGR
+FRsHi1hL5+WvflHS+L9rC6dMnWuo1mTJcXQyey5JbXjs0CmCZtvSQmNC2RW
c6h1fA8OaVrWP6mWxEi2GUWq7sHMlxOfUm8jWg/4HiWkaRJ7OK/lDhnB7b2a
W4nUkUJOFUE1OrJy4vJztvuRUx7zNX4DrlhC7m8iDbDIKQh5G5scX0JOYJFB
sMTHkbeibQjEEECbT04sISdzyIJ8GviF3SbSMxEZ6Hcri5zaRHotIm8D1sIG
omcv0EGdIi/VpjB0PLL3fongHDyKjv4hv+Syo6IrOnkNbffPIfZ61PCMO9y7
A8y3RyVlLPdGksevUfO2Hj6GLz3c5U65hf+Z/1Pw7aRN/fkiC3ojH64jwL+E
8NjM2Nf8pBy06eCfSC7zjD/pbSUFmmdBHBrfT43kRUA4CATgkRIcYiTL3009
RkZ0VDgcKeIsMvvFqKc6C/lZRaeEi6LNOqpBQRdY6F8nkr3KlRHKQZdqGJTM
Prl2z1ICXqYah0BS06OCjOjIxJ8MRz0bJf1DBEoNYBAFAa52mqxjIjjRBBaY
brNXORvQxY2DAKmv8qI2IkQOHuMUQeIQzznuPzYA2cHSkDPB1fmfduLoqEIm
ZnwQoUlgIRNsiAjMFQUB2SQOYj0xJWD+d/3PtUSI1WTGLjklyEgIwoYyslRo
8ab1WggSBdE4KrTfFjOMEM5T1UgO5P/3nafcAT84qAqcin+m93aAQJzE/3cu
uz8iFBFlMv8n347iUFZFE/xHvlBXw8bgxvnftXKBxl+Uf+X0GV1szJ+KXaFJ
InJwk2c8dHgZjoKoT54xcvq3eDoybfKMr3evBTNaTdbYuRmPwIyrJmvMYP4/
p4uQMxMgGidMygk10kBE1nREAwDsTIqY+oyA/L3qlr51RE+8Ln6eD7JZhLcA
SebVzKAwoohpAQf+CPJCETjaU0RGtV1Gkbq4hbmezlk1ez1E5LRUUDu3Up8h
2liRsKd6gIJn3FhqFMlWQ9Gkhg2EhfWeC/cSFjak7gW1djuFnOaXExdH3hZH
SE7NiWPl6DcwaC/z4Uoxlq3dPUAbCKLZ02uNO0AGNDOuDjWJZO9yuyZ1a/J0
uUhwvyZ1h3VoQDeZT94eRXaKAnmT7CSCaSKOD1IGOfm9GiCbIsrhUXK2MtH8
XiS2BhXxdSftnQxUOEJYfalRT6lRA/r7JNTotplRrRgsF0iP8j1d6j1ditDf
yhrnLz2dcwluX9bMB5OOStweEtzKaqi3onPignPi46SJUeRUfk4iKBslOfqN
K7VfozW7Jx8uf7tYNFDI7VlWoGyAdYPJAzOjJ2KTJ51GPV3Gv+NMIpnLncs8
XY9K3RqCZqoE4eekpJJTi5YHvM3Xhhow2QwXLs/NjDvkxhk4E8iwmfFAKGnV
TqlzQ41bmedCoJDRavceT7dc0K3Ze1MDSJqTAvgBqxArcnyROKQbVHRQ++GS
wkL+gGvS06X3uMu4AzDgp+9WJl14UWqYVeO819Oloca9Uu5SXwNkdG/wu7iV
QgZcbQUKDM7Rb6ujveRrv+oEWVX7N7ia1x4KosXSad1suKoY7CSBdX9PEO09
27Or1QyuewZwKOehPg9/rXHOgkqb/9jTtcHTNdfTFUjd5LmoIdg9JTUnDayc
/Mjb/MjpVmAviaSBOLADx3gTP5ZnLlVfPd7Oj2Uh3ltQcN+rhG4V7m5r57E/
3+wbZ/p15KAhH/lCGBMZHypgeQoFcdExEfEsOxtbOxt7GzYrUhjPCgzdyPp8
JSuYlersyLJydJgXFp04m2UVGJrGcrZm2bHtbGevSopg2dqyIAj2WbYurrb2
rraO0NeJcqqY7cmu9+NLVoRuvLAlYYnF3IRvDGcx/7i8faP9Qc0tCT/OPXjE
f3uC4SzWiisqEOOf/hstRk74b5lrOMsKOQviRh/Q0tSItwL+SN4WHFfkuRC4
VZmnS1ON5JlRXanWcy4Ml2dmxpidZzh082m9QcB9tHugE2n3BtHelonE5DQr
1LtTc7Zitg2OO1rjfBHndlK68EsCmOM+SEokGPcN7mBdeBQ4LWFhidQdOHB+
DUxLoUC3MSAzTiOeYGiCDKQNE5FVro5VDkP00+xsjzkSO6tD5nMczb+UUTha
ul76ukFiXaXqL5PDyA8lis5bIPbIqmI0y70BWfc6OJr71ucvtwyYB4Fn6Jpr
y+USmycezghvWWhidHIEjxeYlBgaFh0TnZjmGSOMjeAFhW7cEhHOjY8PTeMt
iU2M2BQR7+jAs/238P8hOq6sWcmh8bYOTjExyQKbGKEwziY5YmOiMD56W4RN
RGxoWEzE351JiQ5PjPrzRHh0QmJ8dFhS4vgY3sq0hMQIAWAvNG7SdH+2/rvi
/g/TU4m9wMlpgrKPMCb8b0n/d6b7s/3/hyzGt53dApgPpmV9S7WkyJjf009u
vMleUq8hdl1Nnb7ze9b39hypQzA3ZJOIFF0mkTXC1eTOfNu5pHlbVtPb9Eu4
Bt+zKjGcRAxnAMVRe1OMMzgp18BRj073ZIrkFyR0KYa2V46Nqu+kNrG0HInN
2SWtrJlNJO4uR4rmRbMmR2IoyA0M4gDpJHsaAyfkaIx3cJoyw3z8WQ9Jgxcd
tKoDiMg13OwGLyO044VHOzNBx8OXGsHfhVNTswuLCzajkDbyNTbmqxnblnB9
SLpGfr7UmkjsGNP0FU6NGI9LsSDVT5fwRaTvOEy5cWItIuYaBnFYelk4qiHd
k4PUaOH1RfJcMS6LxVx1mf5Sbu3JIlqQ1OhgzG8eC/xZVKcGrn6RPJFgXMRt
KiUkk7bm/xrafCLWl7q9hJTcxCCYfi82Dme172d+51gv3c+0dqqXUk+6tQWR
KOw2eokn259NXTXzJMu91DaooEgSZw6PJZL8dfB4RhK3GB7LJPSN8FgpyV8N
jlyZlJ0M+7IslkbpfQbhBPk0BycOKSOzYzhUHI7qRMlASBYkEiLhB931DNK8
QK1jUFeR1QkGe3nsHfLnalK9vWui5pXuEz+KzreMrix5I3mmudY5qqekWHqK
1uoeNVzyRjqkfdgvapZcpmavR/iF+8Ck5L5Jxn2THfdNtt03Sb1vEll6KcuR
tPY09/BDk8omk2tNJjeaTLqaTHqaTHqbTH5vMhlsMhluMhltMlE2mZjfN5l1
3yTuvkmCbZDxzEw1g8zf9DJv6mV+q5e5Uy8zYsZa/6iNJUkGJ5cY2ERdK/kg
mUEzcInqLTkrddRuXRg1WjImtdRZu2R0esjoLyFAkCX9Ip/+9979A979z737
O737i3Y+0mllRhWTog9kaxrMj7pRslPqQ2t1ifq95K40WdtgcZSyZFfWap3r
BL3rqDjxvJKtvIytvB1bedu28lJLD/0XCQyr6Q0vgAT+WFHyZkXGmxU73qzY
9mZF6psVf+rjZJekTvPw/KiukgJpMu2wa9RgSbu0Trt1cZR56Ve1/vKb/ndv
XpPzNXFs/yBge5qY9JIdVOBcKyyr4Xg/pUfJaITpuzxLcG6TThINwMmd85xr
28o8fam+c5/jgfeK58rKcLZEIvsJqxbP3MtkIhQJN0IH59pgx1rCDgtCWBRS
0RKR3Fp+n+FpqVkFfIQfpEnHnIQeQKSoiWyf0LMIzAY7h6UqfKa/3wXiEl8q
w+ZLApiCazMxxcDEFNOnyd0b7KwD2GEcOOSYf4OOA4gJEoiJn2sX+MsSa/kf
ql1hGI3ix8NI4oyGkQiEkROjp8ZaOkis0drSROaz7wRx5blcsZjF5DvL7+q4
G9vG9NC1den1ar8hNaRaOl0WJxXR+OwwPpzsH58Tlew7/PVcX2pcPu0dhysG
87zQzDG2ZSN0onS1864kyqnlbLqXuYdWzFO9J3LjrK5sxFTGLxQfkETTEGLB
rqbaapNIdSsdMv7nrc4vMaYuVi+VgVgUJdXmk//o1NbVrc+VhwKW9oqDRz0X
Eo1tB7gLRUQ18gNGTZy2OVcuBqlC4wNdB7L5Pg4kETWYRCK5THkAfT6AjQLW
s+ajehsljOvNW08c2GAXvhaomg9Vvf4JMI13FNCTiAj0tBkVla0zLur0DURX
2ztlW1V6y8KtD3KwPUwnXqAW6+1l6jIpEtwpvSG2f0lSLetQbQDQA/MkkYgp
/K0GsN1SYDuGJpoPrHHj+WCnD3vGBaopk6iy2M7s2Q06cca2ez38nxOhU/n/
6VTECacywK1tsMsSM4nNRgjF3KT0q+zP91q6y1ScyaPycWv2WhLl1jXMfK5K
vKLN+TXWOGZiLZvmaDsDKsoJN27PkmnjQv6yhbjV9k4QKZKuEmnI4Ee2P4vU
AwSQLwOs4DABFk0IcNcnSO8CFZQcuQMZkVD06Ydjvr8ZhSdQnZxxwJMruQbj
ov1a59agUwQ85TVrhpALEiR7xkSCjJyg98qnCdDbXEYa98KrDNoFYhTHQBwS
B/HjUPzNE/hjPnSDC6CAkORxhPIiubXU8Nq4yMzUzhpruUFibZx2TIEeFFkw
ITKiN+HCacTTtncQ8tZxkVeb9LL9m0hvNYHNQqDNaOiUiRNTfutbBqaMZ5Pl
HDLD0UZuE15iEw1Y+9Kbg1iQfIGsbFIPwyBl+Qxj2/za9fkkWNo2TNjxpdq4
HdVMxTENdk1cY2ICNb6AdMr2Fj3xLMgBD9UMjq6n2LbTqdWXucyBOE+WQRT7
TpnG9+MsJpva2PrTyQ9JwCpRgPAbEsriqT+16NtkeIGaHEce1+JIl84FYgLn
I/DuoyTglKOY4Q0mDJ9J7LK9Aza5E4Y3debqiht0Hso5amZNYv1Kudr3UHvT
4biBiXHTdxGf2d4pIW8fH+djvtDWP45sbPucGPMWSs6NmZC8iTQu+Vfm8m0N
dgNc03Hn+LYepK0e4Bzpyw2fQufgG044x+UJsS77IaYXqBkDE2LZxM+4QNwO
6rr+87o0GHJvSaqQM7Y9yhWW+JIefFvCyTZ8hLg38K+ItaotimYhOxlSPIHL
lsVkzYtU/yhqknBs6NpMR9ZDc5aoi1TqLuPXyhAOnTrHWP39xkIzXS8zpq0V
m04kBPiGbCzs1K53oPTgB0WhBPwCPJ4ZS39AoPpQqQhRXvJHAeIVqe8j1pWI
NSTJQyW6G8QNMzlWyN6u7M5FIOlxpy+doBXwPqyQo1tvka/5hJCtRWFTKPxK
bq42m4mlztsBeN1DEeydKyk+VA0qUY7YT3tTNIu1cz+z0WPRJykef5m/iP9Y
xEQ5eDnBwdqDJd6R+kFm0yUMAh7hsgeawgs501UkNk67XzTLWc1OE38ZWQwG
c/aIkGzDrDFEyiAQAPKZzpn5BWuyV8ft5NeWyIAG2M679qyRrCqyp3SGVXJb
oQQzNpgxPZ9Lp+l7DhCmX+aI1uC/YnoiatP1PSk7Z+jH0vG2QArD3KJYuiS0
kDNLNXPzwUdFs+LUwrTwl2VeYOa4fejMurjxmUdnIgfXkIJzdyLyThNOyTSi
I0UaSjCnU5CbJd4sfiGiq6Kk+VV70axcoIbfv/FOzAJqkHlPqCGMOK4Gu6+Q
QKAG81mSUELYwuos5IEXzQ3z2HNNlrY6J3cZJWNGXisP5M9kfbEkfz8zo9Sn
OkuCLxVxtoUHM4wYBwEDTDL+eYHYO/5kwLbwKIYx7qCJfki4r2xmTs1+JsuA
IpHP6VwSZOHs8RkoMHy6zIGcLam3fljtMJdtp4UXseI1Lw083J1OHCRJ5xFl
1uJ5DYbUcjpygVgOlhE7Lpb8Us3xttO8KAPHnfNYF/kPwZKZcKhWHcbNoYm4
KVEfj5tf5sqPN9h1SmxAuT5wuARkeJsBD/ZdkPYPaBKfzf3ZWmwDyv3Zn4th
uf9efaLcH5ko9906X962ls4XeaKjqjUvley6cxTghR9gyByWkCR+8+kbO+du
1/ks/AHDU++zDA8Qi6zPJmIxCT8ei2f9ZXMuULvYNJD4SZL6+fSiK7lya5xz
vhdL7zGceRWc2ePYxMyvdWS3rQkuRWBmELvmNOIzm0iOOkgxe2tAisklPNTU
ewnHBaAcH58YN6jz8LZ1jctJbNwKGtFxfoe12CWxtmlM/Z9QTpHGuJzVZyZG
vdd5DuR0LcNGSWjE7PlxbP98mrFt0Emdubp0Cuk0HqsGHF9qy9n6pVim0MoV
aVH4hSXGp1zAquWRWDaqphWp/ji0sIR5hhUzx/g2ayZpjk6KH9mNou56CClF
2NmG+BCcdE12SlwOv1YEXco9/9CsVPJPBLyZGyu/i2TGka4hpebm8A8TPLle
JlGhS/VXltqy8jWj1MB0dmjcV04fj/vdEfiUQxFFOdsop7gI3euleMaxr8UH
ww4TCNwsE8r3EUsBKyZnzPM1k+HouSyRKoD4Pht6Igq7TP4wcz77Bb/SjK1m
XxTRlJNOQQUZEMvC67T8LPLXSHYAQYg7gn7vkvDEoYQTmnB6ut749L9HSnYc
iugkZ4JxYPoh8QyHI7Zf72faxe/S06D0SOLBmDCUZc7EmO82STIPRbzPycfm
+iiWbbPUPkOlhBfKTElzKKWmZ3ZUctbDfCNFoz55IuprLVmH1pAKWLv4UD7i
TEpATB2/kDXTT4tCJKSKQYqVaOHxLAer/GV0iT1I0fh9SKR6ayjEDp9JaYjx
Ci0UzXQNcyakfUDZS5tgr2yCvc0CSeGhCKtdBzH2AiSyR9nApsvMW34rw3y5
ScN243zu+Tuhvlj2mB5+aoNkjaRIlaq/F1RHFLJmRS0CE+yAOluEZpv3auPZ
ZvcRfmSk/mrJLJj2F6/GLQoOrTST6dkWRUSpfz2ev48cmX5oFn/XfmbQb7zg
bJC4kPCJxOVDGidVfYSzKVJ/A94SXR0zvmZdvGp7yDOAFKn+ZDwnX0/7ag2+
KFj/Ra7Z6oDISCvgSctIwBfMYPXiRoxXr++q1KsjC7mWkeYqMV4KYyIK+ZZn
EnVOWmSLIuIhDyUREzzwIQ97tQAPc4o7YyL1o05YShjSMFgol94qkXAi1TeH
lUjoUfhDuzSjwHyUmdD3NoLzZ1ZsEjyKLJRbxsKpnMFU1klfrpEceZ4r/2Kz
TwxkMGaCQbNNE+W1Rb0zshD3Wfw4gw1JdUDPn1FCQHktBnr2CEEZ2zahnAPF
othI/cSwzySqCh6esz5SPVkSvJPDRgwpwD9CZrGQB8VEoBqKYQVI5DZ0QwDN
Rt3uJ+h2KL+Jn3UeWUM69nwXUOljqNJ22zMsEBrHYGgc4yQ/lVwE0+PVKYBT
eH6OAmfcdChiYNdxaEwaMOagcURh52euYWV6ly4bQse7NOF4cYYTjrdD8uBQ
BLKnbNwFDI+nH5pF2QM8aNNQNgI0UvyBjAf8BURuooh+38mxSYXcvp6FGjJ2
wpCD6is2FXKt6yYMucMjspBvbRVCIUqvwCAJA4oqSTfL1/wdqjlDHbIhm2Dj
u3RJy6EI1p6fxtnYcvzgoVlWmq56eDlfyAIO4Pe1CPGhFgLBZNSmW0kNPuHv
s4UPSAKQ2ppharvA3gMCFOH2WFO0MgJyHlhyXcP8DlWFGgPJ8U0TkjONx6fU
yMS3H4rg7Lk4PmWN6del0IUeQBdqwrvs0VxKxlyoi4RLmpD0k3oGkHTeo3FJ
v8+MBJLOcw0LXnEr2YpFpwaT8Zgj7WcaPZIba2iAFQAw9jbj9p85V8A2MY5g
5hbJbg9qWMb2l80gTCe2nrvJfHiTo1aavOXNL2o3g0RBCLNGS/webMOl6y56
j++ZNe7qVN6Mk26F4PXXvJvUJfGgsmDZgU6yynrcGOVBb7CT7QzBtlxbuVF2
FxddIMbbHmYj42hsXd1v1LnsO2y9JEZAAsLKbVIr/bVpBKyhb0ZVI/zwRXTI
1AViii22EgkN8rz/Ad2nETb0eGNVXC+r3POtPSBKdFUDpZfqRH0pJflWaoew
ZYmefKreNW2qE5Gk32D3cucGjJXt3KiIi4vHeVjs1XQPZXXAm4edT+dGRel6
fKNO4PxzJauYRcSrET3OrWSB7VAc4c6AtkHInfcY9QG7GjUlASiHS7pAzezS
Qzd09Tz6WuNzTeM7S0PGTAd0z1vCMEDP+0XRDUxuNgH56K91/T6jiMFKgUjH
8V+eoRMbdKhdHAThkBHEKfT9Ps8QiT7ZaDq9fdtxxRoHYy+p7ofi/oVjLVfy
Hm+VLcfdPzc8Kndv5jr4FfReP9aceX5dGYTe7X2/y9nLnuXdoXBdr3QS1uB9
1bycjvflqAWS7wNo28gy5eU85o8Y7tjPJD+ArHZ8ePT6sPKVxaKwE4Qlal6p
55sXhf2ItvYrFoXth61Lx/oXhZ3B+6t5le/vzegOqLOKW8VJ7L8m2A9nGG7s
rlvKeb/Pfv3P9pDVtI6+yrHu8oUaUAC3quNbEE8HworOS2O9i8KEgJqToHuR
YAfWyBA8x4PW++K+RWFP0Vb68KL4BbT7VL/S4YqO/qoNphtlcHiP67nBYV7L
pfW0mdPpv1w5P1J/lsRBNaD4sL87M72/bjbHjxp3SGM5bnl6Hq4pka61oift
h8GPvJbLP9IBI+Ueqzjh6zSX4xixgzjAdcrxvtWmUIxhF+FG0H9/vu/UvAFr
bfb7Pd3utTsDFoUVo8J1DBdaQ7TB7YIGVJ9VfeUYYCQ9YNqPfsQVT1LPt+xY
rxhRtBUuKQOT9KYBZcb7N0MWwLlm9/WKj4qWGfPzV3GyFCOvLMjj5vi4X7kg
8PgRVGnOxcpkcEpvDfkn+hF7fvkNZfJri0h0THdyv8WQM9pyeW1RbiACkysu
5YVEYoopv9E8xmurmE4LAopxPddyeb43rbN70SuLSEy8benXceEcgPnccX/3
SGPf+xvDaccGPxT3XruhqBxr+ZBOu4cp63j/O2Gb09sAyNyx4Sv7lO6CPaj1
9wOTfJ6XxNL80YWwuu2Dojelm35XpJuW2Zf2qe/yV9AiXWntI/XFpCDofceG
r2c0vw0ERlF8YTAAMa9e7x/+1JKSnjthl/5RXvPHb0nuAH9nh8Jtg/LdOcNX
qF8OX/yVBh1nh7DtssyB7uHF9rIfYyyn3F01kmuMutTYsTYV6gczVRCkn1dk
7jO9M+5+DsreBWcdZZs1/BNG7L5LMPzGf3uCRcHW2TX+3yQsueAl/gZ/4qpi
+CBVdEoalW9eMVhcp2w9dW5DyVkR5darjkzzat/Xdp1aGQf5RykjykO5R/WC
rZ7+y/OcrZ/ZhP+0oGZNdm7ReXuO+WHc7D/W9faPVaWf7IjeM8NvDuu7weJh
xhEj2Hp3bbjgjjQ3krP7WlXalU/CNt+A5Z1nRM9fp7UeJX8vpptLzA6/yMv1
iLJs8/39WpVpThTpZH3S2oq+zFvzFqGIH9qt1fZr5L4+1i+sMwNzxRc/6hu5
t717RvAcVrWwbSja1PaB+BTe3P2H7cpdFNPLbcie9BnhrYg6o/wmQ3f0hvLj
awGPBQSs2t7mG7MBbQ0/8bWOh61bCe2+3x+QmdmE6xyNHDDc9AejT0LyyKVk
R51abK5Reuh8H0R60+o7Wmdm09VhcEI/H396WFGXXnv+S43czcU3tprOlot+
Nim8x79weO6zsJqansL3gY1Hrk4xYPhI7j7tYIKZF9HTodmUsbMpoDzvoWum
FQz2gr6Ly3oXHztSIfrJXda5mPzUoqUMek5KlTI5nb4X872htve7JoI+tjlT
MEhaJANh0QeC6tL+IxZiM1vZbxbPCoHXN6e8bi7/Gmu0zDBsWsVZ1btNMOK3
r6XQAAxJbKtQOB/Me/ycswLHONZXkfdYdwVueXH3ovhjuGbMRe91D+WN+F1v
0UNDsmNnwNAyZflri1OzQfid7Nu2bN1Tzkpcwbk+lFDw7yih/vK8ovfIShzj
/CAQ7WPseTSNZgwuCnuBZbnhRWFFaEidB63bsFV5o3lRvAR3XzVp82geSL9+
INMmNQ5eem3x2U2/afTAHRuUCwTrnoEJGceaLyq9svKKrk1RbeJI/Y+kVY/E
1sReB4Kd2bKEtg/CkfqtC2F4pbeUH1NeywuuFE0e0WPhg+qu3+G1xaUORYEq
xwKf6nuUCJJY86WMqzhDYBlx//bMXpfjLWmNfR/2NWcWNz9DTycJl/iBJHp9
pP4QaZUqCI+3pWc2D/MU5edo1iAXfbzRci3viYkXoPz4Q2zfWCZQ75eqDJDS
qPgoHMkN1YTZ3DV9pD56wrAb2jIF3Y5LgMnC+3a8cmrssejFEuax4ZH9yut5
wVVQ1xnDlXmPu0Cr4Fzv9byi+CnCrWp2NGZpZdEZ1PsBmV66Hva/XFpP9pvs
eZcECtwDDoUhp9996+tl5rAyvS11KonuQpOpJC5f+guJ2LdTSVxvy5xKYtDR
aiqJ6+2aAZNJVOYFzwB+dw4o5hzuLlRM54IxxaL4cJU7VIE0Cc6pfZ2iXmtv
tuyCzrTpCzLXj4jt+b5/wOh4l96clqFMTU/B8K/fbX6b2bIoLAiUqeT1LS2R
0HOPNlPrs5z3neurChzJ/VUbJNBfk/bx1DYa13uk6tmNJcfm4idLcTBw3TdT
pAhvsZw9RYpfy9M0pijCMfbEVBLFR76bSqJvaM5UElfv/4WEcDcMhvLzIFSq
pxJrNxX3rMe/Ccht/r7Wy/sur+URGt+Vr5tPfY01WoasYXFsG3tt4YMVWbd+
i1PWU2Zsv/gLbcqMKYJrhMnzNAvaBqYwnag4PYiWwoxet0Clq3AFcPcFjSO5
a7Sn0ol9MJXOvrYPU+n0181nT2blt0VhB6CwzsdADuibOvhu22dy4NLF/Zfy
3te/wYrbcPmxQeUGXvN4cXMbG67Yqc0BNddVOPK513u/c716E0U7VumWaYyG
2MOKff3OSkWFtw4IsV8/3hjJXY4W6kogw3IU5vrDiJ8WKWCobAfp4P0QWz1D
E8uKWmF8x1PyyckV6egikedhUdTHLd2m+ZOLQlwbXn0K4ugix1y0bm3r7a96
nd7jeOwFy+Bk/Xa3/nfK8+fWo4VmS6uvjewQ7QR395PGhKtKwR20UCa5Dhes
TEOL8b3txi2Z15y6QI02P3oq2sLEGdS36FbH5RIAGDkl8JwJBvz0anSIMRc7
5Vrxm/gk3jxEITS1XYEhpRGMAVL14NFhhuYsgPST8LDlP77iMjqC9Y3Wtx45
skp/ffHRtpa9mm1thiH6GwyK7xgZrTNYr2l41P+wGs3Pz+JP8y6K18dWR8nn
FUPC4V4yA4Td5WWDiZ8UV/KKokXLcQXpvasN+CBZKa5yaVOi+0rek1vjRnNS
Ki5Ho/p3CRyp/3X9ywusZpJfbtm8/SWdaWOKi3nMFrCiETRfEtCCJtNY8Mri
WRKsV2/TC8cXT2hlyk03Bkshx3PrBmE2hPXm6AZ0o5B8vs0VmD3vCRIOQjxu
mT1r2lOHTGE5DtSUSx2gAnYnMWVf3rdxdA+I3aXoufaVDkwJKfvWfQUrYN+l
VxZDTMRs35/+qo+5JCiS7+tvotuL883bNig/ZMyYWDd+EPblTLjgXeVo7H0C
SEHOgpZni8ASNKvloqAZAyiSl8ZBVQ0JYnIvUBm2XVeuk2CpAOvaBcsM34FV
HWNZ2xV9DWt0mQe8u0iV7K/mPW4Gug4cvDKG8utcfGS+HAD2NZeXooCKc+tC
AJvtw5c+XzcHnklvGz2Hri+9M/rcjinf3T3Cw87zjszkwrLRfz3v6C5V2ese
zlMMGfLhwvoqjswEs6dkuqHrEsXHZS1VHYpqlSF7P35qubZeY4qPDAnyiDB5
3QWVu5TwcHJJWA8K20JsRzayQXklLyQPnXDsXO9YVVtkCpzPITYVbjMC+05h
qqkQpKH9Yb13qkX29k8tiYJTRAAdSu9+ZgS57L48NgsIfa1x5JLaNCh+6r62
q1BT+1vK84L/4CyYUumTGo9A3dztu/b5kSFRlsOk5NR3qwubpXfsk2JIrCrC
bR829GUK+iqYiKrwugqVSYFtLDncPTWXr4dVpMthv2E78Nn0liv62tCxt4HE
4kKCC/SUu+swU3aXM9CVwJW7LVfzmEMY7Op17SnqS8nMx2ljS8DG/sz1fYWL
oc+0JWaWYUuxgbQqhZuybdFTC58AqKHu5NgfUGXsGx5CldH7bqHKLT/EKocE
oT5g8cQzTASxeb9Y4dtDRyO2L/nT4KXLqKs4nVcw4aLk+dj1wREe2ON2EH6Z
XHHyHl4RtOEAlZQOw150XdcMlDo2RXFZLRFM9q818fqN2Qk3Q2JSi57oVP2c
RpgFk5PgxhDDfmZ+vs+kXDnqTDiFZsP+o1XvFEMFa1vO2cN1fd2Lj5YEE7Ce
Nq94V9yobD1/N1FkQDEzZ5449CnXKivyO4Hpjx4wqz05v+UOmvBehDjdgQnP
qDfN9MdgNOE1phFWgiz6odX38O8ORiixpLEbyiM3fkU2u+aSZv8+curNkYrM
J747enTQ0y0vQm4pXatmqLYZp0cWV/yTzf8p57efQmye7b78eIB9eVbGwcGv
7Rh7vFg39/Wmnu9Nalc6Z+o0oGsUsLbMnYWWkORjI7kCbTZmfb9zzSQDuOXs
Too9AbfYThv6v2DSVS60Q6CsBHtSNCE0f4y9iJrwXHc2Btgm/AnG0NC5ZpeM
XePucGM4M7DfG+r5D31rx0l6bvaAe6oO30Yn0RFQSzR2KLa73ftw9FGSW0X/
tU9brpffFkezsnL5uZEfLU7QD58dZmw0iQK6S+oYOp47UFDz58bvmbK1/PPX
YcfVDjlyPLIEW4lq914oOtJrfQhgsxX75JTACVqpMfrJNgh4ffTRuUIAqL+R
8tEHM1vVu/bzytbXdzG8F592F0Ezy6I/9gr8TVF7tZ8X4PZqaR9c/3LYcEPd
6RfnXY4Wn6p4HPdFa6w6oPlye7/w9mQGbgH/YEyzhJ70Zu29hLkz2HNYrS9a
O8kAecC1f18B56yovjzhxlBBDVYy+wXXH2Wud+pBy2BLmqmtJXCK9o4faNie
VDEyWrHd1OWWaBewduWbHVUjV+tGqs5vrdGDRfLN1SHGVaymAorbtUTfE9bk
3tUva3uU2e673wE5DGt1+6Phdcq+I4s6RXZFUN/tdcIdig9GimGTewmLKpLa
G9+4VSnX3tJegKJrXK9IOfqpz62iVfQt/sTaW+kn64QHUV1sue5YLwLMrasQ
7qHCwpzk5hQP2D6x9vR20x9rwakTwJn9aeDUlcErTutR736WthIdHH3M6Rec
RvQks95I79mBrTEGN1S8yKza5yY7I/Krir6DFX2TxYc2Qff/41rLlpF7aVJt
oMgHwvbnqCLX9n9egu6j190Tfqya78SCygKBMjhySmnww76tYLVy5lEC2CqH
oFvlrW2+1AX8s6Ln5dGmZ4Udy8gHAI0n59NrN5DPTFoDnTIYZqyDkl0RFjs2
oKJWCdah8iRcdaxDBXwk3Ig5xjHHZxDgVrFVihpAcG2YsQU79ancD16kWHc6
zZCWOzmRvK8583gT95RWPj10nRFX/mqsIq0NHdJXXHVwXNro0VtbCSZQ2q0f
YwipXZtso82LlMqjEe9vRppTzR+84cVYVrPMjZV/6a7kBOVy95gjIyp41Ses
sfV4Zf7PqerUqq2nQir6cafgaguo4V1bDOrAV08HroXqakxr9Y3JAHFA+SHp
Saca0FDctcb0Wkt43SL2+imhfacZ5pB9Iz+8emKFgW+8WgUD6tGbtu/RCBt9
dK8bov3eVpd2TSl8UoZBn+2zgwF2Y3hMZNXHmSFJOIw7RD99VvBRkXAB1Xf/
daeVcM247lZfmwSGRfWN6HW3lO2+NtbjPrlBuaXN9/uDwIr1je9AMqwdRT3h
cNW5BGjjey+e+L60gmbv6/D9PhOVI601DhXxSMWrTDCO8sNIe6Z59U8oT0Y/
BK5GWU9otUEBRyrmQVmeP3rV7oMK1/5aKx8lM9JOhGQGrvS/Wi2auMpitx4H
bGxcMZ+NqK4e9Y1VgTjYgIJvaaUAb466lURAE8Cbsb3jrt7y7vi9H+xUykSv
OPXEo2m9X3i9IzO94jVqIZAIzr5rvaJWCMxwpD+91TfAFTLXsaXND2VurFyL
Ddl/9qrtDMr+9bp7nejKfLRxcPTTlrbvMGhHoDua2gaf1KMAd0UgWrlubB+T
EOpFIKc0CYxuDRe3vEnvH3TvHVzX8sq9KmH0h3dPnFH8q72fz0OTiHt/Ssen
LR2+r+05tP/CpbXvUkYesLAMe/0H5bZhxuB0qIfB1gy1vRq5Q6PlSVBMo1tb
TM9ubXdUB2K+dFek1/o2uMMkoEiYC9EfDLfz0VA1Op1eux8OfHu9qka09v2a
gMOUZ8rAzg//1xD4F8jQLs1DMY4l0FFeGA4XGFS8Wgn18exF621U4JDTWqgb
PIsePePcr5O7yeNo5CzLOZs/tfGMeoHx/yjo3qPa6hyrU7oNMxKmQwdOCllc
jWD7p8OnR0x/SK/lo3Yy7hXaHMbMMmyiFHT42lRjaeiNYU5l1p2l8JJcad3g
iKoxPM0fa3yYq2qMJMTDC48hp99d/7R91JxgPbQmP5ow0+vxDN+ggauf+q4s
foJEjy8T2l4rDU5/Xq+6wvhuRLH9DlYmDIcZd4yhAd49eU2Gyr7SMVZ3qCEO
RkXFhw7A7jVU+rHz81ajQTDYKsMAN+ahDtQhHPNQbQjXnX6h7Li7EHWrlPYV
qJg3nr3CAMMdj9FxO24J56Eiuv6grWqc/lyMOujVe8q1i6/UCo2e6vz+ZNE1
rDF64wbWMFosE2Et9yq5qhWyWC83KtvwXsq1W33blINtX0KfWNj/pr0TNGKv
3Ehv/Yg1xloR6C9xRlXptQawtXnhvfRaOmzFrAdCBmGJvy69djXKdsepe2wW
xp1i3z9Qs79qCyEABW0+Olzw8fUrR1QZSe3JZPTq7et5Thjg0/nJdojbodxq
6mKv2j4rRqoa03tWY0u1aGOF8uiiw2huf9vxaPtYywvCVpVBryqF7WzU9Y36
oetjtSrhiS8Va/WDEu5B+zStKH/3e+X0KFLOX919Un7fhjJ447wWaoaOhNZE
dAmU/kOgCtBGRC9AX/tBgAEGRw0IZ6BBwZqiYvvVug9V54VzddHSvcHJA5Yv
t37hEdS3P2yvIqBrTeHCe2+qbsx3xFS2rSpvvHXrbgp6mXvLk82oXj+97q/G
nLAxZawiZbsJdMIUg+ECf5UzJ11Vpn3SJVgCHT2tSyju/WBwS3n4dZ5TCRXG
lkfFG0NFyqJbw9dvDR6998q9N2msrq+qUXBkLqiz2w9Sg+HaY/swyMHrIKNH
br0iSDG6wwuVW1p9X89XhdyHtUphh+8cdHFsz7w7aXFcDi+DDl6NrYYr3YrG
bhJ2T2xb5lJNeNW0eUjRvAm7gNTRtm2/0jV2N+7+5F1G+nx99Oqq0/7hoX29
H64rLrUr02KPTEGalmGBXcsZDgQ7vu63tqp9zuVGZZIwZTLmSkHplJErY7+a
0m8W3Jx6XngMR9tqdrDToebYyD57/VjO5GtWJxVCmQ+8ZzfSoUhr7L10vu1D
eu8Qr29oTWDHLPq9LOe7SwNWPRytyGMKp4y7eDwWcYIb5fc3hpOPDboU917b
r0hRtqRmlmJr+raPG/ozBf3P0DtT/R9jxegtthttPkYQ0DemBV+XtEUQH3Bc
l/0bSzqPIM2XF8pd6vl3ELPwsoh8mt1juyCKfoz+iqdW0nnSpayIsgj+rm+o
5VQb8ZfyQpzlfoBQT1xBWkdaW/DdvJrLfo8KxREnt9wps/cziNHf9swPjLrH
ii6LQAxnapVTI6QnAf2YfIfHdntpB0jrst9yH/DvlC2CyE/IS6TzPD/5tRaG
Zp4U3JEthsCPECjVMAMU+GaQgn0WoNCVDSm8zK8V6NdTAALBACJEWZxts6tk
ALIkZw9Alu4LKTz3+6OceiPpDBhVQV/w2C63pRQgvPV4yL+TvyEXIDzy1wAU
tpttBhTmLwGivdkJkatO2o6/tAnf2xqC78AQg6zpqpdHiVZiiRXdfC/ykKMO
cXTJ6gd2hc32y9/PJBHg8x3OE8+v0ODDByL42AVNsrnQjA6fEaFw2bJnyKFZ
dNcwdmE2Hi/no49LUCglFtm1u6ys6BqU8EqzXBm/MJSFPXBzoukPvgFGh10m
9TcIpEjWkLopz7RI6yjIWkoPXjNbK9cSPrYgx8OnmMAMZ7zMWNI1pJnq6BNT
+z00d8Y64HA+2hL+W1bUMspzE0mOIZ7NkRpS9GPZEna9iMVkstjtdKOb2Iss
WdzZwXL0nr2VP3xy2YxCYlrvlVtz7TbRA9Bb+P6l16sN9lpSZaoB4rmVXDZ6
Gz5gGvqggcNOR00hJ4zD0rsI35QJRx/ubSKhD+kCcv+wIW5n3+l0h0/N7mQx
+ZdlpAvEe1HVuBg6jYi+7/p1J3ZFoT/tU8u72VHwgom8dyxD4XJXkRLbNxyr
TMrUhKEt712YqXBpB8D+4QylYzpeC7uedKxFKXAEbl+ZrihfAfa+w9kJ8HpH
SmwwvGyf0XYKJpbudIELijNYmARvKafEBoKuY0f3KbQ7nIHkOODuv23JGVBd
dtu+X7lAsAEOuT5YlwQJXs3Qxu6svT02XHXuOE4fxUxve5+hqDyvcGrsG943
PJreuyCz7/09nhSG+8OKfYNgITec3puc2f9BqBhKgJxsE/AhY/sVz9DuR4FT
0+Q89gpeC3K80XZgJa5g3/AlntcyHwcfVKLUDPJGzjjZfX0j6d2jGYpUhSJl
w3DFMeV1W5fp9F8rN4x494R7JVDbxq9ZAwaG0nsdM/vfC9uGUEF2pOMasZtG
N3rfCo/XqC7F9bso2y4vMQZE0trX3YdXpnqv4mD3/Q1D0C24q7hqDLpdyR08
7uQ7CFWG2pOv5IT7TMmL6URou60K5+MKpw7IzMg5RWbs+impW2AH9SxQ+KC2
KBf8A+ontjs7EXJ7RbAS7SoisbOxy/1Bd0N3RnfAqXiAMOgY6wlN2djrVAIv
jdxM73YHavkBqKWvIlbpPBHfh9H4XorGtxr2Xqa5lVTHAGdFBkH+JQfmSgey
+gOLGo+ZunS/POq+0iAOq0bLU0S6QPWgo85OkVqSA/KoBdVB+Sxj25l7vXDi
ENnEs7LO407/iwmx3ZqwHHv0luNLzctaDuLDb+JJVl34TC0Hvj+jIWc22DF9
VbEXbBV0gejtS234BeAz+ar3cxJrB6LWoY+IunIpbA1Kj4N2thbFhoUspfRI
QDMXfWjLjIo+yuRBp875gtLJL8QtgVlIE2ShEDNqpPp+FylILlZl8Fm36T+t
kYTviwM6gW+yT7j8aCBweXdoimV9hVD3fQ5CX9iNRS2T1VeZjtcAxgztH840
FZkHchx+BasnHxRzgXA5xMzoH4/mwZSxlksfoC+n5a1rhDflhq8pnA9Ch+pK
+6HtIfCv84oxLa/J9e+yGnpWcURnyjVV3B3orY+vjrVZTp9y18u3U3VD6ZpA
eWWB2XT6L27nFKt1p9wiHALsrepfIID38N5taItEuXVMV8OSh6tQoYxdPDn+
mvWdsbuvC4V9izPJKBrQQ3+mEOaYSx1tlug6xTl2DtptQUOz1z3WGe32Tqon
6Dc+iJ6ov+GxesKA5y6S9rDv0ClymgWJSJfw4zSasJco9jLp0CXmcGpItYbA
n2I4lXIdxD+LgEPQ7wh8JtKVmTMyN5jK5IjfYPeYmtFKL0bmsnV7shzqsxDN
A7hpTx2Km+kT889E5+ei88N3l4lMHMtDXZcL35WODvoar1bK4n7k+u2lnvRH
X50aYzksIT38lsO18svPoJtbEl6sCIKPauXi8CDxO2Q0zfTO/yosRyuXwxKd
qxYj8CNllicpIoexaUP0Stx0TvhoxX1d8HuxC/5eegN/h3BGVJFD1TkC8m/5
8rISgzj0sIIxOcZiev/Jg+5MFQ9+iymNB3BJs4PoGjonTYk/ow/cUdSIdmEi
GG77TB2WMN5K45boQ7H0HVl4CeJgBL9+Af/rViIFbxSkVeC32we2W7Lhbxs5
jo08GB2ijfPVgfL1D5QvdcxedkwcTBI5eCqrmsJR1/XQ0uXO1vXU/5Jw1weV
5yIZ2JJFVL0W+lKu79dEwt4JbSJvoi9oC7IN+acW13w5zCNcAsgjtXQs8uUm
ZXIiybDB6zleBnb8lzxZS85ZGi0nVX7b6RNpriPS8ivdQu7+ya7kdRmOQSWy
w0SpLAopk02uzda6QPVhYM/ky00e45hZctKqmX7/VG/6Chc7u7LgEAXPJ6x4
3tqFI9gQXtAM6XIO4mKUXIu84dCpHmJtDbtcKcgOLhLsOejHhKAgqf3jkl+y
Xt5BKnSf1Ad44ctwsxNfib4VM8M57fA9BAofG/2pRDfXMUgaWshdMjF6VT7B
5bFoNzF6AZfawCI8WRFnYc8gYjIx63FG4SyMBAt9a8EEOLhVpUco+Ruw5GD7
q17k2c7S3MHXAMqYiRjme7TQNonICfm4JOBqfJboUK4z8liku0LrilsMh4iH
awyJDR0sR97Al/Lw88okBlQnYiIClLtvWlMBC6gfviKgUU5PrGWJ8LPRlw8n
3uGVWInk1jUENWPbk7jZJfDVSbnVRP4uwoNk7LVi/H3J+VYXiE3wtTN1XIOO
s+ploQ8ehg06fsa2MWdkGvC1rtMTbyaWaPDZd9jLx18PejpwVydIcycB5wv8
JLvCnfEG3YFk4m/pLq/NbPaNC2B4j1akk9Budw7WjU28PY2BJq7ialtv3TeK
a29sP/caxZ7BcEITgHI9lgDaRqez1Mr8ajMVKRi8mIdfgezxGh3O0PTDWeu8
UVyfzrjhpbb6W1WIlhfPxrMClVkLvTKocNK85hZ00tR0bbSr0NuKdjOmod3+
RxZmWnZmMkm4LMs5sNeh1gWdLq+tUG9ygn1HFsPZF+8/TkRnr8zAobO3jS3H
8AdXkyfjrzk+5ZGOFiwvbGVhsWpHo5tnEX4n+4nmSdSaZjrLN0h091oGm22R
zHhsqcqtEVQE6QNHHcKXfLIqt34AP/PBMQDBPg8TrMKFR/hxlRJV/rECx2ng
6AaO7gj6bUX0b/w8osKHfykEbJ3AUu0H4CcaYPLaAeAwkcM8pj0OB8uMfQC+
DvThN5bWTII/J2B4e8E/TQWnWCPIMIDrINi6hDEOB0TVidj3G/8J/qdPgpsS
sb4Mwb4NOQ53UMEf/gW+BMCNQP85+DecNG+ECg7rymS4mIj1TQDcYBKdowCu
B/rOOIyvcfgFFZ1lf6FzTwWP/gu8j4jRzcJh3+sYh6sBJZuCPvzihckk+jMB
3AH0r+IwnY7rP1gN09drHPaJpXF4tBpm20+4P/UJ9b9DDdOLNh47P46fr4bp
3xw/Vf8nVHD7v8AvqmHzeeH/tDuE16rgK/8Cf6iG6SsMP9WOv6vop/yF/iiA
A9dGcgFccxKcQsL4PziJfwg3ImF0Tv2Fjg0Jm68CP8kfgJ49SZje7wA4cxI8
hITZtxs/yb4AnkBCJr4gRR7XGxB0uwpO/gtcSsL4gz6uMwkO/9YDwc7i0Jh1
NAZ9+NUJRycHeLC1Z0fHRidGh8ZEbwtNjBbGegljIwJDo2PhP88nKXYjBM78
8xMlKxPjI0IFvhGJyyJSE71CE0N5QTwePK6ICA3HTvL+C1/UmGih3x2JSI2L
2JhoE23rEx8REbgsSRARH70RHZ4YFS9MUX0Dxzt1Y0QcZIfH25SayouLiE8Q
xobCr6XwktkboyI2buGGCeMTvwhN3Bi1Co5DaSckJIXZpEQnRtkIkyPiI2OE
KTbRqmkTQsPD//XUiqTYxGhBBM8TyJIYMZmZKZzxNkUkBoXGJyagpJL+wyyC
pJh/c0oQIdgYl2YTx452xn4mTf+P2OhIYbxgRWhsuFAQqNJXwpIpxuI5Ojo5
OjiHOvEiNkY68hxCXcJ5Lk4bnXiRzhs3sp0iFzg52KPW5HkuiU0WbkQHof0v
4kPjgAJ5nqExMSjAOzUu/k+cZREpvPEvDnnHxwvjEyISJ9S/MjEtJmJVREIi
8AJe4KqI2ARh/HhXxedGaIOJAX5ABkAIU6hqAJwPtTbWBcr803gYPgB5J0bE
AwurcMZVBniZ0Bb22ZroyAioM5uERGAQ9NxUeERsOAq1tbVh27BZtk6Odg4u
YeGOTvZ2oc5sB4dwhwVObBe7iHAXezsnR2cnO4dQx0i2Y6qzI8/RYR7QVEzE
vPDQ+JTo2C8CJz7E9N/7DJNNSgwPKjqA95fICuD9f4st3tTg4v1LdPH+TXj9
TXzx/i7AeP8hwnj/IcR4/z7GeH8fZLz/EGW8/xBmvH8bZ7z/HGi8/4dI4/01
1FTGnhxsvL+JNt6/hBvvX+KN95eA4/0l4nh/G3K8f4k53qSg4/1N1PH+Jex4
fxd3vH8XeLy/jzyequbwVEWH969VB6tV/wfqxU92
"]], "Linux-x86-64" -> 
      ByteArray[CompressedData["
1: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
jHZ0I2GDKAO6wzJm5c3CO9CEgTgTCgm6C3nCnOOQjlyEprMncs1EQIQxOM89
6UCEsKdShGF4hQhX/sDxDdXzMzETBOJuL6tPh2w8NJ1ldnsFmmenHXzQIEHG
+CbG6tC5eRtWZB+h3cZ41acLsIDGPcHROYbzjwICLIjYlzk9Hkl43z3BvBwj
vaNGekG1XnVzM2uO0GB9kkCy4NUKnumSmHkgynIoYjvifkG95aPbwV/Z2mhg
eXCMesmb7pWp+BGCcCFebMlf2EAnl1Kg6/hSUFm0YxeGlYA2rlj8521QYcDF
nEegiq450ayK1McnldnjV1VF4Fax4l9qsOkWWIEUvuZUHoj6Vm9c0ZD8vTp+
jtVdS75VXC2v+MBZxJvKVZVx7LTSm15o5/1hKVzEc0NX3VYvyfvhuzNg3o7v
qWK7FQSB9yLKdopVquu8HQ+pbl7z8l1BuPGbp4xjSViFN5eserPgOrmHqSmx
IxIE9YsoG2761VLqLTGOSAWyaENFNP8s4GAY5eCdkgOzRZgrDTbZQieQz2gk
k6csztsYQgFYJ0HWCRy9K6Ml58C6B+g6kZpiXfwidmGDzWm3JbJ1z1mc0aeN
2rmgIotgLihCqGQtUFJ5UUnl8Krur66T/xbLqCQtodCqayWW7CVxtX75K68g
iftXNWXi5vwS9JWe978EWD17WGAP8zYKEnJfAB/aSMTOOuGca8bJ3CgIAicI
l+PChNm0S97dDMM38NywEGw6VkyLJCWpkEP1OiWGAioOC2z6jXfo8W7Dl5qk
9Nc8FnAPSCNUr5thBEohsgo1OS/jcsi6jHrgD+LZwB8aYMQfA9cr/TFX9VnI
8UCjvxm5BAyLco24KSl0/+qDYC2eugcuyrXO2CjYk3eQxayfTQLLC3nQkiBe
asZWxL/FKgr/DtyixHda9V3I8R6jtwzHX7ZwyhkbVGxzQ5ozU0gXnEDF9oYv
jntx0qye+Jb0DBvLD8RhyahDPVRRONTbE1BwqN5HibGskkvJU7my48lPpoTI
rW8ygBPytiqdsFO5xuSUGKyZZMxFWMbnpMLM3/pxrjjsCbM3mXw115fEBcZW
Il1A/WOUef42BbE/F6t+G3qcPdfbBBU/RhW7im6ba0ZS3YnDSrq3wWCvJCEP
CtNQK5iVztIA3OaZKpWlp4rdRV+b5whnb8R+T7sEp+fwJnqwKYApgSZK4Ccl
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
ZDS1t/0sIuq/915sXAwCDKkvyvjy8JM8GazsaxKSPSNOVQ+eap2qXK6NLLy0
62bhLuep4U8XrD5szA7HzXVvm+Pl92rTEDDU1YtZJ5GoLG1KpreOVlcltiBV
wc9DZxzeYy4Axu7HG18efXKW+PP0FGR8Of5J/X8AtX+YQbb5LXtPrGr4l9ip
+vuVf4gPiOo+Ij6X37nG19KQntHvu42v7UF7ZYnG1/5Aj15MNnYqCVeYxOmm
KaDSXp68Ghgv7Z8qjbKBUbbpQ9z2F1NPChc5wmREgSf7+k/2DZ8cGqq4OFrx
+3gF4PDxSKxC3aP6V4eXXATFxO5dq4DN9J8dDW+RdwboX+q04c99/SPkS4px
0/uJ31MKOqPG5wKDfRj/6QPV2Om00mDHX6dtre6abrB7913du2xqV4fLXUjG
A72P29459eRCljUs1xX39OOpikLfeOA5otaBdq8ji8W/gULE8aJeturuk3uG
hro+5LRoNKOe92JvxevwW693Vb2OGr86PEmR5UhuZyl329SuiYm58lDWxJ2s
jjd2OiMjzBlsWZV2pvoOpBAjF4ix4sLh2Bmx8O+UAqwsUT2PnpaompFEMxEp
dQl6g172KgS9IgR2K7LXJWYlGTn/b02YHH3Xj57L+g8kBAwkfe4qyzpWBtXt
z7xr9WFcY1FvS1yrQdPqls0R5V+leD9Aq3iHFGnitqmJ1AuYx8j40fjW1vEz
reMdU++5AZ6y06zDIx/O9FV30J+KkWtKvXHgnMEDOY/ouFU1LvqTYCkrzxef
7QqTXWpK6JQ6Hpkq6dj8Csqw+3Lyu67LJYaP0UavVCRH9Tl+7qrMOq2qONMu
K5z6mLJed/rJfWXL8temO+hi9eXfrZglmZjqs6xZZD8rkJJzZCrIlkqg9n/8
x/AcVuBK3qSDaVPA38s747UZPiHImUDMZs3ML2cCyaZo6R9b+YF63TBvegWx
s91rtd0Xr/x9qLo0+aYuMnn3zVFwhoL2toxSnc2Ap/6x63RZD480zc0OVNdB
uxAt/723ddetql23hqYqqoaiFPicq8enXqQ86zRAa9WoT2UgDAdia6JOz28d
glB7dB7i7u2a+lT1B08kT5yxZyajjK3XIRdwbjWF01Fahqo+5EhFikxZNTBZ
vcsNKcl/S96zvAviIgTsrLo4cLZuwKh1YNvvU5uuLvpaEZra66ZAUf4dubxt
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
95quYlkc+H/bqQ28
"]]], "orcInstance" -> 140373448223744, "orcModuleId" -> 1, 
    "targetMachineId" -> 140373447970304], 5481287872, 5481287664, 5481287744,
    5481283584, 
   "{\"PackedArray\"[\"Integer64\", TypeFramework`TypeLiteral[1, \
\"Integer64\"]], \"Integer64\", \"PackedArray\"[\"Integer64\", \
TypeFramework`TypeLiteral[1, \"Integer64\"]], \"Integer64\"} -> \"PackedArray\
\"[\"Integer64\", TypeFramework`TypeLiteral[1, \"Integer64\"]]"];

RandomAsynchronousCellularAutomaton[{rn_, 2, r_}, init_, {t_, ct_}] := 
 NestList[
  caEvaluateCompiled[Reverse[IntegerDigits[rn, 2, 2^(2 r + 1)]], r, #, ct] &, 
  init, t]

GraphicsGrid[
 ParallelTable[
    BlockRandom[SeedRandom[567]; 
     ArrayPlot[
      RandomAsynchronousCellularAutomaton[{#, 2, 2}, 
       RandomChoice[{p, 1 - p} -> {1, 0}, 300], {200, 400}], 
      ColorRules -> {0 -> Hue[0.15, 0.72, 1], 
        1 -> Hue[0.98, 1, 0.8200000000000001]}, 
      Frame -> None]], {p, .3, .7, .1}] & /@ {4272826020, 4242057736, 
   4265795970, 3663321792, 3953790018, 4020250803}]

These rules were the top performers in terms of having “closest-to-majority-consensus” average behavior. In the pictures here, an average of 2 updates per cell is being done between successive rows.

If we plot the final density as shown in these pictures against initial density, here are the results for the first 3 rules (with rule numbers 4272826020, 4242057736, and 4265795970):

&#10005

caEvaluateCompiled = 
  FunctionCompile[
   Function[{Typed[rule, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[rad, "MachineInteger"], 
     Typed[init, TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
     Typed[eventCount, "Integer64"]}, 
    Module[{state, position, substate, rulePart, newCellValue},
     
     state = init;
     Do[
      position = RandomInteger[{1, Length[state]}];
      substate = 
       state[[
        Mod[#, Length[state], 1] & /@ 
         Range[position - rad, position + rad]]];
      rulePart = Fold[2 #1 + #2 &, 0, substate] + 1;
      newCellValue = rule[[rulePart]];
      state[[position]] = newCellValue;
      , eventCount];
     state
     ]]];

Should be compiled for all machine targets:

caEvaluateCompiled = CompiledCodeFunction[
Association["Signature" -> TypeSpecifier[{
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64", 
"PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]], "Integer64"} -> 
      "PackedArray"["Integer64", 
TypeFramework`TypeLiteral[1, "Integer64"]]], "Input" -> Compile`Program[{}, 
Function[{
Typed[rule, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[rad, "MachineInteger"], 
Typed[init, 
TypeSpecifier["PackedArray"]["MachineInteger", 1]], 
Typed[eventCount, "Integer64"]}, 
Module[{state, position, substate, rulePart, newCellValue}, state = init; 
        Do[position = RandomInteger[{1, 
Length[state]}]; substate = Part[state, 
Map[Mod[#, 
Length[state], 1]& , 
Range[position - rad, position + rad]]]; 
          rulePart = Fold[2 # + #2& , 0, substate] + 1; 
          newCellValue = Part[rule, rulePart]; 
          Part[state, position] = newCellValue; Null, eventCount]; state]]], 
    "ErrorFunction" -> Automatic, "InitializationName" -> 
    "Initialization_667648a7_ecf6_4a9d_97c7_f8cc07f5743e", "ExpressionName" -> 
    "Main_ExprInvocation", "CName" -> "Main_CInvocation", "FunctionName" -> 
    "Main", "SystemID" -> "MacOSX-x86-64", "VersionData" -> {12.3, 0, 0}, 
    "CompiledIR" -> Association["MacOSX-x86-64" -> ByteArray[CompressedData["
1:eJzVfGlYU9fW8MlAEiCEBFHCHEApKmIYZFYTZgUsDteiogkICEoIMqMCGRBw
BLSlOKBgrUNvtbQq4EgCiFQRUaxYEAJCRYsKFgUVMN/e5wQKvb33e9/veb8f
L89Dzt7rrL32mtfeZzILE64IwyEIIlqHIB0yPU3QRHTBfwzokxEE5+Ep61gA
AGoAFkZlz1y65kbk+pGLn2suFwXAcWZUBHEB5zXxZgge9GeAf7LYooBbT1xC
otu5HMBlUWepUfRNiHvCREbeeI8Dmh49dDtdZwrTX8MuPtcvrtbMwksnZy+d
ewAfXk/5UZfl6ZPL+hlnF5/FnGM1J992R1lIAetWPaC7i4UgqeBoZ16vzgrf
STxocTIL/HRnlebr6gTs36uZ1RNAf19thGPSRXhPJIFYwslywWdRU5as9FI/
OD+wKm0FlWEmmeGNZB/gigEhChlvZmXrS286obuLaMYt8dEHkIX7aQ+U/SL1
YHU+/3QuUqT8HMc1I83bjbzUO7KLnet3S/lR1WAUsOgU3dl4rsdBO+sZmt/t
RXS7DrACGAjy4CHCOaqD1G8kVp+gsvBij51+CEXN4H4pS5RlzmURl4bPuflb
HMua8g8NjpjDyv+OItL5cSnOmb6UHP9VF96K8dImerdV6B8uOWn5O3OvWcWf
4B3OR5D8mP2I69LD5kuLMp5uO8GLO7wrylJdLevgydknsn7+7PxnH78FDfXp
yGF5kIVh+2321S6rL7L1Ec5V8xDk4dybT0ksq+df7L6pVeYcVEa15+zK9q6c
dSZYghj755eEz7YhE0K5d+xCKOTNNGKDLqlbRutna79jaf8WpPGar32OTnvR
Savia7zrpHVztF8M0F5zSFtZtC629m8sciKfHC+SELln2Wqc3Uekb5Xrfl+T
q8w0DqeII4NzlUn5ZsTDoWYZPx6iSHMTR1UKLIgTMbsQpg89N5QYWrrWwMjP
3/YpHlnORJBVwLkMczuV4I/MojqyPJCZMvwqw9xQ5IAWiYFoBglYu5FgR1Yd
xNAWEYM4pjFNOd0oPodQLeLnxBflpEURUvNz4pk5iUU58VGEBFFOMoUcjzSY
GT0ONbmNYz3pMm5lGT+RGz0r1WrAmbSWGFeLTZpw7Jw4fk6aFVkUl5MSRUg6
k5MsynEsyYmjk5OtctKmDpcZV8uN/83wM+SUopw4tmpqx6icuBJy4sTwxxwW
ji9AdvWgPMu0EWdk5v8SzkusIM+LER0OLgl5Kydt1BepnXGk70WsDffWITNK
WvnO5DLkF1LPB4iHiyJw8B/5BLwaB2+NGMdwzHF+KL4ObkBOCv+I4gwQEBoS
TfBAcS7Jz+D5uDNaWd7IHdJTvChcKlYHcMP3ZiMocj6iRSFIjG+HmgD+O7km
t0ONHgDGMFnMjOqn6kGaGEdOKMpxZJNTo6RAjds4ZJlRtRjIboRUG3eUaj0s
NWkFA0Um1Vyjx6VGz/6ixhQK1MbfDj9h8iTUpFpudPtv1ciX+kVhispAZDgW
zoBOQozpL4Nog2xtAaL9RxCtO582GEQT8GkDTbQuDk3kkkVwa/B0QbLcrnka
npS6FdW4XxS7yDwNL3o6NxFckWd02ksQbgj99QBNUEJ71wQGkt7SaU9ltN/Y
2lOHV3o6V/674SCEB+m0Z6qpSa/otLeiP2c35IRhehYBw1n9L/FJThwSRzLk
nPiT8zn/SzgvScWcRID4cUyRxDL5e+D8z/kEHAknIxvmst9jPu+oG0Yn4n4q
ZRLMKPlaRH2iTD+GdZuPNPKlYSRcHIkrIkYjAlYjB0AIYhIJaCPXwVlk/5hz
Boc7Cmv1EpBXTcBxWjaHaUnB2XIpu9XFtmbOlhSynZmfJfE2sSvYUpd8waGR
+FRsHi1hL5+WvflHS+L9rC6dMnWuo1mTJcXQyey5JbXjs0CmCZtvSQmNC2RW
c6h1fA8OaVrWP6mWxEi2GUWq7sHMlxOfUm8jWg/4HiWkaRJ7OK/lDhnB7b2a
W4nUkUJOFUE1OrJy4vJztvuRUx7zNX4DrlhC7m8iDbDIKQh5G5scX0JOYJFB
sMTHkbeibQjEEECbT04sISdzyIJ8GviF3SbSMxEZ6Hcri5zaRHotIm8D1sIG
omcv0EGdIi/VpjB0PLL3fongHDyKjv4hv+Syo6IrOnkNbffPIfZ61PCMO9y7
A8y3RyVlLPdGksevUfO2Hj6GLz3c5U65hf+Z/1Pw7aRN/fkiC3ojH64jwL+E
8NjM2Nf8pBy06eCfSC7zjD/pbSUFmmdBHBrfT43kRUA4CATgkRIcYiTL3009
RkZ0VDgcKeIsMvvFqKc6C/lZRaeEi6LNOqpBQRdY6F8nkr3KlRHKQZdqGJTM
Prl2z1ICXqYah0BS06OCjOjIxJ8MRz0bJf1DBEoNYBAFAa52mqxjIjjRBBaY
brNXORvQxY2DAKmv8qI2IkQOHuMUQeIQzznuPzYA2cHSkDPB1fmfduLoqEIm
ZnwQoUlgIRNsiAjMFQUB2SQOYj0xJWD+d/3PtUSI1WTGLjklyEgIwoYyslRo
8ab1WggSBdE4KrTfFjOMEM5T1UgO5P/3nafcAT84qAqcin+m93aAQJzE/3cu
uz8iFBFlMv8n347iUFZFE/xHvlBXw8bgxvnftXKBxl+Uf+X0GV1szJ+KXaFJ
InJwk2c8dHgZjoKoT54xcvq3eDoybfKMr3evBTNaTdbYuRmPwIyrJmvMYP4/
p4uQMxMgGidMygk10kBE1nREAwDsTIqY+oyA/L3qlr51RE+8Ln6eD7JZhLcA
SebVzKAwoohpAQf+CPJCETjaU0RGtV1Gkbq4hbmezlk1ez1E5LRUUDu3Up8h
2liRsKd6gIJn3FhqFMlWQ9Gkhg2EhfWeC/cSFjak7gW1djuFnOaXExdH3hZH
SE7NiWPl6DcwaC/z4Uoxlq3dPUAbCKLZ02uNO0AGNDOuDjWJZO9yuyZ1a/J0
uUhwvyZ1h3VoQDeZT94eRXaKAnmT7CSCaSKOD1IGOfm9GiCbIsrhUXK2MtH8
XiS2BhXxdSftnQxUOEJYfalRT6lRA/r7JNTotplRrRgsF0iP8j1d6j1ditDf
yhrnLz2dcwluX9bMB5OOStweEtzKaqi3onPignPi46SJUeRUfk4iKBslOfqN
K7VfozW7Jx8uf7tYNFDI7VlWoGyAdYPJAzOjJ2KTJ51GPV3Gv+NMIpnLncs8
XY9K3RqCZqoE4eekpJJTi5YHvM3Xhhow2QwXLs/NjDvkxhk4E8iwmfFAKGnV
TqlzQ41bmedCoJDRavceT7dc0K3Ze1MDSJqTAvgBqxArcnyROKQbVHRQ++GS
wkL+gGvS06X3uMu4AzDgp+9WJl14UWqYVeO819Oloca9Uu5SXwNkdG/wu7iV
QgZcbQUKDM7Rb6ujveRrv+oEWVX7N7ia1x4KosXSad1suKoY7CSBdX9PEO09
27Or1QyuewZwKOehPg9/rXHOgkqb/9jTtcHTNdfTFUjd5LmoIdg9JTUnDayc
/Mjb/MjpVmAviaSBOLADx3gTP5ZnLlVfPd7Oj2Uh3ltQcN+rhG4V7m5r57E/
3+wbZ/p15KAhH/lCGBMZHypgeQoFcdExEfEsOxtbOxt7GzYrUhjPCgzdyPp8
JSuYlersyLJydJgXFp04m2UVGJrGcrZm2bHtbGevSopg2dqyIAj2WbYurrb2
rraO0NeJcqqY7cmu9+NLVoRuvLAlYYnF3IRvDGcx/7i8faP9Qc0tCT/OPXjE
f3uC4SzWiisqEOOf/hstRk74b5lrOMsKOQviRh/Q0tSItwL+SN4WHFfkuRC4
VZmnS1ON5JlRXanWcy4Ml2dmxpidZzh082m9QcB9tHugE2n3BtHelonE5DQr
1LtTc7Zitg2OO1rjfBHndlK68EsCmOM+SEokGPcN7mBdeBQ4LWFhidQdOHB+
DUxLoUC3MSAzTiOeYGiCDKQNE5FVro5VDkP00+xsjzkSO6tD5nMczb+UUTha
ul76ukFiXaXqL5PDyA8lis5bIPbIqmI0y70BWfc6OJr71ucvtwyYB4Fn6Jpr
y+USmycezghvWWhidHIEjxeYlBgaFh0TnZjmGSOMjeAFhW7cEhHOjY8PTeMt
iU2M2BQR7+jAs/238P8hOq6sWcmh8bYOTjExyQKbGKEwziY5YmOiMD56W4RN
RGxoWEzE351JiQ5PjPrzRHh0QmJ8dFhS4vgY3sq0hMQIAWAvNG7SdH+2/rvi
/g/TU4m9wMlpgrKPMCb8b0n/d6b7s/3/hyzGt53dApgPpmV9S7WkyJjf009u
vMleUq8hdl1Nnb7ze9b39hypQzA3ZJOIFF0mkTXC1eTOfNu5pHlbVtPb9Eu4
Bt+zKjGcRAxnAMVRe1OMMzgp18BRj073ZIrkFyR0KYa2V46Nqu+kNrG0HInN
2SWtrJlNJO4uR4rmRbMmR2IoyA0M4gDpJHsaAyfkaIx3cJoyw3z8WQ9Jgxcd
tKoDiMg13OwGLyO044VHOzNBx8OXGsHfhVNTswuLCzajkDbyNTbmqxnblnB9
SLpGfr7UmkjsGNP0FU6NGI9LsSDVT5fwRaTvOEy5cWItIuYaBnFYelk4qiHd
k4PUaOH1RfJcMS6LxVx1mf5Sbu3JIlqQ1OhgzG8eC/xZVKcGrn6RPJFgXMRt
KiUkk7bm/xrafCLWl7q9hJTcxCCYfi82Dme172d+51gv3c+0dqqXUk+6tQWR
KOw2eokn259NXTXzJMu91DaooEgSZw6PJZL8dfB4RhK3GB7LJPSN8FgpyV8N
jlyZlJ0M+7IslkbpfQbhBPk0BycOKSOzYzhUHI7qRMlASBYkEiLhB931DNK8
QK1jUFeR1QkGe3nsHfLnalK9vWui5pXuEz+KzreMrix5I3mmudY5qqekWHqK
1uoeNVzyRjqkfdgvapZcpmavR/iF+8Ck5L5Jxn2THfdNtt03Sb1vEll6KcuR
tPY09/BDk8omk2tNJjeaTLqaTHqaTHqbTH5vMhlsMhluMhltMlE2mZjfN5l1
3yTuvkmCbZDxzEw1g8zf9DJv6mV+q5e5Uy8zYsZa/6iNJUkGJ5cY2ERdK/kg
mUEzcInqLTkrddRuXRg1WjImtdRZu2R0esjoLyFAkCX9Ip/+9979A979z737
O737i3Y+0mllRhWTog9kaxrMj7pRslPqQ2t1ifq95K40WdtgcZSyZFfWap3r
BL3rqDjxvJKtvIytvB1bedu28lJLD/0XCQyr6Q0vgAT+WFHyZkXGmxU73qzY
9mZF6psVf+rjZJekTvPw/KiukgJpMu2wa9RgSbu0Trt1cZR56Ve1/vKb/ndv
XpPzNXFs/yBge5qY9JIdVOBcKyyr4Xg/pUfJaITpuzxLcG6TThINwMmd85xr
28o8fam+c5/jgfeK58rKcLZEIvsJqxbP3MtkIhQJN0IH59pgx1rCDgtCWBRS
0RKR3Fp+n+FpqVkFfIQfpEnHnIQeQKSoiWyf0LMIzAY7h6UqfKa/3wXiEl8q
w+ZLApiCazMxxcDEFNOnyd0b7KwD2GEcOOSYf4OOA4gJEoiJn2sX+MsSa/kf
ql1hGI3ix8NI4oyGkQiEkROjp8ZaOkis0drSROaz7wRx5blcsZjF5DvL7+q4
G9vG9NC1den1ar8hNaRaOl0WJxXR+OwwPpzsH58Tlew7/PVcX2pcPu0dhysG
87zQzDG2ZSN0onS1864kyqnlbLqXuYdWzFO9J3LjrK5sxFTGLxQfkETTEGLB
rqbaapNIdSsdMv7nrc4vMaYuVi+VgVgUJdXmk//o1NbVrc+VhwKW9oqDRz0X
Eo1tB7gLRUQ18gNGTZy2OVcuBqlC4wNdB7L5Pg4kETWYRCK5THkAfT6AjQLW
s+ajehsljOvNW08c2GAXvhaomg9Vvf4JMI13FNCTiAj0tBkVla0zLur0DURX
2ztlW1V6y8KtD3KwPUwnXqAW6+1l6jIpEtwpvSG2f0lSLetQbQDQA/MkkYgp
/K0GsN1SYDuGJpoPrHHj+WCnD3vGBaopk6iy2M7s2Q06cca2ez38nxOhU/n/
6VTECacywK1tsMsSM4nNRgjF3KT0q+zP91q6y1ScyaPycWv2WhLl1jXMfK5K
vKLN+TXWOGZiLZvmaDsDKsoJN27PkmnjQv6yhbjV9k4QKZKuEmnI4Ee2P4vU
AwSQLwOs4DABFk0IcNcnSO8CFZQcuQMZkVD06Ydjvr8ZhSdQnZxxwJMruQbj
ov1a59agUwQ85TVrhpALEiR7xkSCjJyg98qnCdDbXEYa98KrDNoFYhTHQBwS
B/HjUPzNE/hjPnSDC6CAkORxhPIiubXU8Nq4yMzUzhpruUFibZx2TIEeFFkw
ITKiN+HCacTTtncQ8tZxkVeb9LL9m0hvNYHNQqDNaOiUiRNTfutbBqaMZ5Pl
HDLD0UZuE15iEw1Y+9Kbg1iQfIGsbFIPwyBl+Qxj2/za9fkkWNo2TNjxpdq4
HdVMxTENdk1cY2ICNb6AdMr2Fj3xLMgBD9UMjq6n2LbTqdWXucyBOE+WQRT7
TpnG9+MsJpva2PrTyQ9JwCpRgPAbEsriqT+16NtkeIGaHEce1+JIl84FYgLn
I/DuoyTglKOY4Q0mDJ9J7LK9Aza5E4Y3debqiht0Hso5amZNYv1Kudr3UHvT
4biBiXHTdxGf2d4pIW8fH+djvtDWP45sbPucGPMWSs6NmZC8iTQu+Vfm8m0N
dgNc03Hn+LYepK0e4Bzpyw2fQufgG044x+UJsS77IaYXqBkDE2LZxM+4QNwO
6rr+87o0GHJvSaqQM7Y9yhWW+JIefFvCyTZ8hLg38K+ItaotimYhOxlSPIHL
lsVkzYtU/yhqknBs6NpMR9ZDc5aoi1TqLuPXyhAOnTrHWP39xkIzXS8zpq0V
m04kBPiGbCzs1K53oPTgB0WhBPwCPJ4ZS39AoPpQqQhRXvJHAeIVqe8j1pWI
NSTJQyW6G8QNMzlWyN6u7M5FIOlxpy+doBXwPqyQo1tvka/5hJCtRWFTKPxK
bq42m4mlztsBeN1DEeydKyk+VA0qUY7YT3tTNIu1cz+z0WPRJykef5m/iP9Y
xEQ5eDnBwdqDJd6R+kFm0yUMAh7hsgeawgs501UkNk67XzTLWc1OE38ZWQwG
c/aIkGzDrDFEyiAQAPKZzpn5BWuyV8ft5NeWyIAG2M679qyRrCqyp3SGVXJb
oQQzNpgxPZ9Lp+l7DhCmX+aI1uC/YnoiatP1PSk7Z+jH0vG2QArD3KJYuiS0
kDNLNXPzwUdFs+LUwrTwl2VeYOa4fejMurjxmUdnIgfXkIJzdyLyThNOyTSi
I0UaSjCnU5CbJd4sfiGiq6Kk+VV70axcoIbfv/FOzAJqkHlPqCGMOK4Gu6+Q
QKAG81mSUELYwuos5IEXzQ3z2HNNlrY6J3cZJWNGXisP5M9kfbEkfz8zo9Sn
OkuCLxVxtoUHM4wYBwEDTDL+eYHYO/5kwLbwKIYx7qCJfki4r2xmTs1+JsuA
IpHP6VwSZOHs8RkoMHy6zIGcLam3fljtMJdtp4UXseI1Lw083J1OHCRJ5xFl
1uJ5DYbUcjpygVgOlhE7Lpb8Us3xttO8KAPHnfNYF/kPwZKZcKhWHcbNoYm4
KVEfj5tf5sqPN9h1SmxAuT5wuARkeJsBD/ZdkPYPaBKfzf3ZWmwDyv3Zn4th
uf9efaLcH5ko9906X962ls4XeaKjqjUvley6cxTghR9gyByWkCR+8+kbO+du
1/ks/AHDU++zDA8Qi6zPJmIxCT8ei2f9ZXMuULvYNJD4SZL6+fSiK7lya5xz
vhdL7zGceRWc2ePYxMyvdWS3rQkuRWBmELvmNOIzm0iOOkgxe2tAisklPNTU
ewnHBaAcH58YN6jz8LZ1jctJbNwKGtFxfoe12CWxtmlM/Z9QTpHGuJzVZyZG
vdd5DuR0LcNGSWjE7PlxbP98mrFt0Emdubp0Cuk0HqsGHF9qy9n6pVim0MoV
aVH4hSXGp1zAquWRWDaqphWp/ji0sIR5hhUzx/g2ayZpjk6KH9mNou56CClF
2NmG+BCcdE12SlwOv1YEXco9/9CsVPJPBLyZGyu/i2TGka4hpebm8A8TPLle
JlGhS/VXltqy8jWj1MB0dmjcV04fj/vdEfiUQxFFOdsop7gI3euleMaxr8UH
ww4TCNwsE8r3EUsBKyZnzPM1k+HouSyRKoD4Pht6Igq7TP4wcz77Bb/SjK1m
XxTRlJNOQQUZEMvC67T8LPLXSHYAQYg7gn7vkvDEoYQTmnB6ut749L9HSnYc
iugkZ4JxYPoh8QyHI7Zf72faxe/S06D0SOLBmDCUZc7EmO82STIPRbzPycfm
+iiWbbPUPkOlhBfKTElzKKWmZ3ZUctbDfCNFoz55IuprLVmH1pAKWLv4UD7i
TEpATB2/kDXTT4tCJKSKQYqVaOHxLAer/GV0iT1I0fh9SKR6ayjEDp9JaYjx
Ci0UzXQNcyakfUDZS5tgr2yCvc0CSeGhCKtdBzH2AiSyR9nApsvMW34rw3y5
ScN243zu+Tuhvlj2mB5+aoNkjaRIlaq/F1RHFLJmRS0CE+yAOluEZpv3auPZ
ZvcRfmSk/mrJLJj2F6/GLQoOrTST6dkWRUSpfz2ev48cmX5oFn/XfmbQb7zg
bJC4kPCJxOVDGidVfYSzKVJ/A94SXR0zvmZdvGp7yDOAFKn+ZDwnX0/7ag2+
KFj/Ra7Z6oDISCvgSctIwBfMYPXiRoxXr++q1KsjC7mWkeYqMV4KYyIK+ZZn
EnVOWmSLIuIhDyUREzzwIQ97tQAPc4o7YyL1o05YShjSMFgol94qkXAi1TeH
lUjoUfhDuzSjwHyUmdD3NoLzZ1ZsEjyKLJRbxsKpnMFU1klfrpEceZ4r/2Kz
TwxkMGaCQbNNE+W1Rb0zshD3Wfw4gw1JdUDPn1FCQHktBnr2CEEZ2zahnAPF
othI/cSwzySqCh6esz5SPVkSvJPDRgwpwD9CZrGQB8VEoBqKYQVI5DZ0QwDN
Rt3uJ+h2KL+Jn3UeWUM69nwXUOljqNJ22zMsEBrHYGgc4yQ/lVwE0+PVKYBT
eH6OAmfcdChiYNdxaEwaMOagcURh52euYWV6ly4bQse7NOF4cYYTjrdD8uBQ
BLKnbNwFDI+nH5pF2QM8aNNQNgI0UvyBjAf8BURuooh+38mxSYXcvp6FGjJ2
wpCD6is2FXKt6yYMucMjspBvbRVCIUqvwCAJA4oqSTfL1/wdqjlDHbIhm2Dj
u3RJy6EI1p6fxtnYcvzgoVlWmq56eDlfyAIO4Pe1CPGhFgLBZNSmW0kNPuHv
s4UPSAKQ2ppharvA3gMCFOH2WFO0MgJyHlhyXcP8DlWFGgPJ8U0TkjONx6fU
yMS3H4rg7Lk4PmWN6del0IUeQBdqwrvs0VxKxlyoi4RLmpD0k3oGkHTeo3FJ
v8+MBJLOcw0LXnEr2YpFpwaT8Zgj7WcaPZIba2iAFQAw9jbj9p85V8A2MY5g
5hbJbg9qWMb2l80gTCe2nrvJfHiTo1aavOXNL2o3g0RBCLNGS/webMOl6y56
j++ZNe7qVN6Mk26F4PXXvJvUJfGgsmDZgU6yynrcGOVBb7CT7QzBtlxbuVF2
FxddIMbbHmYj42hsXd1v1LnsO2y9JEZAAsLKbVIr/bVpBKyhb0ZVI/zwRXTI
1AViii22EgkN8rz/Ad2nETb0eGNVXC+r3POtPSBKdFUDpZfqRH0pJflWaoew
ZYmefKreNW2qE5Gk32D3cucGjJXt3KiIi4vHeVjs1XQPZXXAm4edT+dGRel6
fKNO4PxzJauYRcSrET3OrWSB7VAc4c6AtkHInfcY9QG7GjUlASiHS7pAzezS
Qzd09Tz6WuNzTeM7S0PGTAd0z1vCMEDP+0XRDUxuNgH56K91/T6jiMFKgUjH
8V+eoRMbdKhdHAThkBHEKfT9Ps8QiT7ZaDq9fdtxxRoHYy+p7ofi/oVjLVfy
Hm+VLcfdPzc8Kndv5jr4FfReP9aceX5dGYTe7X2/y9nLnuXdoXBdr3QS1uB9
1bycjvflqAWS7wNo28gy5eU85o8Y7tjPJD+ArHZ8ePT6sPKVxaKwE4Qlal6p
55sXhf2ItvYrFoXth61Lx/oXhZ3B+6t5le/vzegOqLOKW8VJ7L8m2A9nGG7s
rlvKeb/Pfv3P9pDVtI6+yrHu8oUaUAC3quNbEE8HworOS2O9i8KEgJqToHuR
YAfWyBA8x4PW++K+RWFP0Vb68KL4BbT7VL/S4YqO/qoNphtlcHiP67nBYV7L
pfW0mdPpv1w5P1J/lsRBNaD4sL87M72/bjbHjxp3SGM5bnl6Hq4pka61oift
h8GPvJbLP9IBI+Ueqzjh6zSX4xixgzjAdcrxvtWmUIxhF+FG0H9/vu/UvAFr
bfb7Pd3utTsDFoUVo8J1DBdaQ7TB7YIGVJ9VfeUYYCQ9YNqPfsQVT1LPt+xY
rxhRtBUuKQOT9KYBZcb7N0MWwLlm9/WKj4qWGfPzV3GyFCOvLMjj5vi4X7kg
8PgRVGnOxcpkcEpvDfkn+hF7fvkNZfJri0h0THdyv8WQM9pyeW1RbiACkysu
5YVEYoopv9E8xmurmE4LAopxPddyeb43rbN70SuLSEy8benXceEcgPnccX/3
SGPf+xvDaccGPxT3XruhqBxr+ZBOu4cp63j/O2Gb09sAyNyx4Sv7lO6CPaj1
9wOTfJ6XxNL80YWwuu2Dojelm35XpJuW2Zf2qe/yV9AiXWntI/XFpCDofceG
r2c0vw0ERlF8YTAAMa9e7x/+1JKSnjthl/5RXvPHb0nuAH9nh8Jtg/LdOcNX
qF8OX/yVBh1nh7DtssyB7uHF9rIfYyyn3F01kmuMutTYsTYV6gczVRCkn1dk
7jO9M+5+DsreBWcdZZs1/BNG7L5LMPzGf3uCRcHW2TX+3yQsueAl/gZ/4qpi
+CBVdEoalW9eMVhcp2w9dW5DyVkR5darjkzzat/Xdp1aGQf5RykjykO5R/WC
rZ7+y/OcrZ/ZhP+0oGZNdm7ReXuO+WHc7D/W9faPVaWf7IjeM8NvDuu7weJh
xhEj2Hp3bbjgjjQ3krP7WlXalU/CNt+A5Z1nRM9fp7UeJX8vpptLzA6/yMv1
iLJs8/39WpVpThTpZH3S2oq+zFvzFqGIH9qt1fZr5L4+1i+sMwNzxRc/6hu5
t717RvAcVrWwbSja1PaB+BTe3P2H7cpdFNPLbcie9BnhrYg6o/wmQ3f0hvLj
awGPBQSs2t7mG7MBbQ0/8bWOh61bCe2+3x+QmdmE6xyNHDDc9AejT0LyyKVk
R51abK5Reuh8H0R60+o7Wmdm09VhcEI/H396WFGXXnv+S43czcU3tprOlot+
Nim8x79weO6zsJqansL3gY1Hrk4xYPhI7j7tYIKZF9HTodmUsbMpoDzvoWum
FQz2gr6Ly3oXHztSIfrJXda5mPzUoqUMek5KlTI5nb4X872htve7JoI+tjlT
MEhaJANh0QeC6tL+IxZiM1vZbxbPCoHXN6e8bi7/Gmu0zDBsWsVZ1btNMOK3
r6XQAAxJbKtQOB/Me/ycswLHONZXkfdYdwVueXH3ovhjuGbMRe91D+WN+F1v
0UNDsmNnwNAyZflri1OzQfid7Nu2bN1Tzkpcwbk+lFDw7yih/vK8ovfIShzj
/CAQ7WPseTSNZgwuCnuBZbnhRWFFaEidB63bsFV5o3lRvAR3XzVp82geSL9+
INMmNQ5eem3x2U2/afTAHRuUCwTrnoEJGceaLyq9svKKrk1RbeJI/Y+kVY/E
1sReB4Kd2bKEtg/CkfqtC2F4pbeUH1NeywuuFE0e0WPhg+qu3+G1xaUORYEq
xwKf6nuUCJJY86WMqzhDYBlx//bMXpfjLWmNfR/2NWcWNz9DTycJl/iBJHp9
pP4QaZUqCI+3pWc2D/MU5edo1iAXfbzRci3viYkXoPz4Q2zfWCZQ75eqDJDS
qPgoHMkN1YTZ3DV9pD56wrAb2jIF3Y5LgMnC+3a8cmrssejFEuax4ZH9yut5
wVVQ1xnDlXmPu0Cr4Fzv9byi+CnCrWp2NGZpZdEZ1PsBmV66Hva/XFpP9pvs
eZcECtwDDoUhp9996+tl5rAyvS11KonuQpOpJC5f+guJ2LdTSVxvy5xKYtDR
aiqJ6+2aAZNJVOYFzwB+dw4o5hzuLlRM54IxxaL4cJU7VIE0Cc6pfZ2iXmtv
tuyCzrTpCzLXj4jt+b5/wOh4l96clqFMTU/B8K/fbX6b2bIoLAiUqeT1LS2R
0HOPNlPrs5z3neurChzJ/VUbJNBfk/bx1DYa13uk6tmNJcfm4idLcTBw3TdT
pAhvsZw9RYpfy9M0pijCMfbEVBLFR76bSqJvaM5UElfv/4WEcDcMhvLzIFSq
pxJrNxX3rMe/Ccht/r7Wy/sur+URGt+Vr5tPfY01WoasYXFsG3tt4YMVWbd+
i1PWU2Zsv/gLbcqMKYJrhMnzNAvaBqYwnag4PYiWwoxet0Clq3AFcPcFjSO5
a7Sn0ol9MJXOvrYPU+n0181nT2blt0VhB6CwzsdADuibOvhu22dy4NLF/Zfy
3te/wYrbcPmxQeUGXvN4cXMbG67Yqc0BNddVOPK513u/c716E0U7VumWaYyG
2MOKff3OSkWFtw4IsV8/3hjJXY4W6kogw3IU5vrDiJ8WKWCobAfp4P0QWz1D
E8uKWmF8x1PyyckV6egikedhUdTHLd2m+ZOLQlwbXn0K4ugix1y0bm3r7a96
nd7jeOwFy+Bk/Xa3/nfK8+fWo4VmS6uvjewQ7QR395PGhKtKwR20UCa5Dhes
TEOL8b3txi2Z15y6QI02P3oq2sLEGdS36FbH5RIAGDkl8JwJBvz0anSIMRc7
5Vrxm/gk3jxEITS1XYEhpRGMAVL14NFhhuYsgPST8LDlP77iMjqC9Y3Wtx45
skp/ffHRtpa9mm1thiH6GwyK7xgZrTNYr2l41P+wGs3Pz+JP8y6K18dWR8nn
FUPC4V4yA4Td5WWDiZ8UV/KKokXLcQXpvasN+CBZKa5yaVOi+0rek1vjRnNS
Ki5Ho/p3CRyp/3X9ywusZpJfbtm8/SWdaWOKi3nMFrCiETRfEtCCJtNY8Mri
WRKsV2/TC8cXT2hlyk03Bkshx3PrBmE2hPXm6AZ0o5B8vs0VmD3vCRIOQjxu
mT1r2lOHTGE5DtSUSx2gAnYnMWVf3rdxdA+I3aXoufaVDkwJKfvWfQUrYN+l
VxZDTMRs35/+qo+5JCiS7+tvotuL883bNig/ZMyYWDd+EPblTLjgXeVo7H0C
SEHOgpZni8ASNKvloqAZAyiSl8ZBVQ0JYnIvUBm2XVeuk2CpAOvaBcsM34FV
HWNZ2xV9DWt0mQe8u0iV7K/mPW4Gug4cvDKG8utcfGS+HAD2NZeXooCKc+tC
AJvtw5c+XzcHnklvGz2Hri+9M/rcjinf3T3Cw87zjszkwrLRfz3v6C5V2ese
zlMMGfLhwvoqjswEs6dkuqHrEsXHZS1VHYpqlSF7P35qubZeY4qPDAnyiDB5
3QWVu5TwcHJJWA8K20JsRzayQXklLyQPnXDsXO9YVVtkCpzPITYVbjMC+05h
qqkQpKH9Yb13qkX29k8tiYJTRAAdSu9+ZgS57L48NgsIfa1x5JLaNCh+6r62
q1BT+1vK84L/4CyYUumTGo9A3dztu/b5kSFRlsOk5NR3qwubpXfsk2JIrCrC
bR829GUK+iqYiKrwugqVSYFtLDncPTWXr4dVpMthv2E78Nn0liv62tCxt4HE
4kKCC/SUu+swU3aXM9CVwJW7LVfzmEMY7Op17SnqS8nMx2ljS8DG/sz1fYWL
oc+0JWaWYUuxgbQqhZuybdFTC58AqKHu5NgfUGXsGx5CldH7bqHKLT/EKocE
oT5g8cQzTASxeb9Y4dtDRyO2L/nT4KXLqKs4nVcw4aLk+dj1wREe2ON2EH6Z
XHHyHl4RtOEAlZQOw150XdcMlDo2RXFZLRFM9q818fqN2Qk3Q2JSi57oVP2c
RpgFk5PgxhDDfmZ+vs+kXDnqTDiFZsP+o1XvFEMFa1vO2cN1fd2Lj5YEE7Ce
Nq94V9yobD1/N1FkQDEzZ5449CnXKivyO4Hpjx4wqz05v+UOmvBehDjdgQnP
qDfN9MdgNOE1phFWgiz6odX38O8ORiixpLEbyiM3fkU2u+aSZv8+curNkYrM
J747enTQ0y0vQm4pXatmqLYZp0cWV/yTzf8p57efQmye7b78eIB9eVbGwcGv
7Rh7vFg39/Wmnu9Nalc6Z+o0oGsUsLbMnYWWkORjI7kCbTZmfb9zzSQDuOXs
Too9AbfYThv6v2DSVS60Q6CsBHtSNCE0f4y9iJrwXHc2Btgm/AnG0NC5ZpeM
XePucGM4M7DfG+r5D31rx0l6bvaAe6oO30Yn0RFQSzR2KLa73ftw9FGSW0X/
tU9brpffFkezsnL5uZEfLU7QD58dZmw0iQK6S+oYOp47UFDz58bvmbK1/PPX
YcfVDjlyPLIEW4lq914oOtJrfQhgsxX75JTACVqpMfrJNgh4ffTRuUIAqL+R
8tEHM1vVu/bzytbXdzG8F592F0Ezy6I/9gr8TVF7tZ8X4PZqaR9c/3LYcEPd
6RfnXY4Wn6p4HPdFa6w6oPlye7/w9mQGbgH/YEyzhJ70Zu29hLkz2HNYrS9a
O8kAecC1f18B56yovjzhxlBBDVYy+wXXH2Wud+pBy2BLmqmtJXCK9o4faNie
VDEyWrHd1OWWaBewduWbHVUjV+tGqs5vrdGDRfLN1SHGVaymAorbtUTfE9bk
3tUva3uU2e673wE5DGt1+6Phdcq+I4s6RXZFUN/tdcIdig9GimGTewmLKpLa
G9+4VSnX3tJegKJrXK9IOfqpz62iVfQt/sTaW+kn64QHUV1sue5YLwLMrasQ
7qHCwpzk5hQP2D6x9vR20x9rwakTwJn9aeDUlcErTutR736WthIdHH3M6Rec
RvQks95I79mBrTEGN1S8yKza5yY7I/Krir6DFX2TxYc2Qff/41rLlpF7aVJt
oMgHwvbnqCLX9n9egu6j190Tfqya78SCygKBMjhySmnww76tYLVy5lEC2CqH
oFvlrW2+1AX8s6Ln5dGmZ4Udy8gHAI0n59NrN5DPTFoDnTIYZqyDkl0RFjs2
oKJWCdah8iRcdaxDBXwk3Ig5xjHHZxDgVrFVihpAcG2YsQU79ancD16kWHc6
zZCWOzmRvK8583gT95RWPj10nRFX/mqsIq0NHdJXXHVwXNro0VtbCSZQ2q0f
YwipXZtso82LlMqjEe9vRppTzR+84cVYVrPMjZV/6a7kBOVy95gjIyp41Ses
sfV4Zf7PqerUqq2nQir6cafgaguo4V1bDOrAV08HroXqakxr9Y3JAHFA+SHp
Saca0FDctcb0Wkt43SL2+imhfacZ5pB9Iz+8emKFgW+8WgUD6tGbtu/RCBt9
dK8bov3eVpd2TSl8UoZBn+2zgwF2Y3hMZNXHmSFJOIw7RD99VvBRkXAB1Xf/
daeVcM247lZfmwSGRfWN6HW3lO2+NtbjPrlBuaXN9/uDwIr1je9AMqwdRT3h
cNW5BGjjey+e+L60gmbv6/D9PhOVI601DhXxSMWrTDCO8sNIe6Z59U8oT0Y/
BK5GWU9otUEBRyrmQVmeP3rV7oMK1/5aKx8lM9JOhGQGrvS/Wi2auMpitx4H
bGxcMZ+NqK4e9Y1VgTjYgIJvaaUAb466lURAE8Cbsb3jrt7y7vi9H+xUykSv
OPXEo2m9X3i9IzO94jVqIZAIzr5rvaJWCMxwpD+91TfAFTLXsaXND2VurFyL
Ddl/9qrtDMr+9bp7nejKfLRxcPTTlrbvMGhHoDua2gaf1KMAd0UgWrlubB+T
EOpFIKc0CYxuDRe3vEnvH3TvHVzX8sq9KmH0h3dPnFH8q72fz0OTiHt/Ssen
LR2+r+05tP/CpbXvUkYesLAMe/0H5bZhxuB0qIfB1gy1vRq5Q6PlSVBMo1tb
TM9ubXdUB2K+dFek1/o2uMMkoEiYC9EfDLfz0VA1Op1eux8OfHu9qka09v2a
gMOUZ8rAzg//1xD4F8jQLs1DMY4l0FFeGA4XGFS8Wgn18exF621U4JDTWqgb
PIsePePcr5O7yeNo5CzLOZs/tfGMeoHx/yjo3qPa6hyrU7oNMxKmQwdOCllc
jWD7p8OnR0x/SK/lo3Yy7hXaHMbMMmyiFHT42lRjaeiNYU5l1p2l8JJcad3g
iKoxPM0fa3yYq2qMJMTDC48hp99d/7R91JxgPbQmP5ow0+vxDN+ggauf+q4s
foJEjy8T2l4rDU5/Xq+6wvhuRLH9DlYmDIcZd4yhAd49eU2Gyr7SMVZ3qCEO
RkXFhw7A7jVU+rHz81ajQTDYKsMAN+ahDtQhHPNQbQjXnX6h7Li7EHWrlPYV
qJg3nr3CAMMdj9FxO24J56Eiuv6grWqc/lyMOujVe8q1i6/UCo2e6vz+ZNE1
rDF64wbWMFosE2Et9yq5qhWyWC83KtvwXsq1W33blINtX0KfWNj/pr0TNGKv
3Ehv/Yg1xloR6C9xRlXptQawtXnhvfRaOmzFrAdCBmGJvy69djXKdsepe2wW
xp1i3z9Qs79qCyEABW0+Olzw8fUrR1QZSe3JZPTq7et5Thjg0/nJdojbodxq
6mKv2j4rRqoa03tWY0u1aGOF8uiiw2huf9vxaPtYywvCVpVBryqF7WzU9Y36
oetjtSrhiS8Va/WDEu5B+zStKH/3e+X0KFLOX919Un7fhjJ447wWaoaOhNZE
dAmU/kOgCtBGRC9AX/tBgAEGRw0IZ6BBwZqiYvvVug9V54VzddHSvcHJA5Yv
t37hEdS3P2yvIqBrTeHCe2+qbsx3xFS2rSpvvHXrbgp6mXvLk82oXj+97q/G
nLAxZawiZbsJdMIUg+ECf5UzJ11Vpn3SJVgCHT2tSyju/WBwS3n4dZ5TCRXG
lkfFG0NFyqJbw9dvDR6998q9N2msrq+qUXBkLqiz2w9Sg+HaY/swyMHrIKNH
br0iSDG6wwuVW1p9X89XhdyHtUphh+8cdHFsz7w7aXFcDi+DDl6NrYYr3YrG
bhJ2T2xb5lJNeNW0eUjRvAm7gNTRtm2/0jV2N+7+5F1G+nx99Oqq0/7hoX29
H64rLrUr02KPTEGalmGBXcsZDgQ7vu63tqp9zuVGZZIwZTLmSkHplJErY7+a
0m8W3Jx6XngMR9tqdrDToebYyD57/VjO5GtWJxVCmQ+8ZzfSoUhr7L10vu1D
eu8Qr29oTWDHLPq9LOe7SwNWPRytyGMKp4y7eDwWcYIb5fc3hpOPDboU917b
r0hRtqRmlmJr+raPG/ozBf3P0DtT/R9jxegtthttPkYQ0DemBV+XtEUQH3Bc
l/0bSzqPIM2XF8pd6vl3ELPwsoh8mt1juyCKfoz+iqdW0nnSpayIsgj+rm+o
5VQb8ZfyQpzlfoBQT1xBWkdaW/DdvJrLfo8KxREnt9wps/cziNHf9swPjLrH
ii6LQAxnapVTI6QnAf2YfIfHdntpB0jrst9yH/DvlC2CyE/IS6TzPD/5tRaG
Zp4U3JEthsCPECjVMAMU+GaQgn0WoNCVDSm8zK8V6NdTAALBACJEWZxts6tk
ALIkZw9Alu4LKTz3+6OceiPpDBhVQV/w2C63pRQgvPV4yL+TvyEXIDzy1wAU
tpttBhTmLwGivdkJkatO2o6/tAnf2xqC78AQg6zpqpdHiVZiiRXdfC/ykKMO
cXTJ6gd2hc32y9/PJBHg8x3OE8+v0ODDByL42AVNsrnQjA6fEaFw2bJnyKFZ
dNcwdmE2Hi/no49LUCglFtm1u6ys6BqU8EqzXBm/MJSFPXBzoukPvgFGh10m
9TcIpEjWkLopz7RI6yjIWkoPXjNbK9cSPrYgx8OnmMAMZ7zMWNI1pJnq6BNT
+z00d8Y64HA+2hL+W1bUMspzE0mOIZ7NkRpS9GPZEna9iMVkstjtdKOb2Iss
WdzZwXL0nr2VP3xy2YxCYlrvlVtz7TbRA9Bb+P6l16sN9lpSZaoB4rmVXDZ6
Gz5gGvqggcNOR00hJ4zD0rsI35QJRx/ubSKhD+kCcv+wIW5n3+l0h0/N7mQx
+ZdlpAvEe1HVuBg6jYi+7/p1J3ZFoT/tU8u72VHwgom8dyxD4XJXkRLbNxyr
TMrUhKEt712YqXBpB8D+4QylYzpeC7uedKxFKXAEbl+ZrihfAfa+w9kJ8HpH
SmwwvGyf0XYKJpbudIELijNYmARvKafEBoKuY0f3KbQ7nIHkOODuv23JGVBd
dtu+X7lAsAEOuT5YlwQJXs3Qxu6svT02XHXuOE4fxUxve5+hqDyvcGrsG943
PJreuyCz7/09nhSG+8OKfYNgITec3puc2f9BqBhKgJxsE/AhY/sVz9DuR4FT
0+Q89gpeC3K80XZgJa5g3/AlntcyHwcfVKLUDPJGzjjZfX0j6d2jGYpUhSJl
w3DFMeV1W5fp9F8rN4x494R7JVDbxq9ZAwaG0nsdM/vfC9uGUEF2pOMasZtG
N3rfCo/XqC7F9bso2y4vMQZE0trX3YdXpnqv4mD3/Q1D0C24q7hqDLpdyR08
7uQ7CFWG2pOv5IT7TMmL6URou60K5+MKpw7IzMg5RWbs+impW2AH9SxQ+KC2
KBf8A+ontjs7EXJ7RbAS7SoisbOxy/1Bd0N3RnfAqXiAMOgY6wlN2djrVAIv
jdxM73YHavkBqKWvIlbpPBHfh9H4XorGtxr2Xqa5lVTHAGdFBkH+JQfmSgey
+gOLGo+ZunS/POq+0iAOq0bLU0S6QPWgo85OkVqSA/KoBdVB+Sxj25l7vXDi
ENnEs7LO407/iwmx3ZqwHHv0luNLzctaDuLDb+JJVl34TC0Hvj+jIWc22DF9
VbEXbBV0gejtS234BeAz+ar3cxJrB6LWoY+IunIpbA1Kj4N2thbFhoUspfRI
QDMXfWjLjIo+yuRBp875gtLJL8QtgVlIE2ShEDNqpPp+FylILlZl8Fm36T+t
kYTviwM6gW+yT7j8aCBweXdoimV9hVD3fQ5CX9iNRS2T1VeZjtcAxgztH840
FZkHchx+BasnHxRzgXA5xMzoH4/mwZSxlksfoC+n5a1rhDflhq8pnA9Ch+pK
+6HtIfCv84oxLa/J9e+yGnpWcURnyjVV3B3orY+vjrVZTp9y18u3U3VD6ZpA
eWWB2XT6L27nFKt1p9wiHALsrepfIID38N5taItEuXVMV8OSh6tQoYxdPDn+
mvWdsbuvC4V9izPJKBrQQ3+mEOaYSx1tlug6xTl2DtptQUOz1z3WGe32Tqon
6Dc+iJ6ov+GxesKA5y6S9rDv0ClymgWJSJfw4zSasJco9jLp0CXmcGpItYbA
n2I4lXIdxD+LgEPQ7wh8JtKVmTMyN5jK5IjfYPeYmtFKL0bmsnV7shzqsxDN
A7hpTx2Km+kT889E5+ei88N3l4lMHMtDXZcL35WODvoar1bK4n7k+u2lnvRH
X50aYzksIT38lsO18svPoJtbEl6sCIKPauXi8CDxO2Q0zfTO/yosRyuXwxKd
qxYj8CNllicpIoexaUP0Stx0TvhoxX1d8HuxC/5eegN/h3BGVJFD1TkC8m/5
8rISgzj0sIIxOcZiev/Jg+5MFQ9+iymNB3BJs4PoGjonTYk/ow/cUdSIdmEi
GG77TB2WMN5K45boQ7H0HVl4CeJgBL9+Af/rViIFbxSkVeC32we2W7Lhbxs5
jo08GB2ijfPVgfL1D5QvdcxedkwcTBI5eCqrmsJR1/XQ0uXO1vXU/5Jw1weV
5yIZ2JJFVL0W+lKu79dEwt4JbSJvoi9oC7IN+acW13w5zCNcAsgjtXQs8uUm
ZXIiybDB6zleBnb8lzxZS85ZGi0nVX7b6RNpriPS8ivdQu7+ya7kdRmOQSWy
w0SpLAopk02uzda6QPVhYM/ky00e45hZctKqmX7/VG/6Chc7u7LgEAXPJ6x4
3tqFI9gQXtAM6XIO4mKUXIu84dCpHmJtDbtcKcgOLhLsOejHhKAgqf3jkl+y
Xt5BKnSf1Ad44ctwsxNfib4VM8M57fA9BAofG/2pRDfXMUgaWshdMjF6VT7B
5bFoNzF6AZfawCI8WRFnYc8gYjIx63FG4SyMBAt9a8EEOLhVpUco+Ruw5GD7
q17k2c7S3MHXAMqYiRjme7TQNonICfm4JOBqfJboUK4z8liku0LrilsMh4iH
awyJDR0sR97Al/Lw88okBlQnYiIClLtvWlMBC6gfviKgUU5PrGWJ8LPRlw8n
3uGVWInk1jUENWPbk7jZJfDVSbnVRP4uwoNk7LVi/H3J+VYXiE3wtTN1XIOO
s+ploQ8ehg06fsa2MWdkGvC1rtMTbyaWaPDZd9jLx18PejpwVydIcycB5wv8
JLvCnfEG3YFk4m/pLq/NbPaNC2B4j1akk9Budw7WjU28PY2BJq7ialtv3TeK
a29sP/caxZ7BcEITgHI9lgDaRqez1Mr8ajMVKRi8mIdfgezxGh3O0PTDWeu8
UVyfzrjhpbb6W1WIlhfPxrMClVkLvTKocNK85hZ00tR0bbSr0NuKdjOmod3+
RxZmWnZmMkm4LMs5sNeh1gWdLq+tUG9ygn1HFsPZF+8/TkRnr8zAobO3jS3H
8AdXkyfjrzk+5ZGOFiwvbGVhsWpHo5tnEX4n+4nmSdSaZjrLN0h091oGm22R
zHhsqcqtEVQE6QNHHcKXfLIqt34AP/PBMQDBPg8TrMKFR/hxlRJV/rECx2ng
6AaO7gj6bUX0b/w8osKHfykEbJ3AUu0H4CcaYPLaAeAwkcM8pj0OB8uMfQC+
DvThN5bWTII/J2B4e8E/TQWnWCPIMIDrINi6hDEOB0TVidj3G/8J/qdPgpsS
sb4Mwb4NOQ53UMEf/gW+BMCNQP85+DecNG+ECg7rymS4mIj1TQDcYBKdowCu
B/rOOIyvcfgFFZ1lf6FzTwWP/gu8j4jRzcJh3+sYh6sBJZuCPvzihckk+jMB
3AH0r+IwnY7rP1gN09drHPaJpXF4tBpm20+4P/UJ9b9DDdOLNh47P46fr4bp
3xw/Vf8nVHD7v8AvqmHzeeH/tDuE16rgK/8Cf6iG6SsMP9WOv6vop/yF/iiA
A9dGcgFccxKcQsL4PziJfwg3ImF0Tv2Fjg0Jm68CP8kfgJ49SZje7wA4cxI8
hITZtxs/yb4AnkBCJr4gRR7XGxB0uwpO/gtcSsL4gz6uMwkO/9YDwc7i0Jh1
NAZ9+NUJRycHeLC1Z0fHRidGh8ZEbwtNjBbGegljIwJDo2PhP88nKXYjBM78
8xMlKxPjI0IFvhGJyyJSE71CE0N5QTwePK6ICA3HTvL+C1/UmGih3x2JSI2L
2JhoE23rEx8REbgsSRARH70RHZ4YFS9MUX0Dxzt1Y0QcZIfH25SayouLiE8Q
xobCr6XwktkboyI2buGGCeMTvwhN3Bi1Co5DaSckJIXZpEQnRtkIkyPiI2OE
KTbRqmkTQsPD//XUiqTYxGhBBM8TyJIYMZmZKZzxNkUkBoXGJyagpJL+wyyC
pJh/c0oQIdgYl2YTx452xn4mTf+P2OhIYbxgRWhsuFAQqNJXwpIpxuI5Ojo5
OjiHOvEiNkY68hxCXcJ5Lk4bnXiRzhs3sp0iFzg52KPW5HkuiU0WbkQHof0v
4kPjgAJ5nqExMSjAOzUu/k+cZREpvPEvDnnHxwvjEyISJ9S/MjEtJmJVREIi
8AJe4KqI2ARh/HhXxedGaIOJAX5ABkAIU6hqAJwPtTbWBcr803gYPgB5J0bE
AwurcMZVBniZ0Bb22ZroyAioM5uERGAQ9NxUeERsOAq1tbVh27BZtk6Odg4u
YeGOTvZ2oc5sB4dwhwVObBe7iHAXezsnR2cnO4dQx0i2Y6qzI8/RYR7QVEzE
vPDQ+JTo2C8CJz7E9N/7DJNNSgwPKjqA95fICuD9f4st3tTg4v1LdPH+TXj9
TXzx/i7AeP8hwnj/IcR4/z7GeH8fZLz/EGW8/xBmvH8bZ7z/HGi8/4dI4/01
1FTGnhxsvL+JNt6/hBvvX+KN95eA4/0l4nh/G3K8f4k53qSg4/1N1PH+Jex4
fxd3vH8XeLy/jzyequbwVEWH969VB6tV/wfqxU92
"]], "Linux-x86-64" -> 
      ByteArray[CompressedData["
1:eJzVfHs8lOnb+DMHM4PBjJRhHJ4hUiuNQw4pzThXtFS7nTOEKIOcVZgDmdoK
W9tXZ1rbYXeTNqcUZiKrDSltbOOYSlaSVBLxu59nDrHv+/193vfzed8/Xp+P
ue/7eu77uq/zdT1HRlDUmiAMBEE6myDI1U3cuVgHglTAOIjMnLtyY1Xo1vHi
r9X9eT7IHAYZgg6B4+pYBoQF4zngn8g3zWHX41cQKDZO32PSyWYqJD0j/HdB
PAMPrOv36q7PKDY6jiTaKjWbGJF3dC3D1F078xCF/T02uJ50TQd28xTBdzE2
Mem0BRYLsq33FW3JgX+vB3gPwBCUBFobk3pVODgDf9S0IB389KbnZ+to+xw5
pJ7+zIfy8bYBhkbhYd2gWHweK90Jm05OXLHWXfXoIt/q5DVkKkMwxwPa/z2b
DxCRiFiGhbUXpfm8zgE8g53nqQcgy45oPpwa4qluUOVwLoqg3KmvMWwGYeFB
6JXuqQNMkffvU5/kHWoOTCHpzMeyXY/aWM5R//kQpNPzPexDhaCHjyDWaW2o
fjv+9nkyjOW7ZnhDJBX9B/kwL92EDeNXBi+48zwatiR9o8bis+Dsn0k87Wsr
MY6UlcSYH3qwFtRXVuEHLQLfOmUmZ2eIblnEnA84mQ1B2RFHoCUrT5qszE19
uud8QPTJA2HmqirpRwvmn0+/O69w3qefQEd1NnRS4mdK7/iDebPHYv1+PYh1
02QL9OirO08JsMXL9QfvaBQ5+hWRbVkH9nuUm13aIIAMV2XnBc+3IuIC2fds
tpCIOzXxDTqEXrHmEFPrPaz13E/tNUfrCkWzv1uzmqP2vluzl6XV/0bzNYuw
G9bsYWo9ZxGTKcRkngDPvsxUYR08JXw3tfnvjaKpNMNgEj90g2gqPpuBPxnI
SL12giQUxU3IBZgTzaP1QDRPiigQH5i/Sd/Ae5X1UyzkT4OgdcC46KLuKfBH
hMn2sCs0V4xdRxcFQt9rEKiQuh8XPghtsIfrkBlaPLwfyziiObMXnc/C3eZx
MmNyM5PDcEnZmTG0zLjczJgwXCwvM4FEjIEaGAZtgUZ/YOD2HsMnsGG7xOBF
vkYDxuhJnuFtvlEzhpkZzclMtiDyojMTw3DxlzITeJn2eZnRFGKCRWbyzOVi
w9sSw3+z/BIxMTczminf2j4sMzqPGKdc3saCMRwudOAZSrNYC3KE5v4foTzP
AqF5OaTNwsRD7ySE7Xo8lUv2lEOQJf1QHTQn7wnHkVgE/Ul4NobMw4ThWNhP
HBxWhYW1hAwjWCYYb3S+NuaNhBD8CZ3zBgdpQuE4V3ROieQSloO5pJHuAd0j
PMXygoV8VQCnf2SMo5OzIQ0STmD4R6ARoL+bbfRHoMFDQJiMF4ZB/Uw5COOi
ibG5mfZMYlKYEIhxD4soNrjNB7wbQLcNO/M1HuUbPQELeUa32QZt+QYv/iHG
RBIijf90+Xmj9kCj2xKDP/5TMXKE3mEyQaVCYgyM0acQIEPKKz/NEaYWF9J6
66fZm6054qfJ5Wi+adbsYWnynNJxzg1uTlC68y03eoHQObdmaTHfSexGL3Zz
bMYtgV5QNF8Bd4Mor99ocvM03zeDhYR3FM2nYs3nTK2Zy8vdHMv/3XLgwiMU
zRfyrQmDFM13vC+701lBMjnzgOIs/o/YJCsaiibQWee/UL7g/wjleUkyI+FC
3ixjKK5I8hEY/0sODkPAiIl0EfOjzObtdYIoeMxv+TQcg5StgdfDi/Ui4D84
UBNHGETARBPYPHw4xIWbWACC4xMIQBoiO0eebRvrEgZzGsnVK0BcNQLtrP0s
mjkJY80mHVTlWzMczUlEG4a3Of4PfM8Gcx3idbsm/FO+SbiA6T9r/85r5vgH
6T3aRapse0azOYnuwHhpTu6c50szYnLMSYHRvrTbLHIdx5VFmJX+C9kcH8pk
kISqrrRsCf4p+Q9I4yHHNY8wS2CL7Gu0T4xz/qjinCe052XuDsMleBMTLxH3
tXHUngMjzCOC3zcwMREi7mESY/KIsTARuElMNHE32keAsgmgzyHG5RETWERu
tib4RYbNhBc8IpDsbpiY1Ex4zSPuAXqSLUSPXqcQY3jElVokqrbr/kPHIIyd
a+7pt5ISp31lPeEJGzUP3t1iq0sOTr3HbnxDe3daUAQvbSK4/hW2cPfJs9j8
kz1LSb9j73J+2/BH/I6hbJ4ppYmDVBDgX4BrYxh6mRRIQJ8C/vHEIreYAg8L
IZA5jMzR5HirENxxEAtCAFgoDwMZiLMPks8SIW35HJYQcuQx/jR4djsduivH
k8dGp5mdViOhpRX61w3tX7eEGsiCQM0lhxKZBZu+W4nDiuXrIATV7DA/Awqk
/BNjyJfDhG95IMkAAlEQoCrDaDMNwvCUs8B2O91LmQAvRgECqH7ICtsO4VlY
GaUQFA25LVh6rQHwDopClpKqwt8yMBRUIModH4ao42BISQYPR1uT47OfwIIs
lVsC4v/W+1qDB1lMJ6zEIVZMgCAmwiMsnxZjXK8BQWHINJZ82vPlVAOI9VS+
koXQ/3fGhaWAHgwiCoycfprHXjABP43+n50OfoJIPNJ0+gveTWBQUnlK+kP7
VVVkazAK+g+sXaz2D+FXXLykI1vzRbBr1Al4Fmb6jidOrsaQINXpO4bO/glL
gWZN3/H1wU1gR4vpErsy5zHYcd10iekv+mU2D7qkBGmygoSsHg81iGeJcKAG
/m2Mcml6VJ/sQ6rmXnV4N6wOdqEntJOHNQUBZnCuXxCeRzNFll4DMSEXtLYk
nkFtj0GoDmaZyM0xveaQK4+YnATy5m7yC0hLliBsya4g2Rk25RuEMlXQaUJ6
A25ZvduyQ7hlDUmHQJ7dSyIme2dGRxP3ROMSkjKj4Uy9Bqrmq2ykSoxkavW+
0Xzjp2lLqTXsBNGPYXg70CiUecD5ltC52c2pGLf0lnApkoPe6CRwiHvDiA5h
IGYSHXiZ0dkgloKoS0z4qALQJvIyA0iZu2lobM/lW4Js+Lpb870YZDdcUH2+
wbN8gwb0tz3Q4A+GQS0flAqEx9luTvVuTrnob3mN4zE3RxHO+VjNIrDphMD5
Ec65qIb8e3hm9IbMmGhhXBgxiZMZB1JGXqZe01qt12i+fpaNlL49sCZI4raw
BUgZoGYwesgwaOcbtXcbPOsx/BtjFErzdyxyW3Ja6NzgN1fOCCczMYmYlOvv
8y5bC5GA0U6kaHnJMOyUGKZijBCCGYZvAgnrMoSODTXORW7LgEAmbi995uYs
AsOaQ3fUAKeZiYAeUIFYEGNy+Vt6QTYHeR8pJ0wlD9lGz3p023oMOwEB3nrO
RcJlxUJ6eo3jITenhpql5RKn+hrA49IG7+LdJCKgajcQ4IZMPWmd5iuO1mA3
iKtaoIR4Dmt98NOMpGj2MpGKYqSbAGr+Z36aH5luPU8YSM3zBoNSHuj56K8a
x3REaIva3JY0uC0RuS0BXDe7uTRsWJqYlJkMqiZv4h5vYooFEdhXMvAEG9DG
GHnDbiKynmqMjTdsyj+Uk/PAPY9iEbzU2sb1SDbjR0dKJXSUzoHWR0WExgRy
YbcobnR4REgMbGNlbWNla8WEQ6NiYN/A7fDXa+ENcJKjPWxhb7cwKDxuPmzh
G5gMO1rCNkwb6/nr4kNga2sYASFj2NppibXdEmskpNjiJWQ+041Z780RrAnc
fn1X7ArTr2J/pJvR3t7Yu932qPqu2GtfHT21am8s3QxeUyEHUX9Ztd10/Pyq
XV/RzSygy8Bv9AAudbUYC2CPxD0bonPdlgGzKnJzaq4RvDCoy9d4yUbc5QXD
UKbnOXa9HM0+P2A+Ws8QI9Lq89N8V8TjE5MtUOtOytwt0+2G6NM1jsUY5wLh
smM4sMcD4NQExPMbloKa8DQwWtyyPOFSYMDZNUhgCgSyrQaxcRb+PFUdxCAt
JBRZiLQtMqm83+bvd10gsLE4YbLA3uSYmMTS0HHX0/Gj6ngPT8n/iNmBeF6h
KWQLrTuDxrlhIKRK0Jp41Wf7m/ssRICXKOqbSiUCq3ZXRyhgdWBceEJIQIBv
fFxgUHhEeFyyW0RUZEiAX+D2XSHB7JiYwOSAFZFxITtCYuztAqz/Lfx/CM8S
2CwhMMbO0SYiIoFrFREVFW2VELI9LiomfE+IVUhkYFBEyH92JDE8OC7sy4Hg
8Ni4mPCg+DjFmoC1ybFxIVxAXmD0tO2+9P677P4P45Oxbevg6KTE7BkVEfyf
ov7vbPel/7+DVkb3Ymsm4ouz0n8im5PEtF8pBdvvMFfUq/GXfEuenfEr/Kst
S2i3gb1lB48QXiQQNyGVZEa29VeEhbu+pUj18tj6v8Llsjlxsjlv0Dkqw2cw
+gUSNQz59Gw3Gk9yXUARyqYdkshW1XeTm2ENe3zL/rwn8NxmAvuAPUm9mNFs
jw8EsYGKf0MoYM6iYqJYaooBRl1Mz8ZedhU0uFNA77YPHrqFmd/gboAO3LHo
YC4YuHqRQzgHMCoqNkHRGxgkwnaO2vZsFUPrPLYnQcfA24tcEyprI5p/wKjg
YzCJpoT62QIOj/AziyYxjKuF+Gy6HwvWTceQ6RQ3FlSjgdXjSUR8TDpMW3eD
8kpi6QbjTQkqFLDmueviVTDZoYGtlyuJwxnmspvzcQmE3dl/Bbacj/Qi780j
JDRTcca/8g2D4Y4jtJ/t64VHaJYO9UJygbPUj0BiSil5bsxVTPK6uQXwsY1h
oL0A2+Vb++XkCd4sR9pLguz1SFskYJogbbngzWbQssXCNwnIWJwOq+U/oNbk
Ey+yMPwtRURmBIuMwZAdSKkQwZRAgAQcv0Y3P/Xr5DoqeR3x7kF+3cGxOweH
7xzsv3OwJyN0zqZVYdvz4vULVuhbhd3KGxPM0dR3CuvLuyy013qyLGwi77PQ
XHvTil9pW35t2wIQHMDpHwlw3NfzMkOoe2Rj2ML8w/zH4dnm4eV5w4IX6psc
w57lnRFe0HyyNGw0b1j4Qeukd5hZjzjDVhf3J3uNS56/S6q/yz5/lz3+Lkn+
LqH5Jen2hE0X2ScLegR16icXhfXk5QgTNE8uCRvJ6xDWaT1ZHmaS/4P7mNhj
rOEOKz57Qids4ljAhE7AxLFtEzrbJo79FykYXhs9vDbW2s9wbj9Gv79Ht1+i
25+v28/X7Q/8IoB+vnq/RL2/R72fqtnP1uzfrdmfr9lvrdW/W6tfotU/rNXP
0O731+7H6PZbo+xsyvPflOq/aZ//pj3+m5L8N/1X2QmXeIQ33rkl4ahjmKv8
gM41+YRXTL8cR7x+UQ3L4yklTKyJm33ALQ/jjBy8Rv9yMGOho3tHkZsX2eur
l1hgvfyvxEUYazye2Q7XYmmHaDSIJGCHaGOWNNjAK5hBfhBMIuSu2Hcd7+VF
PmE5AZYI2AtZsjUsJhXWgeqi3SiaHOa9ZguJiI3hwTSOJaNRe66htXu5n6YO
pV7lBlRDqKVQxNFCsTqHGcRBUH7jgx9h3itiSkQYZEmSlfWq5kM0HRpJgDGf
pauHt1klJq+j3D4/V3cCC7xoBeJFAkfUi8D0dQ7UZzWWwhF8jcauZiLY248N
9ubzwd6ODxq1lxpaRz+jaCF7P1fuzdNU7v01fop5j7OV7UWOztZ8z2Lzgbf2
q2cagsKCghd+63ggnnTBn0lxN3HViHiq2y4xTO/ZDxmLOcf53wvCNSF8zoHm
2ttGoaoW2kTs3d2Or2REFd9eKQauyIuvzSa+7dbS0akXSQIBSYf4GybcluEN
rd+wl/HwKsSH1JpoLRO2hA8ihdoYRRsh82M0iCEqSAwJZdMkPpRFADYBSE9f
hGpmAqfQjIcu37fBJngT0AwHsELb2i2xlHjEgmjDwwM5xaOsMrUVrM7ehl9i
fa9ot1xu6ZitfnbWJyn46+QzunJxX9D9wFyVF18Ln6j1AXKgFeDxsrBlaN3u
urINj9jISqWNFOMVlJjpYzY22OzjUBRq07/EXCXOMQSUW2FqCHgjmU0p54fo
YzY12KTzafgWA4hkYpT/w/6vD5kvFcspk4RlYzYeMsdLLGto2Ww5e7k7s2ss
MTRUHPYYpTieKZE+18dsabA5xtdD4ikByO9GnWWDtgiTj+VvyZsFItklV8Ry
XL9WWs5v1OY7ljUgiTAbwdiVkD6HvtP6ZBGY5AsRrpMjswkKSyrp0YzTBIbI
IeBmp/sR5tC2wHMQjGhEd92oxFhBfXPHUqj/q5LoyGJAtH5cbbN6qLUuot0d
GIUR5s1RaObPKHy+9T0xgUshO3AO6TXYlEvoCib4Xi4N2r8C8/wonpPMBkG5
eY4yKEdjFEH5B69o/evkaApRQfBzvuZ1PLeZWuNUmxGAJKB6FUUCct2qJPdv
alGdpdCggc1sZv96eFW5ul7RKn0wL5RKEYskOYjBspNFhG25Hl5kE77uT8j+
2brK/fcp97/jxaRfJ8f5ESUGNVsuScIbrPHndpId8Al8QqKuq48DXhgdxSQs
baccIug32PyK/UrBXg/Rp0G7FjMIELP0AeJ3bITE2+FKEieoHwGJhu0KidLS
PtZYSgyAv+he8qcjEr2slKhYX+nWInyv9T1wxquwyDkmDuzZ/AbtRxKWCqMZ
o18uUSlELHMOso5CV6z74QD+pfW9POJexbpQE471qmhi+ixg+RHA8vNnoZyX
KDm/7C02uk7e16yU/IKnutfxyUDyK9vqkhDJtxMUkhdEKtlapF37u6XQeELB
Vtt3x+5YSozialmEm3wjHQqJUIWR8cXyIu/opvfn8OPmW2T37F9M0rLNjeTg
hkmhqqzA2jwxi0IuovO/2yhwycuFs9XrcPs1RCdIJE45m6nFpMnC2E4vwWRu
CEnFn+RJViPjJZCUejbX7CNuiQb2RvdSThvP+zAP2k/Hv4eEVBwOYjMvpc4l
5Wzc7w9ncPIERWeWeWesz7NVpahB28sZYi1mbohfxhoFLvqsm7lmlIwjtHdP
l30UYrE3IBeAkYbF0iIpL3BkTzIZwkvyXI+yPEL1fHp0BFQhFsdmipvTl4aq
evM9+SyrPC2aPbySAfN6CD0uYk6tGAJMLbBX3RJ8HDN7DYNmDQMmcIt8Q1XX
KTi2ZxzeKFj7UhRo97bG3QLw/Q7hG0WRv1yJwkk1LPh4/uwtAIUFE6DwWf0y
6Dg8+wUZe4MWmesI+MjOWE+qo0zAHnWUSZ6HFYVznGVWR3Hlg7F7j8d+ejqL
HEl5SjC5QE/n5Jr5HZAT/9HdPlR1S74p4SMrRz+fx7LypgIW9qNCnINRCNHV
jHZ0I2GDKAO6wzJm5c3CO9CEgTgTCgm6C3nCnOOQjlyEprMncs1EQIQxOM89
6UCEsKdShGF4hQhX/sDxDdXzMzETBOJuL6tPh2w8NJ1ldnsFmmenHXzQIEHG
+CbG6tC5eRtWZB+h3cZ41acLsIDGPcHROYbzjwICLIjYlzk9Hkl43z3BvBwj
vaNGekG1XnVzM2uO0GB9kkCy4NUKnumSmHkgynIoYjvifkG95aPbwV/Z2mhg
eXCMesmb7pWp+BGCcCFebMlf2EAnl1Kg6/hSUFm0YxeGlYA2rlj8521QYcDF
nEegiq450ayK1McnldnjV1VF4Fax4l9qsOkWWIEUvuZUHoj6Vm9c0ZD8vTp+
jtVdS75VXC2v+MBZxJvKVZVx7LTSm15o5/1hKVzEc0NX3VYvyfvhuzNg3o7v
qWK7FQSB9yLKdopVquu8HQ+pbl7z8l1BuPGbp4xjSViFN5eserPgOrmHqSmx
IxIE9YsoG2761VLqLTGOSAWyaENFNP8s4GAY5eCdkgOzRZgrDTbZQieQz2gk
k6csztsYQgFYJ0HWCRy9K6Ml58C6B+g6kZpiXfwidmGDzWm3JbJ1z1mc0aeN
2rmgIotgLihCqGQtUFJ5UUnl8Krur66T/xbLqCQtodCqayWW7CVxtX75K68g
iftXNWXi5vwS9JWe978EWD17WGAP8zYKEnJfAB/aSMTOOuGca8bJ3CgIAicI
l+PChNm0S97dDMM38NywEGw6VkyLJCWpkEP1OiWGAioOC2z6jXfo8W7Dl5qk
9Nc8FnAPSCNUr5thBEohsgo1OS/jcsi6jHrgD+LZwB8aYMQfA9cr/TFX9VnI
8UCjvxm5BAyLco24KSl0/+qDYC2eugcuyrXO2CjYk3eQxayfTQLLC3nQkiBe
asZWxL/FKgr/DtyixHda9V3I8R6jtwzHX7ZwyhkbVGxzQ5ozU0gXnEDF9oYv
jntx0qye+Jb0DBvLD8RhyahDPVRRONTbE1BwqN5HibGskkvJU7my48lPpoTI
rW8ygBPytiqdsFO5xuSUGKyZZMxFWMbnpMLM3/pxrjjsCbM3mXw115fEBcZW
Il1A/WOUef42BbE/F6t+G3qcPdfbBBU/RhW7im6ba0ZS3YnDSrq3wWCvJCEP
CtNQK5iVztIA3OaZKpWlp4rdRV+b5whnb8R+T7sEp+fwJnqwKYApgSZK4Ccl
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
ZDS1t/0sIuq/915sXAwCDKkvyvjy8JM8GazsaxKSPSNOVQ+eap2qXK6NLLy0
62bhLuep4U8XrD5szA7HzXVvm+Pl92rTEDDU1YtZJ5GoLG1KpreOVlcltiBV
wc9DZxzeYy4Axu7HG18efXKW+PP0FGR8Of5J/X8AtX+YQbb5LXtPrGr4l9ip
+vuVf4gPiOo+Ij6X37nG19KQntHvu42v7UF7ZYnG1/5Aj15MNnYqCVeYxOmm
KaDSXp68Ghgv7Z8qjbKBUbbpQ9z2F1NPChc5wmREgSf7+k/2DZ8cGqq4OFrx
+3gF4PDxSKxC3aP6V4eXXATFxO5dq4DN9J8dDW+RdwboX+q04c99/SPkS4px
0/uJ31MKOqPG5wKDfRj/6QPV2Om00mDHX6dtre6abrB7913du2xqV4fLXUjG
A72P29459eRCljUs1xX39OOpikLfeOA5otaBdq8ji8W/gULE8aJeturuk3uG
hro+5LRoNKOe92JvxevwW693Vb2OGr86PEmR5UhuZyl329SuiYm58lDWxJ2s
jjd2OiMjzBlsWZV2pvoOpBAjF4ix4sLh2Bmx8O+UAqwsUT2PnpaompFEMxEp
dQl6g172KgS9IgR2K7LXJWYlGTn/b02YHH3Xj57L+g8kBAwkfe4qyzpWBtXt
z7xr9WFcY1FvS1yrQdPqls0R5V+leD9Aq3iHFGnitqmJ1AuYx8j40fjW1vEz
reMdU++5AZ6y06zDIx/O9FV30J+KkWtKvXHgnMEDOY/ouFU1LvqTYCkrzxef
7QqTXWpK6JQ6Hpkq6dj8Csqw+3Lyu67LJYaP0UavVCRH9Tl+7qrMOq2qONMu
K5z6mLJed/rJfWXL8temO+hi9eXfrZglmZjqs6xZZD8rkJJzZCrIlkqg9n/8
x/AcVuBK3qSDaVPA38s747UZPiHImUDMZs3ML2cCyaZo6R9b+YF63TBvegWx
s91rtd0Xr/x9qLo0+aYuMnn3zVFwhoL2toxSnc2Ap/6x63RZD480zc0OVNdB
uxAt/723ddetql23hqYqqoaiFPicq8enXqQ86zRAa9WoT2UgDAdia6JOz28d
glB7dB7i7u2a+lT1B08kT5yxZyajjK3XIRdwbjWF01Fahqo+5EhFikxZNTBZ
vcsNKcl/S96zvAviIgTsrLo4cLZuwKh1YNvvU5uuLvpaEZra66ZAUf4dubxt
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
95quYlkc+H/bqQ28
"]]], "orcInstance" -> 140373448223744, "orcModuleId" -> 1, 
    "targetMachineId" -> 140373447970304], 5481287872, 5481287664, 5481287744,
    5481283584, 
   "{\"PackedArray\"[\"Integer64\", TypeFramework`TypeLiteral[1, \
\"Integer64\"]], \"Integer64\", \"PackedArray\"[\"Integer64\", \
TypeFramework`TypeLiteral[1, \"Integer64\"]], \"Integer64\"} -> \"PackedArray\
\"[\"Integer64\", TypeFramework`TypeLiteral[1, \"Integer64\"]]"];

RandomAsynchronousCellularAutomaton[{rn_, 2, r_}, init_, {t_, ct_}] := 
 NestList[
  caEvaluateCompiled[Reverse[IntegerDigits[rn, 2, 2^(2 r + 1)]], r, #, ct] &, 
  init, t]

GraphicsRow[
 ListLinePlot[
    ParallelTable[
     Mean[
      Table[
       Mean[
        Last[
         RandomAsynchronousCellularAutomaton[{#, 2, 2}, 
          RandomChoice[{p, 1 - p} -> {1, 0}, 300], {200, 400}]]], 20]], {p, 0,
       1, .05}], Filling -> Axis, FillingStyle -> LightOrange, Frame -> True, 
    PlotTheme -> "Minimal", ImageSize -> 140] & /@ {4272826020, 4242057736, 
   4265795970}]

In a perfect consensus rule, these would be step functions at —and one can expect that these results may get closer to that with larger numbers of cells and steps.

In an ordinary, synchronous cellular automaton, every cell is in effect updated at every step, and the graph of “causal relationships” between “updating events” forms a trivial grid. But in an asynchronous cellular automaton the graph is sparser—with a particular updating event being causally connected to the previous event that happened to update that cell.

But with the setup we have so far, this causal graph depends only on which cells are updated, not on what their colors might be. And with random updates, the causal graph will basically be like a “random meshing” of the spacetime structure of a system—so that for example for a cellular automaton with cyclic boundaries it becomes an approximation to a tube:

&#10005

randomOrderCAFunc[ruleRadius_, ruleNumber_, init_, eventCount_, func_] :=
  func[evaluateSingleEvent[ruleRadius, ruleNumber, #] &, init, eventCount];

RandomOrderCA[args___] := randomOrderCAFunc[args, Nest];

RandomOrderCAList[args___] := randomOrderCAFunc[args, NestList];

findLastEvent[eventNumber_, position_, eventsIndex_] := Module[{},
  Max[Select[Lookup[eventsIndex, position, {-Infinity}], # < eventNumber &]]
];

getCausalLinks[eventNumber_, position_, eventsIndex_, size_, ruleRadius_] := Module[{},
  DeleteCases[
    findLastEvent[eventNumber, #, eventsIndex] -> eventNumber & /@
      Mod[Range[position - ruleRadius, position + ruleRadius], size, 1],
    -Infinity -> _]
];

RandomOrderCACausalGraph[ruleRadius_, ruleNumber_, init_, eventCount_, opts___] := Module[{eventsIndex, eventPositions},
  eventsIndex = KeySort @ Map[
    Last,
    GroupBy[
      Thread[
        (eventPositions = Reap[RandomOrderCA[ruleRadius, ruleNumber, init, eventCount]][[2, 1]]) ->
          Range[eventCount]],
      First],
    {2}];
  Graph[
    Range[eventCount],
    Catenate[getCausalLinks[#, eventPositions[[#]], eventsIndex, Length[init], ruleRadius] & /@ Range[eventCount]],
    EdgeStyle -> ResourceFunction["WolframPhysicsProjectStyleData"]["CausalGraph", "EdgeStyle"],
    VertexStyle -> ResourceFunction["WolframPhysicsProjectStyleData"]["CausalGraph", "VertexStyle"],
    opts]
]

randomInit[size_, onesFraction_] := RandomChoice[{1 - onesFraction, onesFraction} -> {0, 1}, size];

evaluateSingleEvent[ruleRadius_, ruleNumber_, init_] :=
  evaluateEventAtPlace[ruleRadius, ruleNumber, init, Sow[RandomInteger[{1, Length[init]}]]];

evaluateEventAtPlace[ruleRadius_, ruleNumber_, init_, center_] := Module[{input, newCenterValue},
  input = cyclicTake[init, Range[center - ruleRadius, center + ruleRadius]];
  newCenterValue = CellularAutomaton[{ruleNumber, 2, ruleRadius}, input][[ruleRadius + 1]];
  ReplacePart[init, center -> newCenterValue]
];

cyclicTake[list_, indices_] := cyclicPart[list, #] & /@ indices;

cyclicPart[list_, index_] := list[[Mod[index, Length[list], 1]]];

SeedRandom[0]; RandomOrderCACausalGraph[1, 51, 
 randomInit[10, 0.5], 200]

Note that this is just a causal graph for a “single thread of history”, associated with a particular sequence of updating events. We can also imagine constructing a multiway causal graph that records the causal relationships both within and between different possible threads of history.

Dynamic Connectivity

Just as we can consider asynchronous updates in ordinary cellular automata, we can also consider them for graph cellular automata. But once we’re considering asynchronous updates on graphs, we can go still further, and consider not just updating “values at nodes” of a graph, but also the graph itself. And in this case, we’re basically dealing with the so-called Wolfram models of our Physics Project.

As a kind of bridge to such models, let’s consider using them to represent a majority graph cellular automaton. We imagine setting up a hypergraph where all that exists is connectivity of the hypergraph, so “values” in the cellular automata have to be represented by connectivity structures—say with a 0 corresponding to a unary hyperedge, and a 1 corresponding to a ternary one (binary hyperedges are used to make “spatial” connections in the hypergraph).

With this setup, the majority rule becomes a hypergraph transformation rule:

&#10005

hypergraphConsensusRule = {{{c, n1}, {c, n2}, {c, 
      n3}, {n1}, {n2}, {n3, n3, n3}} -> {{c, n1}, {c, n2}, {c, 
      n3}, {n1}, {n2}, {n3}}, {{c, n1}, {c, n2}, {c, n3}, {n1, n1, 
      n1}, {n2, n2, n2}, {n3}} -> {{c, n1}, {c, n2}, {c, n3}, {n1, n1,
       n1}, {n2, n2, n2}, {n3, n3, n3}}};

RulePlot[ResourceFunction["WolframModel"][hypergraphConsensusRule]]

Running this from a particular initial hypergraph, we see consensus achieved in a few steps:

&#10005

exampleColoredState = {{-1, 2}, {-1, 5}, {-1, 3}, {-2, 1}, {-2, 
    5}, {-2, 3}, {-3, 1}, {-3, 4}, {-3, 3}, {-4, 5}, {-4, 2}, {-4, 
    1}, {-5, 5}, {-5, 3}, {-5, 2}, {-6, 4}, {-6, 1}, {-6, 2}, {1, 1, 
    1}, {2}, {3}, {4, 4, 4}, {5}};

hypergraphConsensusRule = {{{c, n1}, {c, n2}, {c, 
      n3}, {n1}, {n2}, {n3, n3, n3}} -> {{c, n1}, {c, n2}, {c, 
      n3}, {n1}, {n2}, {n3}}, {{c, n1}, {c, n2}, {c, n3}, {n1, n1, 
      n1}, {n2, n2, n2}, {n3}} -> {{c, n1}, {c, n2}, {c, n3}, {n1, n1,
       n1}, {n2, n2, n2}, {n3, n3, n3}}};

SeedRandom[35363]; 
ResourceFunction["WolframModelPlot"][#, ImageSize -> 150] & /@ 
 ResourceFunction["WolframModel"][hypergraphConsensusRule, 
   exampleColoredState, <|"MaxEvents" -> 20|>, 
   "EventOrderingFunction" -> "Random"]["StatesList"]

Here is a slightly larger example, that again succeeds in achieving consensus:

&#10005

randomThreeNetwork[nodeCount_, connectionCount_, whiteDensity_] := 
 Module[{
       nodes, connectedTriples, connectivityEdges, whiteCount, 
   colors, colorEdges},
    nodes = Range @ nodeCount;
    connectedTriples = 
   Table[RandomSample[nodes, 3], connectionCount];
    connectivityEdges = 
   Catenate @ MapIndexed[Thread[{-#2[[1]], #}] &, connectedTriples];
    whiteCount = Round[whiteDensity nodeCount];
    colors = 
   RandomSample @ 
    Join[Table[0, nodeCount - whiteCount], Table[1, whiteCount]];
    colorEdges = 
   MapIndexed[If[# == 0, {#2[[1]]}, {#2[[1]], #2[[1]], #2[[1]]}] &, 
    colors];
    Join[connectivityEdges, colorEdges]
  ]

hypergraphConsensusRule = {{{c, n1}, {c, n2}, {c, 
      n3}, {n1}, {n2}, {n3, n3, n3}} -> {{c, n1}, {c, n2}, {c, 
      n3}, {n1}, {n2}, {n3}}, {{c, n1}, {c, n2}, {c, n3}, {n1, n1, 
      n1}, {n2, n2, n2}, {n3}} -> {{c, n1}, {c, n2}, {c, n3}, {n1, n1,
       n1}, {n2, n2, n2}, {n3, n3, n3}}};

inet = BlockRandom[SeedRandom[455454]; 
   randomThreeNetwork[25, 50, 0.4]];

BlockRandom[SeedRandom[223152]; 
 ResourceFunction["WolframModelPlot"][#, ImageSize -> 150] & /@ 
  ResourceFunction["WolframModel"][hypergraphConsensusRule, 
    inet, <|"MaxEvents" -> 20|>, "EventOrderingFunction" -> "Random"][
   "StatesList"]]

The particular rules we’re using here move around the unary and ternary self-loop hyperedges, but do not affect the “backbone” of the hypergraph. And just as for our earlier examples with ordinary graphs, the simple majority rule doesn’t always succeed in achieving consensus.

But now that we have formulated everything in terms of hypergraphs, it’s straightforward to have rules that not only change “colors” but also change the underlying structure. As a very simple example, consider adding a “structural rearrangement” case to our rule:

&#10005

hypergraphConsensusRule2 = {{{c, n1}, {c, n2}, {c, 
      n3}, {n1}, {n2}, {n3, n3, n3}} -> {{c, n1}, {c, n2}, {c, 
      n3}, {n1}, {n2}, {n3}}, {{c, n1}, {c, n2}, {c, n3}, {n1, n1, 
      n1}, {n2, n2, n2}, {n3}} -> {{c, n1}, {c, n2}, {c, n3}, {n1, n1,
       n1}, {n2, n2, n2}, {n3, n3, n3}}, {{c1, n11}, {c1, n12}, {c1, 
      n13}, {c2, n11}, {c2, n22}, {c2, n23}} -> {{c1, n11}, {c1, 
      n22}, {c1, n13}, {c2, n11}, {c2, n12}, {c2, n23}}};

RulePlot[ResourceFunction["WolframModel"][hypergraphConsensusRule2]]

Now in addition to moving around “colors”, the rule continually restructures the whole hypergraph:

&#10005

(*randomThreeNetwork[nodeCount_, connectionCount_, whiteDensity_] := \
Module[{
    nodes, connectedTriples, connectivityEdges, whiteCount, colors, \
colorEdges},
  nodes = Range @ nodeCount;
  connectedTriples = Table[RandomSample[nodes, 3], connectionCount];
  connectivityEdges = Catenate @ MapIndexed[Thread[{-#2\
\[LeftDoubleBracket]1\[RightDoubleBracket], #}] &, connectedTriples];
  whiteCount = Round[whiteDensity nodeCount];
  colors = RandomSample @ Join[Table[0, nodeCount - whiteCount], \
Table[1, whiteCount]];
  colorEdges = MapIndexed[If[# \[Equal] 0, {#2\[LeftDoubleBracket]1\
\[RightDoubleBracket]}, {#2[[1]], #2[[1]], #2[[1]]}] &, colors];
  Join[connectivityEdges, colorEdges]
]*)

(*hypergraphConsensusRule2={{{c,n1},{c,n2},{c,n3},{n1},{n2},{n3,n3,n3}\
}->{{c,n1},{c,n2},{c,n3},{n1},{n2},{n3}},{{c,n1},{c,n2},{c,n3},{n1,n1,\
n1},{n2,n2,n2},{n3}}->{{c,n1},{c,n2},{c,n3},{n1,n1,n1},{n2,n2,n2},{n3,\
n3,n3}},{{c1,n11},{c1,n12},{c1,n13},{c2,n11},{c2,n22},{c2,n23}}->{{c1,\
n11},{c1,n22},{c1,n13},{c2,n11},{c2,n12},{c2,n23}}};*)

(*inet=BlockRandom[SeedRandom[455454];randomThreeNetwork[25,50,0.4]];*)

(*BlockRandom[SeedRandom[223152]; \
ResourceFunction["WolframModel"][hypergraphConsensusRule2, inet, \
<|"MaxEvents" -> 50|>, "EventOrderingFunction" -> \
"Random"]["StatesPlotsList",ImageSize\[Rule]120]];*)

SetReplace`WolframModelEvolutionObject[
Association[
  "Version" -> 2, 
   "Rules" -> {{{c, n1}, {c, n2}, {c, n3}, {n1}, {n2}, {
       n3, n3, n3}} -> {{c, n1}, {c, n2}, {c, n3}, {n1}, {n2}, {
       n3}}, {{c, n1}, {c, n2}, {c, n3}, {n1, n1, n1}, {n2, n2, n2}, {
       n3}} -> {{c, n1}, {c, n2}, {c, n3}, {n1, n1, n1}, {
       n2, n2, n2}, {n3, n3, n3}}, {{c1, n11}, {c1, n12}, {c1, n13}, {
       c2, n11}, {c2, n22}, {c2, n23}} -> {{c1, n11}, {c1, n22}, {
       c1, n13}, {c2, n11}, {c2, n12}, {c2, n23}}}, 
   "MaxCompleteGeneration" -> 0, "TerminationReason" -> "MaxEvents", 
   "AtomLists" -> {{-1, 16}, {-1, 21}, {-1, 15}, {-2, 2}, {-2, 
     8}, {-2, 15}, {-3, 8}, {-3, 16}, {-3, 15}, {-4, 20}, {-4, 
     12}, {-4, 18}, {-5, 10}, {-5, 18}, {-5, 20}, {-6, 23}, {-6, 
     4}, {-6, 15}, {-7, 24}, {-7, 6}, {-7, 10}, {-8, 18}, {-8, 
     5}, {-8, 1}, {-9, 13}, {-9, 25}, {-9, 6}, {-10, 19}, {-10, 
     8}, {-10, 15}, {-11, 10}, {-11, 3}, {-11, 6}, {-12, 10}, {-12, 
     13}, {-12, 1}, {-13, 13}, {-13, 1}, {-13, 17}, {-14, 7}, {-14, 
     13}, {-14, 12}, {-15, 23}, {-15, 7}, {-15, 22}, {-16, 7}, {-16, 
     9}, {-16, 23}, {-17, 19}, {-17, 5}, {-17, 11}, {-18, 5}, {-18, 
     18}, {-18, 1}, {-19, 11}, {-19, 5}, {-19, 14}, {-20, 21}, {-20, 
     10}, {-20, 23}, {-21, 25}, {-21, 17}, {-21, 5}, {-22, 12}, {-22, 
     4}, {-22, 25}, {-23, 2}, {-23, 24}, {-23, 17}, {-24, 9}, {-24, 
     20}, {-24, 12}, {-25, 18}, {-25, 22}, {-25, 17}, {-26, 25}, {-26,
      19}, {-26, 22}, {-27, 2}, {-27, 17}, {-27, 21}, {-28, 22}, {-28,
      5}, {-28, 23}, {-29, 12}, {-29, 18}, {-29, 22}, {-30, 24}, {-30,
      22}, {-30, 4}, {-31, 25}, {-31, 11}, {-31, 24}, {-32, 23}, {-32,
      4}, {-32, 13}, {-33, 25}, {-33, 22}, {-33, 16}, {-34, 13}, {-34,
      1}, {-34, 23}, {-35, 23}, {-35, 11}, {-35, 24}, {-36, 4}, {-36, 
     6}, {-36, 13}, {-37, 13}, {-37, 15}, {-37, 10}, {-38, 20}, {-38, 
     19}, {-38, 3}, {-39, 11}, {-39, 9}, {-39, 25}, {-40, 25}, {-40, 
     16}, {-40, 1}, {-41, 8}, {-41, 6}, {-41, 17}, {-42, 14}, {-42, 
     7}, {-42, 20}, {-43, 8}, {-43, 6}, {-43, 2}, {-44, 18}, {-44, 
     13}, {-44, 3}, {-45, 10}, {-45, 13}, {-45, 7}, {-46, 22}, {-46, 
     10}, {-46, 4}, {-47, 8}, {-47, 23}, {-47, 1}, {-48, 4}, {-48, 
     25}, {-48, 8}, {-49, 18}, {-49, 13}, {-49, 23}, {-50, 25}, {-50, 
     18}, {-50, 6}, {1, 1, 1}, {2, 2, 2}, {3}, {4}, {5}, {6, 6, 6}, {
     7, 7, 7}, {8}, {9}, {10, 10, 10}, {11}, {12}, {13, 13, 13}, {14, 
     14, 14}, {15}, {16}, {17}, {18}, {19}, {20}, {21}, {22, 22, 
     22}, {23, 23, 23}, {24, 24, 24}, {25}, {-29, 22}, {-29, 
     23}, {-29, 18}, {-15, 22}, {-15, 12}, {-15, 7}, {-12, 13}, {-12, 
     17}, {-12, 10}, {-13, 13}, {-13, 1}, {-13, 1}, {-18, 5}, {-18, 
     1}, {-18, 1}, {-8, 5}, {-8, 18}, {-8, 18}, {-50, 6}, {-50, 
     13}, {-50, 25}, {-36, 6}, {-36, 18}, {-36, 4}, {-9, 25}, {-9, 
     11}, {-9, 6}, {-39, 25}, {-39, 13}, {-39, 9}, {-26, 25}, {-26, 
     22}, {-26, 22}, {-33, 25}, {-33, 19}, {-33, 16}, {-40, 25}, {-40,
      6}, {-40, 1}, {-9, 25}, {-9, 16}, {-9, 11}, {-5, 18}, {-5, 
     23}, {-5, 20}, {-29, 18}, {-29, 10}, {-29, 22}, {-45, 13}, {-45, 
     4}, {-45, 7}, {-32, 13}, {-32, 10}, {-32, 23}, {-50, 25}, {-50, 
     4}, {-50, 6}, {-48, 25}, {-48, 13}, {-48, 8}, {-6, 15}, {-6, 
     13}, {-6, 23}, {-37, 15}, {-37, 4}, {-37, 10}, {-17, 19}, {-17, 
     25}, {-17, 5}, {-33, 19}, {-33, 11}, {-33, 16}, {-40, 25}, {-40, 
     11}, {-40, 1}, {-31, 25}, {-31, 6}, {-31, 24}, {-35, 23}, {-35, 
     9}, {-35, 24}, {-16, 23}, {-16, 11}, {-16, 7}, {-10, 15}, {-10, 
     23}, {-10, 19}, {-6, 15}, {-6, 8}, {-6, 13}, {-37, 15}, {-37, 
     8}, {-37, 4}, {-6, 15}, {-6, 10}, {-6, 13}, {-3, 8}, {-3, 
     6}, {-3, 16}, {-41, 8}, {-41, 15}, {-41, 17}, {-22, 4}, {-22, 
     18}, {-22, 12}, {-36, 4}, {-36, 25}, {-36, 6}, {-49, 18}, {-49, 
     20}, {-49, 23}, {-5, 18}, {-5, 13}, {-5, 23}, {-21, 17}, {-21, 
     22}, {-21, 25}, {-25, 17}, {-25, 5}, {-25, 18}, {-1, 21}, {-1, 
     10}, {-1, 16}, {-20, 21}, {-20, 15}, {-20, 23}, {-36, 6}, {-36, 
     8}, {-36, 4}, {-43, 6}, {-43, 25}, {-43, 2}, {-47, 23}, {-47, 
     15}, {-47, 1}, {-20, 23}, {-20, 8}, {-20, 21}, {-30, 4}, {-30, 
     7}, {-30, 24}, {-45, 4}, {-45, 22}, {-45, 13}, {-39, 13}, {-39, 
     23}, {-39, 9}, {-5, 13}, {-5, 25}, {-5, 18}, {-49, 18}, {-49, 
     20}, {-49, 20}, {-4, 18}, {-4, 23}, {-4, 12}, {-21, 22}, {-21, 
     10}, {-21, 17}, {-46, 22}, {-46, 25}, {-46, 4}, {-21, 10}, {-21, 
     24}, {-21, 22}, {-7, 10}, {-7, 17}, {-7, 6}, {-47, 23}, {-47, 
     12}, {-47, 1}, {-4, 23}, {-4, 15}, {-4, 18}, {-39, 13}, {-39, 
     22}, {-39, 23}, {-45, 13}, {-45, 9}, {-45, 4}, {-2, 2}, {-2, 
     17}, {-2, 8}, {-23, 2}, {-23, 15}, {-23, 24}, {-32, 13}, {-32, 
     25}, {-32, 10}, {-5, 13}, {-5, 23}, {-5, 18}, {-21, 24}, {-21, 
     7}, {-21, 10}, {-30, 24}, {-30, 22}, {-30, 4}, {-20, 8}, {-20, 
     13}, {-20, 23}, {-48, 8}, {-48, 21}, {-48, 25}, {-22, 18}, {-22, 
     17}, {-22, 4}, {-25, 18}, {-25, 12}, {-25, 5}, {-39, 22}, {-39, 
     4}, {-39, 23}, {-46, 22}, {-46, 13}, {-46, 25}, {-8, 18}, {-8, 
     23}, {-8, 5}, {-4, 18}, {-4, 18}, {-4, 15}, {-16, 23}, {-16, 
     1}, {-16, 11}, {-34, 23}, {-34, 7}, {-34, 13}, {-31, 6}, {-31, 
     10}, {-31, 25}, {-11, 6}, {-11, 24}, {-11, 3}, {-24, 20}, {-24, 
     14}, {-24, 9}, {-42, 20}, {-42, 12}, {-42, 7}, {-21, 10}, {-21, 
     18}, {-21, 7}, {-29, 10}, {-29, 24}, {-29, 22}, {-7, 6}, {-7, 
     16}, {-7, 10}, {-3, 6}, {-3, 17}, {-3, 8}, {-8, 23}, {-8, 
     11}, {-8, 5}, {-16, 23}, {-16, 18}, {-16, 1}, {-21, 10}, {-21, 
     6}, {-21, 18}, {-31, 10}, {-31, 7}, {-31, 25}, {-9, 25}, {-9, 
     5}, {-9, 11}, {-17, 25}, {-17, 16}, {-17, 19}, {-20, 23}, {-20, 
     11}, {-20, 8}, {-8, 23}, {-8, 13}, {-8, 5}, {-3, 8}, {-3, 
     4}, {-3, 17}, {-37, 8}, {-37, 6}, {-37, 15}, {-29, 10}, {-29, 
     7}, {-29, 24}, {-31, 10}, {-31, 22}, {-31, 25}, {-46, 13}, {-46, 
     23}, {-46, 22}, {-8, 13}, {-8, 25}, {-8, 5}, {-17, 16}, {-17, 
     10}, {-17, 25}, {-1, 16}, {-1, 19}, {-1, 21}}, 
   "EventRuleIDs" -> {0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
    3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 
    3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3}, 
   "EventInputs" -> {{}, {87, 85, 86, 45, 43, 44}, {35, 36, 34, 37, 
     39, 38}, {52, 53, 54, 23, 24, 22}, {150, 149, 148, 107, 108, 
     106}, {26, 25, 27, 117, 115, 116}, {76, 77, 78, 97, 98, 99}, {
     118, 119, 120, 200, 202, 201}, {14, 13, 15, 178, 177, 176}, {134,
      133, 135, 96, 95, 94}, {196, 195, 194, 143, 142, 144}, {18, 17, 
     16, 110, 109, 111}, {49, 51, 50, 210, 209, 211}, {212, 213, 214, 
     91, 92, 93}, {103, 104, 105, 48, 47, 46}, {30, 29, 28, 236, 238, 
     237}, {239, 241, 240, 263, 264, 265}, {7, 9, 8, 121, 122, 123}, {
     65, 66, 64, 199, 198, 197}, {145, 146, 147, 218, 220, 219}, {62, 
     63, 61, 75, 74, 73}, {2, 3, 1, 58, 59, 60}, {283, 282, 281, 128, 
     127, 129}, {140, 139, 141, 301, 300, 299}, {90, 89, 88, 225, 226,
      224}, {204, 203, 205, 288, 289, 287}, {284, 286, 285, 12, 10, 
     11}, {291, 292, 290, 136, 137, 138}, {333, 334, 332, 21, 19, 
     20}, {308, 309, 310, 330, 331, 329}, {320, 322, 321, 319, 318, 
     317}, {4, 6, 5, 67, 69, 68}, {227, 229, 228, 323, 324, 325}, {
     339, 340, 338, 316, 315, 314}, {312, 313, 311, 235, 234, 233}, {
     279, 280, 278, 295, 293, 294}, {351, 350, 352, 335, 337, 336}, {
     193, 192, 191, 349, 347, 348}, {257, 259, 258, 102, 101, 100}, {
     252, 253, 251, 33, 31, 32}, {71, 72, 70, 126, 124, 125}, {370, 
     368, 369, 222, 221, 223}, {343, 342, 341, 273, 274, 272}, {393, 
     392, 394, 398, 400, 399}, {416, 418, 417, 405, 404, 406}, {215, 
     216, 217, 243, 244, 242}, {376, 375, 374, 428, 429, 430}, {427, 
     425, 426, 267, 268, 266}, {419, 421, 420, 437, 438, 439}, {390, 
     391, 389, 450, 449, 451}, {444, 445, 443, 298, 297, 296}}, 
   "EventOutputs" -> {{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 
     15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 
     31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 
     47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 
     63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 
     79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 
     95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 
     109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 
     122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 
     135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 
     148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 
     161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 
     174, 175}, {176, 177, 178, 179, 180, 181}, {182, 183, 184, 185, 
     186, 187}, {188, 189, 190, 191, 192, 193}, {194, 195, 196, 197, 
     198, 199}, {200, 201, 202, 203, 204, 205}, {206, 207, 208, 209, 
     210, 211}, {212, 213, 214, 215, 216, 217}, {218, 219, 220, 221, 
     222, 223}, {224, 225, 226, 227, 228, 229}, {230, 231, 232, 233, 
     234, 235}, {236, 237, 238, 239, 240, 241}, {242, 243, 244, 245, 
     246, 247}, {248, 249, 250, 251, 252, 253}, {254, 255, 256, 257, 
     258, 259}, {260, 261, 262, 263, 264, 265}, {266, 267, 268, 269, 
     270, 271}, {272, 273, 274, 275, 276, 277}, {278, 279, 280, 281, 
     282, 283}, {284, 285, 286, 287, 288, 289}, {290, 291, 292, 293, 
     294, 295}, {296, 297, 298, 299, 300, 301}, {302, 303, 304, 305, 
     306, 307}, {308, 309, 310, 311, 312, 313}, {314, 315, 316, 317, 
     318, 319}, {320, 321, 322, 323, 324, 325}, {326, 327, 328, 329, 
     330, 331}, {332, 333, 334, 335, 336, 337}, {338, 339, 340, 341, 
     342, 343}, {344, 345, 346, 347, 348, 349}, {350, 351, 352, 353, 
     354, 355}, {356, 357, 358, 359, 360, 361}, {362, 363, 364, 365, 
     366, 367}, {368, 369, 370, 371, 372, 373}, {374, 375, 376, 377, 
     378, 379}, {380, 381, 382, 383, 384, 385}, {386, 387, 388, 389, 
     390, 391}, {392, 393, 394, 395, 396, 397}, {398, 399, 400, 401, 
     402, 403}, {404, 405, 406, 407, 408, 409}, {410, 411, 412, 413, 
     414, 415}, {416, 417, 418, 419, 420, 421}, {422, 423, 424, 425, 
     426, 427}, {428, 429, 430, 431, 432, 433}, {434, 435, 436, 437, 
     438, 439}, {440, 441, 442, 443, 444, 445}, {446, 447, 448, 449, 
     450, 451}, {452, 453, 454, 455, 456, 457}, {458, 459, 460, 461, 
     462, 463}, {464, 465, 466, 467, 468, 469}, {470, 471, 472, 473, 
     474, 475}}, 
   "EventGenerations" -> {0, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 1, 2, 3, 1,
     2, 3, 1, 2, 3, 1, 1, 3, 2, 2, 4, 4, 2, 3, 5, 5, 1, 5, 4, 3, 3, 6,
     6, 2, 4, 1, 5, 4, 7, 6, 3, 8, 5, 7, 9, 4}]]["StatesPlotsList", 
 ImageSize -> 120]

Ultimately this is something very close to our Physics Project. We can imagine encoding values in certain localized structures in our hypergraph—just as we imagine that particles (like photons or quarks) in physics correspond to something like “topological obstructions” in the hypergraph that represents physical space. And in these terms one can imagine formulating questions about consensus in terms of some kind of generalization of conservation laws for particles.

What’s Left to Figure Out

The problem of distributed consensus is in many ways a tantalizing one. The most obvious approach to it—with the simple majority rule—gets a fair distance, but has definite limitations. And as we’ve seen here, in specific, well-controlled situations there are much better rules—and setups—that can be used. But we don’t yet know robust, general, efficient solutions.

One might imagine that to find one would just take “inventing the right algorithm” or “writing the right program”. But I think it’s unlikely that this kind of traditional “engineering” approach will bear fruit. Instead, I think the most promising path forward is to try to “mine the computational universe” for appropriate rules, in the style suggested by A New Kind of Science. And I expect that the best rules will be ones that don’t have “readily human understandable” behavior, but instead “do their job” in surprising and perhaps elaborate ways that we would never anticipate.

How can we search for these rules? The most important challenge is to have a good definition of our objective with them. There’ll always be tradeoffs. How important is an occasional failure of consensus? How important are different features of the distribution of times to reach consensus? How much do we care about the complexity of the rules? And so on.

So given an objective, what’s the best way to actually conduct the search? My consistent experience in mining the computational universe has been that the best results come from the most straightforward strategies. More elaborate strategies tend to make implicit assumptions, that prevent the discovery of truly surprising or unexpected results.

A good start is just to do an exhaustive search. It’s important to be very careful in pruning it, lest one miss the “unexpected way” that a system can achieve some particular objective. Is it likely to be possible to “incrementally improve” rules, say with genetic algorithms? I’m not especially hopeful. Because to make serious use of what the computational universe has to offer, our rules are likely to need to show computational irreducibility—and this makes it essentially inevitable that the “landscape” of “nearby” rules will be irreducibly “rough”, making any computationally bounded incremental improvement unlikely to be successful.

Could we perhaps train a machine learning system to suggest useful rules? It may be possible to do some pruning of candidate rules this way, although inevitably there is some risk of missing the “unexpected rule”. And in general the presence of computational irreducibility makes it implausible that an incrementally trained machine learning system will be extremely successful.

One might have thought that something like exhaustive search could never find useful results, because the space of rules is in some sense just too big. But a key discovery from my explorations of the computational universe is that in fact there are surprisingly simple rules that can show rich and sophisticated behavior. And this makes it plausible that one could discover a good solution to the problem of distributed consensus just by appropriately searching the computational universe—and “mining” some rule that can then be used quite generally as a basis for all sorts of practical distributed consensus.

Some Historical Background

Investigations of what amounts to distributed consensus have a fairly long, if seemingly scattered history. As soon as even somewhat complex electromechanical and electronic systems were being built, the question arose of how to make the whole system behave in a reliable way even if some of its components were unreliable. The simplest answer was to have redundancy, and somehow to “take a vote”, and go with the “majority” decision. In the earliest computers (and later particularly in aerospace systems) such a vote was typically between copies of more-or-less complete systems.

But by the beginning of the 1950s there was increasing interest in moving the voting down to the level of smaller components. And in 1952 John von Neumann, in his “Probabilistic Logics and the Synthesis of Reliable Organisms from Unreliable Components”, began to give a mathematical structure for analyzing this. Central to his discussion was what he called the “majority organ”, which is essentially a component for computing the Boolean majority function:

The Majority Organ

von Neumann imagined building up everything (including the majority organ) from what he called “Sheffer organs”—or what we would now call Nand gates. And as an example of the need for redundancy he says “Consider a computing machine with 2500 vacuum tubes, each actuated on average every 5 microseconds. Assume a mean free path of 8 hours between errors is desired.” Somewhat mysteriously he then assumes the very high (even for the time) error rate ϵ = 0.005 and concludes that to operate reliably “the system should be multiplexed 14,000 times”. (von Neumann goes on to talk about errors in brains, as modeled by neural nets. Rather implausibly he states that in brains “errors are not ordinarily observed”, and concludes from this that the multiplexing factor must be about 20,000—which he viewed as being consistent with what was then known about actual brains.)

Fortunately for the history of computing von Neumann’s example error rate turned out to be very wide of the mark—and once vacuum tubes were replaced by solid-state devices the problem of component failures in computers more or less disappeared (though it reappears in modern thinking about molecular-scale computing). In communications systems (and, to a lesser extent, storage devices) errors were always still important, and this led by the 1960s to increasing work on error-correcting codes.

But perhaps because the transition to solid-state electronics happened more slowly in the Soviet Union interest in the problem of getting reliable results from unreliable components lasted much longer there. And while in the West, such issues tended to be thought of as matters of applied engineering, in the Soviet Union they were much more considered a matter of pure mathematics. (In the West, there was also in the 1950s the rather amorphous idea of “cybernetics”, which was initially considered ideologically inappropriate in the Soviet Union, but was later adopted there, and turned in a much more mathematical direction.)

But in addition to questions coming essentially from the construction of machines (or brains), there was an initially quite separate strand of questions coming from physics. A very basic observation in physics is that materials undergo so-called phase transitions. For example, as one heats up water, there is a definite temperature at which all the molecules “together decide” to make the transition from liquid to gas.

A somewhat more subtle version of the same kind of thing occurs in magnetic materials like iron. Below a certain temperature, electron spins associated with all the atoms in the material tend to line up. But in what direction? Somehow a “consensus direction” is selected—that defines the macroscopic direction of the magnetic field produced by the material. And in the 1920s the Ising model was suggested as a simple model for this.

But before getting to phase transitions, there was a more basic physics question of how microscopic discrete elements like atoms could in general lead to macroscopic phenomena. And a key part of this question had to do with understanding the motion of molecules and how this could lead to “thermodynamic equilibrium”. The whole story of the foundations of “statistical mechanics” got quite muddled (and I think it’s only quite recently, with computation-based ideas, that we’ve finally been able to properly sort it out). But particularly in the first few decades of the 1900s the key idea was thought to be ergodicity: essentially the notion that the equations of motion of molecules will lead them eventually to visit all possible states of a system, thereby, it was argued, making their behavior seem random.

It was difficult to establish ergodicity mathematically. But beginning around the 1930s this was a major emphasis of the field of dynamical systems theory. Meanwhile, there were also difficulties in understanding mathematically how phase transitions could occur. And one point of contact was that when there’s a phase transition, ergodicity effectively has to be broken: the spins in a magnet end up in a particular direction, and don’t visit all directions.

At the beginning of the 1960s there was a convergence in Moscow of a considerable number of top Soviet mathematicians (notably including Andrei Kolmogorov) who were variously working on statistical mechanics, ergodic theory, dynamical systems—and some of the mathematical sequelae of cybernetics. And one of the pieces of work that emerged was a paper in 1968 by a then-young math-competition-winning mathematician named Andrei Toom.

The (translated) title of the paper is “A Family of Uniform Nets of Formal Neurons”. The paper is cast in terms of formal probability theory and the study of Markov chains. But basically it’s a construction of what amounts to a probabilistic cellular automaton, and a proof that even though it’s probabilistic, certain aspects of its behavior are “non-ergodic” and effectively deterministic. (It’s notable that in 1963 Toom had done another construction: of what’s now called the Toom–Cook algorithm for fast multiplication of integers with many digits.)

In traditional statistical mechanics (which was somewhat distinct from ergodic theory) the original focus was on studying “equilibrium” systems, in which different possible configurations (say of the Ising model) occurred with particular weightings. But by the 1950s—especially in work at Los Alamos—the idea arose of sequentially “Monte Carlo” sampling these configurations on a computer. And in 1963 Roy Glauber suggested thinking of the actual dynamics of the Ising model in terms of sequential probabilistic updating of spins.

Meanwhile, somewhat separately, there was increasing study—particularly by American mathematicians such as Frank Spitzer—of the probability theory of collections of random walks, often referred to as “interacting particle systems”. And one of the main results was that as soon as nonzero probabilities were involved, ergodicity was typically found.

Apparently independent of these developments the Moscow group in 1969 produced a paper entitled “Modeling of Voting with Random Error”. It featured a calculation done on an “electronic computing machine” (“ЭВМ” in Russian) of the probabilistic evolution of a majority model (and quite likely the machine used was a base-3 Setun computer developed by the mathematician Sergei Sobolev):

Modeling of voting with random error

The paper concluded that in 1D, the model was probably always ergodic, but in 2D, for sufficiently small noise level, it might not be.

In 1971 Roland Dobrushin (a student of Kolmogorov’s) connected the investigation of ergodicity in these networks with phase transitions in Ising models—which helped define the program of research at his “Laboratory of Multi-component Random Systems” at the “Institute for Problems of Information Transmission” that brought together the Soviet cybernetics tradition (with its work on things like neural nets, Markov chains and formal computability theory) with international work on mathematical physics and ergodic theory.

A typical product of this was the 1976 conference organized by Dobrushin (along with Toom and others) nominally entitled “Locally Interacting Systems and Their Application in Biology”—but actually with very little biology in sight, and steeped in sophisticated mathematics, about things like Markov fields, Gibbs measures and algorithmic unsolvability.

A key question that had emerged was whether a homogeneous array of probabilistic elements (i.e. a probabilistic cellular automaton) could consistently and deterministically store information, or whether inevitably there would be ergodicity that would destroy it.

In 1974 Toom showed that a multidimensional probabilistic cellular automaton could do this—essentially just using a majority rule on a non-symmetric neighborhood to generate a “global consensus state”, as we showed above. But the question still remained of whether anything similar was possible in 1D.

Phase transitions in traditional statistical physics don’t happen in 1D if microscopic reversibility is assumed—making it seem like it might be impossible to maintain multiple distinct global states. But in 1976 Boris Tsirelson pointed out that at least with a hierarchical arrangement of interactions one could in fact achieve long-range order in a probabilistic 1D system:

Probabilistic 1D system

Soon thereafter Georgii Kurdyumov—having at first discussed the undecidability of ergodicity in the 1D case—then argued that there should be a pure cellular automaton that would work.

And in 1978, Peter Gacs, Georgii Kurdyumov and Leonid Levin (all of whom had been in the Kolmogorov orbit) wrote a short paper entitled “One-Dimensional Uniform Arrays That Wash Out Finite Islands” that introduced the “GKL rule” we discussed above. They didn’t show any actual pictures of the behavior of the system, but they gave a proof that in the deterministic case the rule leads to two distinct phases, corresponding to the two distinct consensus states. And then they showed the result of a simulation that suggested that even when a certain amount of noise was added the two consensus states would still be reached:

Two consensus states still reached

However, what had become known as the “positive probability conjecture” implied that there couldn’t in the end actually be non-ergodicity in the 1D case. But in 1983 Peter Gacs came up with what he claimed was a counterexample based on an elaborate construction described in many pages of pseudocode:

Reliable computations

It took many years for the proof of this to clarify, with Gacs publishing a final version only in 2001.

Meanwhile, there’d been several other developments. Starting in 1982 my own discoveries about deterministic cellular automata had made 1D cellular automata much more prominent—and had made physicists aware of them. (As it happens, Gacs announced his 1983 result at a conference at Los Alamos I had organized, that I believe was the first ever to be devoted to cellular automata.)

Around the end of the 1980s there was then a burst of activity by several leading mathematical physicists devoted to applying methods from statistical mechanics (and especially from areas like directed percolation theory) to the analysis of probabilistic cellular automata. There was awareness of Toom’s work, and for example connections were made between PDEs (like the KPZ equation) and things like the average behavior of “domain walls” in the probabilistic Toom rule.

One can view the process of coming to consensus in a 1D cellular automaton as being like a “density classification” problem: if the initial density of 1s is above , classify as 1, otherwise classify as 0. And starting in the 1990s density classification in 1D (deterministic) cellular automata was used as a prime example of a place where algorithms might be discovered by genetic or other search techniques.

In a quite different direction, work on cryptographic protocols in the 1980s had highlighted various models for achieving consensus between agents, even in the presence of adversarial efforts. Meanwhile, there was increasing interest in formal models of parallel computation, their computational complexity, and their fault tolerance. And by the early 2000s there was work being done (notably by Nick Pippenger) on connections between these things and what was known about probabilistic cellular automata, and the possibility of deterministic computation in them.

And this pretty much takes us to the current time—and the new applications of distributed consensus in blockchain-like systems. And here it’s interesting to see the rather different intellectual lineages of two different efforts: Yilun Zhang at NKN coming from a statistical physics/computational neuroscience/information theory tradition, and Serguei Popov at Iota coming from probability theory and stochastic processes—as a great-grand-student of Kolmogorov.

Some Personal Notes

Of all the work I’ve done on cellular automata and related systems over the past more than forty years rather little has been devoted to the topics I’ve been discussing here. There are a couple of reasons for this. The most important is that my main interest has been in studying the remarkable richness and complexity that cellular automata and other very simple programs can generate—and in building a paradigm for thinking about this. Yet something like distributed consensus is at some level about getting rid of complexity rather than generating it. It’s about taking whatever complicated initial state there may be, and somehow reducing it to a “simple consensus”, where there’s none of that complexity.

Another point is that at least some of what we’ve discussed here has concerned probabilistic systems, which I’ve tended to ignore on the grounds that they obscure the fundamental phenomena of the computational universe. If one didn’t know that simple, deterministic rules could do complex things, one might imagine that would have to inject randomness from the outside to make this happen. But the fact is that even very simple, deterministic rules can produce highly complex behavior, that in fact often makes its own apparent randomness.

So that means there’s no need to “go outside the system”—and to introduce external randomness or probabilities. And in fact such probabilities tend to have the effect of hiding whatever complexity is intrinsically produced—even if they do “smooth out average behavior” to make things more accessible to traditional mathematical methods.

There are actually some new perspectives on this from our Physics Project. First, the project makes clear the crucial interplay between underlying computational irreducibility, and effectively probabilistic large-scale behavior that can be treated in computationally reducible ways. And second, the project suggests that instead of thinking about probabilities for different behavior, one should think about the whole multiway system of possible behaviors, and its overall properties.

It so happens that when I first became interested in the origins of complexity the first two kinds of models I thought about were spin systems (like the Ising model) and neural nets. But as I tried to simplify things I ended up inventing for myself what I soon found out were one-dimensional cellular automata. Much of my effort was then concentrated in doing experiments on these systems, and in developing theories and principles around the results I found.

But I also tried to do my homework on earlier work. Cellular automata had gone by many names. But leafing through the (then on paper) Science Citation Index I slowly began to piece together some of their history, and soon found things like the paper introducing the GKL rule. In my first long paper on cellular automata (entitled “Statistical Mechanics of Cellular Automata” and published in 1983) I have just a few paragraphs about “probabilistic rules”, discussing ergodicity and phase transitions, and referencing the GKL paper.

Over the years I accumulated five thick folders of copies of papers that I labeled as being about “Stochastic Cellular Automata”. And I also purchased books. And in writing this piece I was able to just pull off my shelf things like Dobrushin’s 1976 book. And in one of those manifestations of the smallness of the scientific world, when I looked in the front of my (apparently used) copy of this book yesterday, what should I see there but the signature of Frank Spitzer—who I had just been writing about!

When I was writing A New Kind of Science, both probabilistic cellular automata and what amounts to the problem of consensus did come up, and there are several mentions of such things in the book, notably in connection with my discussion of the “Origins of Discreteness”:

A New Kind of Science

But these things were never a big emphasis of my work, and so it’s been interesting here to trace just how the methods I’ve developed can be applied to them, and to realize that—despite its slightly different presentation—the problem of distributed consensus is in many ways actually a quintessential question that can be addressed by the kind of science that’s derived from studying the computational universe.

Bibliography of Distributed Consensus with
Cellular Automata & Related Systems »

Stephen Wolfram (2021), "The Problem of Distributed Consensus," Stephen Wolfram Writings. writings.stephenwolfram.com/2021/05/the-problem-of-distributed-consensus.
Text
Stephen Wolfram (2021), "The Problem of Distributed Consensus," Stephen Wolfram Writings. writings.stephenwolfram.com/2021/05/the-problem-of-distributed-consensus.
CMS
Wolfram, Stephen. "The Problem of Distributed Consensus." Stephen Wolfram Writings. May 17, 2021. writings.stephenwolfram.com/2021/05/the-problem-of-distributed-consensus.
APA
Wolfram, S. (2021, May 17). The problem of distributed consensus. Stephen Wolfram Writings. writings.stephenwolfram.com/2021/05/the-problem-of-distributed-consensus.

Posted in: Computational Science, Mathematics, New Kind of Science, Ruliology