Characterization of random fluctuation-based computation in cellular automata

Characterization of random fluctuation-based computation in cellular automata

ARTICLE IN PRESS JID: INS [m3Gsc;March 10, 2016;19:41] Information Sciences xxx (2016) xxx–xxx Contents lists available at ScienceDirect Informat...

2MB Sizes 0 Downloads 105 Views

ARTICLE IN PRESS

JID: INS

[m3Gsc;March 10, 2016;19:41]

Information Sciences xxx (2016) xxx–xxx

Contents lists available at ScienceDirect

Information Sciences journal homepage: www.elsevier.com/locate/ins

Characterization of random fluctuation-based computation in cellular automata Q1

Jia Lee a,b,∗, Ferdinand Peper c,d, Kenji Leibnitz c, Ping Gu a,b

Q2

a

College of Computer Science, Chongqing University, Chongqing, China Chongqing Key Laboratory of Software Theory & Technology, Chongqing, China c Center for Information and Neural Networks, National Institute of Information and Communications Technology and Osaka University, Suita 565-0871, Japan d Graduate School of Engineering, University of Hyogo, Himeji 671-2280, Japan b

a r t i c l e

i n f o

Article history: Received 25 May 2015 Revised 22 February 2016 Accepted 29 February 2016 Available online xxx Keywords: Cellular automata Random fluctuations Markov chain Delay-insensitive circuits Universal computation

a b s t r a c t A Brownian Cellular Automaton (BCA) is an Asynchronous Cellular Automaton (ACA) in which the timing of the local cell state transitions approach a Poisson point process, and the global transitions between cell configurations can be formulated as an irreducible and reversible Markov chain. BCAs exploit fluctuations to find solutions of a computation via a stochastic search process. This characteristic has been shown to contribute to a decreased complexity of BCAs (Lee and Peper, 2008), as compared to non-Brownian ACAs with equivalent functionality. This paper proposes a computationally universal BCA that is based on a conventional ACA, rather than the previously employed block cellular automata, which have transition rules that update each cell simultaneously with its neighboring cells. The proposed model allows for a more natural update model, in which no need arises to locally synchronize the cells in a neighborhood. The resulting BCA is significantly less complex than equivalent non-block non-Brownian ACAs, which demonstrates that random fluctuations can serve as a powerful resource for efficient computation on cellular automata. © 2016 Published by Elsevier Inc.

1

1. Introduction

2

A Cellular Automaton (CA) is a discrete dynamical system consisting of a large number of identical finite-state automata (cells) that are locally connected in a uniform way. Each cell has a state from a finite set of states, and updates it according to a local transition function, which determines a cell’s next state based on the states of the cell and the cells in its neighborhood. Most CA models require that all cells undergo state transitions at the same time, and they are called synchronous cellular automata. Asynchronous Cellular Automaton (ACA) models [7], on the other hand, allow cells to change their states independently at random times. They are considered more realistic for the simulation of systems in nature, since they do not suffer from the artifacts associated with a synchronous mode of updating [1]. Apart from the use for simulation, ACAs have also attracted attention as models of computation. A usual scheme for computing on ACAs simulates a timing mechanism to synchronize the updates of all cells [26]. In this way an n-state synchronous CA (n > 0) can be simulated by an equivalent ACA

3 4 5 6 7 8 9 10 11

Q3 Q4



Corresponding author at: College of Computer Science, Chongqing University, Chongqing, China. Tel.: +86 2365102506. E-mail address: [email protected], [email protected] (J. Lee).

http://dx.doi.org/10.1016/j.ins.2016.02.046 0020-0255/© 2016 Published by Elsevier Inc.

Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

ARTICLE IN PRESS

JID: INS 2

[m3Gsc;March 10, 2016;19:41]

J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

40

using n2 + 2n states [13]. Another, more efficient, scheme allows the embedding of Delay-Insensitive (DI) circuits [10,14]—a special type of asynchronous circuit [8]—into the cell space of an ACA [28]. The embedding of logic circuits into cell spaces has also been used in schemes in which local configurations representing signals may move randomly, fluctuating between forward and backward directions, as if they are undergoing random walks [15,16,30]. Such Brownian Cellular Automaton (BCA) models are capable of simulating the class of all DI-circuits, but, surprisingly, the required complexities in terms of the number of cell states and transition rules are significantly lower than those of comparable computation-universal ACAs achieved thus far [1,11,28,29]. The reason behind this somewhat counterintuitive result is that fluctuations are exploited as a trial-and-error mechanism to make signals search for a viable computational path. Since this replaces a more explicit control of signals during computation, the resulting models become less complex (see also [17]). As fluctuations provide an effective resource to search through the state space associated with computation [4], they allow the BCA in [15] to use merely 3 cell states and 3 transition rules. This low complexity is facilitated by three types of circuit elements [15] that are laid out on the cell space of the BCA and that actively exploit the fluctuation of signals. These Brownian circuit elements [15,30,31] form a universal set from which all DI-circuits can be constructed. The reduced complexity of the BCA in [15] is also partly due to the block structure of its transition rules [21], which not only update the state of a cell based on the states of the cell itself and of its neighboring cells, but also update the states of the neighboring cells. Conventional ACAs, however, provide a more natural, less restricted, update mechanism, and since they can be used to model a wide variety of complex dynamics in nature [6,35], like the Brownian motion emerging from the asynchronous counterpart of elementary cellular automata [3], it thus makes sense to explore conventional ACAs as well for computation that can exploit random fluctuations. As with the previously employed block BCAs [15–17,30], this paper shows that the framework of fluctuation-based computation results in a decreased complexity of conventional ACAs. We propose a conventional ACA that can simulate a block BCA specifically constructed for this purpose, and show that this ACA exhibits random walk-like behavior similar to that in the block BCA. Though the ACA requires more cell states and transition rules than the block BCA, its complexity is significantly less (4 states and 17 transition rules) than the best-known comparable universal ACA, which requires 5 states and 55 transition rules [11], while it still uses the conventional formulation of ACAs. The reduced complexity of the ACA demonstrates once again that fluctuations can be exploited as a powerful resource for computing on cellular automata. This paper is organized as follows. Section 2 provides a formal definition of BCAs. Section 3 outlines DI-circuits and Brownian circuits. Section 4 introduces a new block BCA, and Section 5 describes how to simulate the block BCA on a conventional ACA. The paper finishes with conclusions in Section 6.

41

2. Brownian cellular automaton model

42

A BCA has configurations in its cell space that move around as in a random walk [15,30]. We start with the definition of an asynchronous cellular automaton and then define the features that make it “Brownian”.

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

43 44 45 46 47 48 49 50 51 52 53 54 55 56 57

Definition 2.1. An asynchronous cellular automaton is a 5-tuple (ZZ d , N, Q, f, λ), whereby ZZ is the set of all integers and ZZ d represents the d-dimensional array of cells (d > 0). N ⊂ ZZ d is a finite set called neighborhood index, and Q is a finite set of cell states (Q = ∅). In addition, f: Q|N| → Q, is a partial function called the local transition function, and λ > 0 denotes the transition rate of each transition. Let Dom( f ) ⊆ Q |N| denote the domain of the local function f such that f : Dom( f ) → Q is a function, and for any (q1 , . . . , q|N| ) ∈ Q |N| \ Dom( f ), f (q1 , . . . , q|N| ) is undefined. Definition 2.2. Let (ZZ d , N, Q, f, λ) be an asynchronous cellular automaton. A configuration is a mapping c : ZZ d → Q that assigns to each cell a certain state from Q. The set of all configurations over Q is Conf(Q ) = {c | c : ZZ d → Q }. Let N = {n1 , n2 , . . . , n|N| } where ni ∈ ZZ d (1 ≤ i ≤ |N|). Assume x ∈ ZZ d and c ∈ Conf(Q ). For convenience, we use xN to represent the |N|-tuple of vectors (x + n1 , x + n2 , . . . , x + n|N| ), where + denotes vector addition. In addition, c(xN ) denotes the |N|-tuple of states (c (x + n1 ), c (x + n2 ), . . . , c (x + n|N| )). Definition 2.3. Let A = (ZZ d , N, Q, f, λ ) be an asynchronous cellular automaton. The cell x ∈ ZZ d in A is enabled in the configuration c ∈ Conf(Q ) if c (xN ) ∈ Dom( f ); otherwise the cell is not enabled. A is said to have a global transition from c ∈ Conf(Q ) to c ∈ Conf(Q ), written as c −→ c , if

∃x ∈ ZZ d ∀x ∈ ZZ d \ {x} : c(xN ) ∈ Dom( f ) ∧ c (x ) = f (c(xN )) ∧ c (x ) = c(x ). 58 59 60 61 62 63

+

+

We write c −→ c if c −→ c or ∃c

∈ Con f (Q ) : c −→ c

−→ c . An enabled cell is updated by a transition when the transition function f is applied to it. Each update of a cell by a transition is associated with an exponential distributed random variable with mean λ, where 1/λ expresses the expected delay from enabling the cell to updating the cell. If several cells are simultaneously enabled, the cell with the shortest delay will be updated first. The cellular automaton’s random updating method is called time-driven [33]. Due to the cell space being of infinite size, the probability of two cells being updated simultaneously is zero. Throughout this paper we assume Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

JID: INS

ARTICLE IN PRESS J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

64 65 66 67 68 69 70 71 72 73 74

[m3Gsc;March 10, 2016;19:41] 3

that all configurations contain a finite (not necessarily bounded) number of cells that are enabled. In this case, the timedriven scheme is equivalent to an updating method in a finite cell space in which cells are updated one by one according to a uniform distribution [33]. Lemma 2.1. An asynchronous cellular automaton is isomorphic to a continuous-time Markov chain with either a finite or a countable number of discrete states. Proof. Let (X (t ) ∈ Conf(Q ); t ≥ 0 ) be a continuous-time stochastic process of which the random variable X(t) assumes as value a state described by the configuration of the cell space at time t, and let (Xk ∈ Conf(Q ); k ≥ 0 ) be the corresponding embedded discrete-state discrete-time stochastic process, whereby the sequence X0 , X1 , X2 , . . . describes the successive states assumed by X(t). Since there are merely a finite number of cells that are enabled in any configuration, the stochastic process has either a finite or a countable number of discrete states. If c0 , c1 , c2 , . . . , c j , . . . ∈ Conf(Q ) is a sequence of configurations where ci −→ ci+1 for all i ≥ 0, then

Prob{Xk+1 = ck+1 |Xk = ck , Xk−1 = ck−1 , . . . , X0 = c0 } = Prob{Xk+1 = ck+1 |Xk = ck }, 75 76 77 78 79 80 81 82 83 84 85

because transitions in the cellular automaton are only dependent on the latest cell states. In other words, (Xk ; k ≥ 0) is a discrete-time Markov chain and (X(t); t ≥ 0) is the continuous-time Markov chain embedding it.  The above lemma implies that the continuous-time Markov chain (X(t); t ≥ 0) that is isomorphic to an ACA (ZZ d , N, Q, f,

λ) has state space Conf(Q ), and so has the embedded discrete-time Markov chain (Xk ; k ≥ 0). In addition, for any two states ci , c j ∈ Conf(Q ), the transition probability from ci to cj given by pi, j = Prob{Xk+1 = c j |Xk = ci } satisfies pi, j > 0 if ci −→ c j ; otherwise, pi, j = 0. In addition to the isomorphism, it is possible to define a partial isomorphism from an ACA to a continuous-time Markov chain of which the state space is restricted to a subset of configurations. Let CI ⊆ Conf(Q ) and (Y(t) ∈ C; I t ≥ 0) be a stochastic process restricted on C. I If c0 , c1 , c2 , . . . , c j , . . . ∈ Conf(Q ) is a sequence of configurations with c j −→ c j+1 for all j ≥ 0, then excluding all configurations not belonging to CI from the sequence gives rise to another sequence (subsequence) of configu+

rations cn0 , cn1 , . . . , cni , . . . ∈ CI where n0 ≥ 0, ni < ni+1 and cni −→ cni+1 for any i ≥ 0. Then,

Prob{Yk+1 = cnk+1 |Yk = cnk , Yk−1 = cnk−1 , . . . , Y0 = cn0 } = Prob{Yk+1 = cnk+1 |Yk = cnk }. 86 87 88 89 90 91 92 93 94 95

Consequently, (Y(t) ∈ C; I t ≥ 0) is a Markov chain that is partially isomorphic to the ACA, whereby the state space is restricted to the subset CI of Conf(Q ). Assume ci , cj ∈ C. I The transition probability from configuration ci to cj given by pi, j = Prob{Yk+1 =

∈ Conf(Q ) \CI with m ≥ 1 such that c −→ c −→ c j |Yk = ci } satisfies pi, j > 0 if either ci −→ c j or there exist c1 , c2 , . . . , cm i 1

−→ c ; otherwise p = 0. · · · −→ cm j i, j Definition 2.4. The asynchronous cellular automaton (ZZ d , N, Q, f, λ) is Brownian if for all n > 0 there exists a set of configurations C⊆Conf I (Q) and a continuous-time Markov chain (X(t) ∈ C; I t ≥ 0) partially isomorphic to the cellular automaton such that: 1. |C| I ≥ n, and 2. (X(t) ∈ C; I t ≥ 0) is irreducible, and 3. (X(t) ∈ C; I t ≥ 0) is reversible.

104

This definition implies that in a BCA it is always possible to construct an arbitrarily sized set of configurations such that in the Markov chain partially isomorphic to the BCA one can reach any state from any state (irreducibility) in the set, whereby there is no bias towards certain states (reversibility). According to a well-known result (e.g. [34]), all states in an irreducible aperiodic Markov chain with a finite number of states are positive recurrent. This means that every state will be visited infinitely often with probability 1 and that the mean time between two subsequent visits of a state is finite. Reversibility means that there is no net probability flow in the system. This condition (also called Detailed Balance) implies that a system—when implemented physically—is closed and isolated. A BCA is thus a CA in which configurations can be constructed that allow forward and backward fluctuations to take place, whereby no upper bound exists for the size of configurations that have this property.

105

3. Delay-insensitive circuits and Brownian circuits

106

A DI-circuit is a type of asynchronous circuit in which any arbitrary delay in interconnection wires and modules may occur without this compromising the correctness of the circuit’s output. DI-circuits are event-driven, meaning that a circuit element will start to operate once it receives a complete set of input signals. The DI-circuits in this paper use tokens to represent signals.

96 97 98 99 100 101 102 103

107 108 109 110 111 112 113 114

Definition 3.1. A delay-insensitive module is defined as (I, O, ,  , R ), where I and O are finite sets of input and output wires, respectively.  is a finite set of the states of the module, and  is the initial state ( ∈ ). Also, R⊆(2I \{∅}) ×  × (2O \{∅}) ×  is a finite set of transitions. For any γ ⊆I, δ ⊆O, and s, s ∈ , a transition [γ , s] → [δ , s] ∈ R is an operation in which the module, when in state s with one token on each input wire Ii ∈ γ , will be activated to assimilate a token from Ii , to produce a token on each output wire Oj ∈ δ , and finally to switch its state to s . Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

ARTICLE IN PRESS

JID: INS 4

[m3Gsc;March 10, 2016;19:41]

J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

Fig. 1. Universal set of conservative DI-circuit elements. (a) Merge: A token arriving on input wire A or B is transferred to output wire C. (b) 2 × 2-CJoin (2 × 2-Conservative Join): A pair of tokens, with one arriving on input wire Ai and another one arriving on Bj (i, j ∈ {0, 1}), is assimilated and results in two tokens, i.e., one on each of the output wires Cij and Ci j . (c) CSequencer (Conservative Sequencer): An input token on wire A0 (respectively A1 ) together with an input token on wire C are assimilated, resulting in an output token on each of the wires B0 and B 0 (respectively B1 and B 1 ). If there are input tokens on both A0 and A1 at the same time as well as an input token on C, then only one of the tokens on A0 and A1 (possibly chosen arbitrarily) is assimilated together with the token on C. The remaining input token may be processed at a later time, when a new token is available on wire C.

115 116

From the above definition, a DI-module’s operation depends merely on the combination of input tokens, rather than on the arrival order of the tokens or on their timings of arrival.

119

Definition 3.2. The delay-insensitive module (I, O, ,  , R ) is called conservative if for each transition [γ , s] → [δ , s ] ∈ R the number of inputs and outputs are the same, i.e., |γ | = |δ|. If θ 1 and θ 2 are two arbitrary transitions in R (θ 1 and θ 2 may be the same) defined by

120

then the module is called deterministic if

117 118

  θ1 = [γ1 , s1 ] → δ1 , s 1   θ2 = [γ2 , s2 ] → δ2 , s 2 , s1 = s2 ∧ γ1 ⊆ γ2 ⇒

121

The module is invertible if it is deterministic and conservative, and

s 1 = s 2 ∧ δ1 ⊆ δ2 ⇒ 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138

θ1 = θ2 . θ1 = θ2 .

A conservative DI-module conserves its tokens between inputs and outputs i.e., the number of tokens remains unchanged during operation of the module. Moreover, each transition of a invertible DI-module does not overlap with any other transitions on its left-hand and right-hand sides. Keller [10] formulated several operating conditions under which any circuit composed of DI-modules can be characterized as a DI-module itself through its external input and output behavior, thereby qualifying the circuit as DI. In particular, one of Keller’s conditions prohibits that more than one token appears on an interconnection wire simultaneously. Any DI-circuit can be constructed using a fixed set of primitive DI-modules. Universality of a set of primitive modules in a DI-circuit is usually shown by constructing a finite automaton from these elements that has n states and m input signals, whereby n and m are arbitrary numbers [10,14]. In the context of token-based DI-circuits, this type of universality implies that Boolean gates can be implemented, be it that input and output signals are represented through dual-rail encoding [22]. In such an encoding scheme a binary value is represented by a pair of wires—a 0-wire and a 1-wire—of which one contains a token to denote the corresponding binary value. All conservative DI-circuits can be constructed using the primitive modules listed in Fig. 1, as stated in Theorem 3.1 below. The Merge given in Fig. 1(a) is defined as ({A, B}, {C}, { },  , RM ) whereby RM = {[{A},  ] → [{C },  ], [{B},  ] → [{C },  ]}. The 2 × 2-CJoin in Fig. 1(b) is defined as ({A0 , A1 , B0 , B1 }, {Ci j , Ci j |0 ≤ i, j ≤ 1}, {},  , RJ ) whereby RJ = {[{Ai , B j },  ] → [{Ci j , Ci j },  ] | 0 ≤ i, j ≤ 1}. The CSequencer in Fig. 1(c) is defined as ({A0 , A1 , C }, {B0 , B 0 , B1 , B 1 }, {},  , RS ) whereby RS =

{[{Ai , C },  ] → [{Bi , B i },  ] | 0 ≤ i ≤ 1}. It is easy to verify that both the 2 × 2-CJoin and CSequencer are invertible DI-modules,

139

whereas a Merge is conservative and deterministic but not invertible.

140

Theorem 3.1. [27] The set {Merge, 2 × 2-CJoin, CSequencer} is universal for the class of conservative delay-insensitive circuits.

141

A Brownian circuit [15,30,31] is a conservative DI-circuit in which tokens on wires may fluctuate randomly in forward and backward directions. The fluctuations of tokens enable a Brownian circuit to backtrack out of deadlock states. Deadlocks are a common phenomenon in token-based asynchronous systems, like in Petri nets (e.g. [25]), and usually require special functionality to be resolved in the form of an increased complexity of circuit elements. Random fluctuations of tokens can provide this functionality as part of their nature, thus allowing for more effective designs of primitive elements and circuits [31]. Fig. 2 shows a universal set of circuit elements for Brownian circuits, which consist of the CJoin, the Hub, and the Ratchet [15]. The CJoin in Fig. 2(a) can be defined as ({K, K , J, J }, {K, K , J, J }, { },  , RCJ ) whereby RCJ = {[{J, J },  ] → [{K, K },  ], [{K, K },  ] → [{J, J },  ]}. Each wire can thus serve as an input wire and an output wire, albeit not at the

142 143 144 145 146 147 148 149

Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

JID: INS

ARTICLE IN PRESS

[m3Gsc;March 10, 2016;19:41]

J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

5

Fig. 2. Primitive elements of Brownian circuits: (a) CJoin (Conservative Join): Two tokens with one arriving on wire J and another one on wire J give rise to one token each on the wires K and K . The process may also be reversed. (b) Hub: A token arriving on wire Wi is transferred to one of the other wires Wj , whereby i, j ∈ {0, 1, 2} and i = j. (c) Ratchet: A token arriving on wire I is transferred to wire O. This element works as a diode such that once a token passes through the Ratchet, it cannot return. The Ratchet thus imposes a direction on a bi-directional wire.

Fig. 3. Scheme for realizing (a) Merge, (b) 2 × 2-CJoin and (c) CSequencer, from the CJoin, Hub and Ratchet.

150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169

same time (see also  [14]). The Hub in Fig. 2(b) can be defined as ({W0 , W1 , W2 }, {W0 , W1 , W2 }, { },  , RH ) whereby RH = {[{Wi },  ] → {W j },  | 0 ≤ i, j ≤ 2 ∧ i = j }. The Ratchet in Fig. 2(c) is defined as ({I}, {O}, { },  , { [I,  ] → [O,  ] }). The Hub and Ratchet are used to distribute tokens within a Brownian circuit, whereas the circuit’s switching functionality is mainly accomplished through the CJoin element. A CJoin is an invertible module, not only because the mapping between the pairs of wires (J, J ) and (K, K ) is (trivially) one-to-one (Fig. 2(a)), but also because its two transitions are each other’s inverse. Thus, a CJoin can process two tokens either in a forward or a backward direction, somewhat resembling a reversible chemical reaction. The Ratchet is invertible, but the Hub is not because, even though it is conservative, it does not satisfy the condition of being deterministic. All conservative DI-modules in Fig. 1 can be efficiently realized using these Brownian circuit elements. Fig. 3 gives circuit schemes [15] to build the Merge, 2 × 2-CJoin and CSequencer in Fig. 1 out of the CJoin, Hub and Ratchet in Fig. 2. Suppose the construction in Fig. 3(b) receives one token from wire A0 and another one from wire B1 . The token received from input wire A0 performs a random walk on the wire between the top left CJoin and top right CJoin in the construction, eventually detecting which element at either end of the wire can be activated. Likewise, the token received from input wire B1 will fluctuate between the top right CJoin and the bottom right CJoin in Fig. 3(b). The random fluctuations of both tokens will eventually result in them being located near the top right CJoin at around the same time,

. The cases for the arrivals after which the CJoin processes them to produce a token on each of the output lines C01 and C01 of tokens on any other pair of input wires are similar. The construction in Fig. 3(b) thus implements the Conservative 2 × 2Join in Fig. 1(b), and the fluctuations of tokens play a key role to accomplish its input and output behavior. The constructions of the Merge and CSequencer in Fig. 3(a) and (c), respectively, can be verified in a similar way. We now have the following theorem.

171

Theorem 3.2. [15] The set {CJoin, Hub, Ratchet} is universal for the class of conservative delay-insensitive circuits, provided token fluctuations are allowed in a circuit constructed from the modules in the set.

172

4. Construction of a block Brownian cellular automaton

170

173 174 175

Definition 4.1. An asynchronous block cellular automaton B = (ZZ d , N, Q, F , λ ) is an asynchronous cellular automaton in which the local transition function is defined as the partial function F: Q|N| → Q|N| . B is said to have a global transition from c ∈ Conf(Q ) to c ∈ Conf(Q ), written as c −→ c , if

∃x ∈ ZZ d ∀x ∈ ZZ d \ xN : c(xN ) ∈ Dom(F ) ∧ c (xN ) = F (c(xN )) ∧ c (x ) = c(x ). 176 177

Definition 4.1 implies that an asynchronous block CA’s transition function F updates a cell and all its neighbors simultaneously, rather than in the more conventional model in Definition 2.3, in which only the cell itself is updated while the Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

JID: INS 6

ARTICLE IN PRESS

[m3Gsc;March 10, 2016;19:41]

J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

Fig. 4. (a) Basic form of a transition rule F (c, n, w, s, e ) = (c , n , w , s , e ). (b) Rotation-symmetric equivalent of the rule, whereby both the left-hand and right-hand sides are rotated 90 degrees counterclockwise. (c) Reflection-symmetric equivalent of the rule in (a). The complete set of rules consists of the basic form of the transition rule rotated by discrete multiples of 90 degrees, and their reflection-symmetric equivalents.

Fig. 5. Transition rules of BCA B3 with their rotation- and reflection-symmetric equivalents left out. The cell states 0, 1 and 2 are denoted by white, gray, and black colors, respectively. The transition rules conserve the number of states during a transition.

Fig. 6. Configuration of a wire in B3 with a token fluctuation on it. The random movement of the token to the left or right results from the randomness of the choice for the (enabled) cell to be updated by rule i (or one of its symmetric equivalents) in Fig. 5. For clarity, each enabled cell in a configuration is pointed to by a triangle. A transition between two configurations is marked by arrows, along with the corresponding rule number.

178 179 180 181

neighboring cells can only be read out. Since at any time at most one of the (enabled) cells is chosen to undergo a state transition under the model’s update scheme, write conflicts caused by cells having overlapping neighborhoods will not occur. Definition 4.2. An asynchronous block cellular automaton with von Neumann neighborhood is defined as (ZZ 2 , Nvon , Q, F , λ ), whereby

Nvon = {(0, 0 ), (0, −1 ), (−1, 0 ), (0, 1 ), (1, 0 )}. 182 183 184

For any c, c , n, n , w, w , s, s , e, e ∈ Q such that (c, n, w, s, e ) ∈ Dom(F ) and F (c, n, w, s, e ) = (c , n , w , s , e ), the function F (c, n, w, s, e ) = (c , n , w , s , e ) is described by a transition rule of the form shown in Fig. 4(a). F is called rotation-symmetric (Fig. 4(b)) if

(c, e, n, w, s ) ∈ Dom(F ) ∧ F (c, e, n, w, s ) = (c , e , n , w , s ), 185

and F is called reflection-symmetric (Fig. 4(c)) if

(c, n, e, s, w ) ∈ Dom(F ) ∧ F (c, n, e, s, w ) = (c , n , e , s , w ) ∧ F (c, s, w, n, e ) = (c , s , w , n , e ).

198

To construct the Brownian ACA, we first propose a novel asynchronous block cellular automaton with von Neumann neighborhood, defined as B3 = (ZZ 2 , Nvon , {0, 1, 2}, FB , λ ). The local function FB consists of the six transition rules in Fig. 5, as well as their rotation- and reflection-symmetric equivalents. B3 satisfies the state-conserving property [23], since every rule in Fig. 5 contains equal numbers of cells in each state in both the left-hand and right-hand sides. Thus, applying any rule to a configuration will not increment or decrement the total number of cells in each state in the configuration. Each of the rules ii to vi, along with their rotation- and reflection-symmetric equivalents, is locally reversible [18,24], because the left-hand and right-hand sides never overlap with the left-hand and right-hand sides, respectively, of any other rule. Rule i in Fig. 5, on the other hand, is not reversible, since its right-hand side coincides with that of its own reflection-symmetric equivalent. A straight wire is represented on B3 by a linear path of cells in state 1, and a token on the wire is represented by a cell in state 2 (Fig. 6). A token moves along the path of cells through application of rule i in Fig. 5, and since there is no distinction between its head and tail, it may move back and forth randomly on the wire, thus resembling a particle undergoing random walks. We now have the following theorem.

199

Theorem 4.1. B3 is a Brownian cellular automaton.

200

Proof. Given an arbitrary positive integer n ∈ IN, it is possible to construct a straight wire segment with n + 2 cells in B3 . There are n positions on this segment, excluding both ends of the wire, at which a token (i.e. a cell in state 2) can reside,

186 187 188 189 190 191 192 193 194 195 196 197

201

Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

JID: INS

ARTICLE IN PRESS J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

[m3Gsc;March 10, 2016;19:41] 7

Fig. 7. (left) Sequences of configurations in B3 used in the proof of Theorem 4.1, whereby a token fluctuates on a wire of length n + 2 with n > 0. (right) Continuous-time Markov chain (X(t) ∈  ; t ≥ 0) with  = {c0 , c1 , . . . , cn−1 } that is isomorphic to B3 .

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

as shown in Fig. 7. Each position gives rise to a configuration cj (0 ≤ j ≤ n − 1) of the cell space, such that two adjacent positions of the token correspond to two configurations between which a transition is possible. We define a continuoustime Markov chain (X(t) ∈  ; t ≥ 0) with  = {c0 , c1 , . . . , cn−1 } that is partially isomorphic to this cellular automaton in the way illustrated in Fig. 7 (right side), and it contains n states. Each configuration cj ∈  corresponds uniquely to a state where the token resides at the j + 1th cell from the left on the wire (the left-most cell being counted as the 0th), and is described as a state of the random variable X(t). Since n can be chosen arbitrarily large, condition 1 of Definition 2.4 is satisfied. For 0 < j < n − 1 at most two cells are enabled in configuration cj , and both are adjacent to the token cell. Application of rule i in Fig. 5 to the left neighbor or right neighbor of the token gives rise to a global transition from cj to c j−1 respectively c j+1 . Accordingly, in the Markov chain (Xi ∈  ; i ≥ 0) that is embedded in the continuous-time Markov chain (X(t) ∈  ; t ≥ 0) the transition probability pj, i from state cj to ci is positive if |i − j| = 1; otherwise, p j,i = 0. The graph associated with the Markov chain is thus a tree with a linear structure, and it is strongly connected. Since each configuration can be reached from each other configuration by repeatedly applying transition rule i in Fig. 5, the Markov chain is irreducible, thus satisfying condition 2 of Definition 2.4. Finally, to prove reversibility, we use the symmetry of the model. Let c0 , c1 , . . . , cr be a sequence of configurations for which c j −→ c j+1 (0 ≤ j < r). Since the configuration is a wire segment, the transition c j −→ c j+1 is the result of applying i transition rule i to configuration cj . Denote this transition as c j −→ c j+1 . Since transition rule i is rotation-symmetric, a i rotation of 180 degrees results again in (an equivalent of) rule i, so we also have c j+1 −→ c j , as demonstrated in Fig. 6. This implies that the reversed sequence cr , cr−1 , . . . , c0 can be modeled as a sequence starting in configuration cr that is obtained through the application of rule i. Furthermore, the transitions of cells take place in both cases with the rate λ according to an exponential distribution, which implies that the reversed sequence cr , cr−1 , . . . , c0 is stochastically identical to the forward sequence c0 , c1 , . . . , cr , and thus condition 3 of Definition 2.4 is satisfied.  Now that B3 has been proven Brownian, we continue to describe the remaining configurations on the cell space that are required to achieve computational universality. The configurations we have encountered up to now only involve straight wires, but obviously this is not sufficient to conduct computation. Wires in 2-dimensional cell space may cross each other, so we need configurations for such functionality. Fig. 8(a) shows a crossing with a token coming from either wire that passes the crossing via a single transition of rule ii in Fig. 5. Fig. 8(b) demonstrates how two tokens cross each other by actively using fluctuations. Two tokens cannot pass a crossing at the same time, so when they collide at the crossing, it is the fluctuations that make one or both of them backtrack at least one cell, which will eventually allow one of the tokens to pass the crossing first. This way to resolve conflicts through exploiting the Brownian nature of the system (see also [15]) removes the need for additional states and rules that would otherwise be required (e.g., [2]) to deal with signal crossings. Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

JID: INS 8

ARTICLE IN PRESS

[m3Gsc;March 10, 2016;19:41]

J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

Fig. 8. (a) Configuration of two crossing wires in B3 , whereby a token on the horizontal wire fluctuates between the left side and the right side of the crossing. (b) Sequence of configurations of two tokens on crossing wires. Configuration c∗ shows a potential deadlock where two tokens collide at the crossing, but the fluctuations of tokens will eventually move one token backward, away from the crossing, allowing the other token to cross. Rule ii is instrumental in moving a token through the crossing in both cases (a) and (b).

Fig. 9. (a) Configuration representing a Hub in B3 with a Ratchet installed on wire W0 . (b) Sequence of configurations in which the Hub receives a token from wire W1 , after which it transfers the token to wire W2 , and vice versa, by applying rule iii. (c) Sequence of configurations in which a token on wire W0 is transferred to wire W1 or wire W2 , by applying rule iv. Though a token may fluctuate on wires before and after being processed by the Hub, it can not go back from wire W1 or W2 to wire W0 (see configurations c∗ and c∗∗ ).

Fig. 10. (a) Configuration representing a Ratchet in B3 . (b) Curve on which a token may fluctuate between vertical wire A and horizontal wire B. (c) Configuration implementing the curve by a Hub and a Ratchet.

232 233 234 235 236 237 238 239 240 241

How are configurations implementing the Brownian circuit elements Hub, Ratchet and CJoin in Fig. 2 represented? Fig. 9 gives a configuration equivalent to a circuit with a Hub and a Ratchet, and shows how it processes a token arriving on one of its wires. The construction is not a perfect Hub, like the one in Fig. 2(b), because the direction into which a token can move along one of its wires is restricted by the Ratchet, whereby the corresponding wire serves merely as an input wire to receive a token, as demonstrated in Fig. 9(c). The configuration in Fig. 9(a), notwithstanding its restricted functionality, can be employed as a Hub in the constructions of conservative DI-circuits, as we will see later. The restricted Hub in Fig. 9(a) can be altered into a Ratchet by trimming either wire W1 or wire W2 away, as shown in Fig. 10(a). The correctness of the Ratchet configuration can be verified along the same lines as in Fig. 9(c). The Ratchet in Fig. 10(a) is shaped like a curve, and it only permits a token to move on the curve in one direction. The bi-directional curve in Fig. 10(b) can be realized using a Hub and a Ratchet, as shown in Fig. 10(c). Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

JID: INS

ARTICLE IN PRESS

[m3Gsc;March 10, 2016;19:41]

J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

9

Fig. 11. (a) Configuration representing a CJoin in B3 . (b) Sequence of configurations in which the CJoin receives a token from wire J in configuration c∗ , together with another token from wire J , after which it produces two tokens in configuration c∗∗ , one on each of the wires K and K , respectively. The process may be reversed, using transitions going back from configuration c∗∗ to configuration c∗ . Rule v is used to move tokens up to the CJoin, whereas rule vi accomplishes the actual switching of the CJoin.

256

The CJoin in Fig. 2(a) is realized in B3 by the configuration in Fig. 11(a). The CJoin can be used to synchronize the arrivals of two tokens, one on each of the wires J and J (K and K ), respectively, as demonstrated in Fig. 11(b). Such local synchronization of tokens acts as a kind of switch that lets tokens through only as a pair, so it plays a key role in the logic functionality of DI-circuits. Having implemented the Brownian circuit elements, we construct the more complex DI-modules in B3 based on the designs in Fig. 3. Since every Hub in the constructions in Fig. 3 has at least one of its wires realized by a Ratchet, it can be implemented by the configuration in Fig. 9(a). Consequently, based on the circuit schemes in Fig. 3, all conservative DIelements in Fig. 1 can be embedded in the cell space of B3 , as illustrated in Fig. 12. The movie [19] in the supplementary material documents a typical process in which the 2 × 2-CJoin operates on one token from input wire A1 and one other token from input wire B0 . According to Theorem 3.2, the Merge, 2 × 2-CJoin and CSequencer can be used to construct any arbitrary conservative DI-circuit. Wires between each pair of modules in a DI-circuit can be constructed in B3 by means of the linear configuration in Fig. 6 and the crossing in Fig. 8, along with the Ratchet in Fig. 10(a), which can also be used as a curve. The constructions in Fig. 12, along with the configurations used for wiring between modules in Figs. 6 to 10, give rise to the following theorem.

257

Theorem 4.2. The Brownian cellular automaton B3 is universal for the class of conservative delay-insensitive circuits.

258

As compared to other block BCAs [15,16,30], B3 is not as efficient in terms of complexity, especially with regard to the number of transition rules. Actually, it can be verified (see [15]) that all Brownian circuit elements in B3 can be implemented using only half of the rules in Fig. 5, i.e., rules i, ii, and iv, based on different configurations from those given in Figs. 9(a), 10(a) and 11(a). The sole purpose of the use of redundant rules is that they allow the BCA B3 to be simulated by an equivalent but conventional ACA, as described in the following section.

242 243 244 245 246 247 248 249 250 251 252 253 254 255

259 260 261 262

Fig. 12. Constructions in B3 of (a) Merge, (b) 2 × 2-CJoin and (c) CSequencer, based on the circuit schemes in Fig. 3(a), (b) and (c), respectively.

Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

ARTICLE IN PRESS

JID: INS 10

[m3Gsc;March 10, 2016;19:41]

J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

Fig. 13. Transition rules of A4 with their rotation- and reflection-symmetric equivalents left out.

263

5. Construction of Brownian cellular automaton with conventional transition function

264

5.1. Definitions

265 266 267

Definition 5.1. An asynchronous cellular automaton with von Neumann neighborhood is defined as (ZZ 2 , Nvon , Q, f, λ ). For any c, c , n, w, s, e ∈ Q, such that (c, n, w, s, e ) ∈ Dom( f ), the local transition function f (c, n, w, s, e ) = c is denoted by the transition rule below.

268 269

The function f is called rotation-symmetric if

(c, e, n, w, s ) ∈ Dom( f ) ∧ f (c, e, n, w, s ) = c , 270

and f is called reflection-symmetric if

(c, n, e, s, w ) ∈ Dom( f ) ∧ f (c, n, e, s, w ) = c ∧ f (c, s, w, n, e ) = c .

274

In this section we design a non-block ACA with a von Neumann neighborhood to simulate the BCA B3 described in Section 4. The ACA, called A4 , is defined as (ZZ 2 , Nvon , {0, 1, 2, 3}, fA , λ ), whereby the cell states 0, 1, and 2 are denoted by white, gray, and black colors, respectively, and state 3 is denoted by the pattern . The transition function fA is defined by the 17 transition rules listed in Fig. 13, as well as their rotation- and reflection-symmetric equivalents.

275

5.2. Simulation of token fluctuations on wires and crossings in A4

276

As in B3 , a straight wire in A4 is implemented by a linear configuration of successive cells in state 1, on which a token is represented by a cell in state 2 (Fig. 14). Based on rules 1 and 2 in Fig. 13, a token cell will update its left neighbor and right neighbor on the wire independently from state 1 to state 3 and back. The token cell may disappear temporarily from the wire due to rule 3, whenever one of its neighbors is in state 3 and the other neighbor is in state 1. Through rule 4 the 3-state cell is then eventually changed to a token (state 2), which then effectively has moved one cell to the left or right on the wire (Fig. 14). The direction taken by a token to either the left or right is random, because of the asynchronous updating scheme of A4 . The above process demonstrates that every transition of B3 on a wire (Fig. 6) can be simulated through a sequence of transitions in A4 . Key to the Brownian-like behavior of tokens is the use of rules 1 and 2 in Fig. 13, which act as each other’s inverses. Application of these two rules on a cell adjacent to a token on the left or right results in the token advancing into or withdrawing from that direction through a trial-and-error process (Fig. 14). The explicit use of rules with opposite effects is not only important in the context of non-block BCAs, but also for ACAs in general, as discussed in [2]. Block BCAs, on the other hand, usually do not require such a mechanism, because their transition functions are able to update all neighbors of a cell simultaneously [15]. This is illustrated in Fig. 6 where applying rule i in Fig. 5 to a cell adjacent to a token cell on the left or right directly advances the token one cell to the left or right. Consequently, the emergence of random walk-like movements of tokens from the asynchronous transitions of cells appear more natural and identifiable in block BCAs than in non-block BCAs.

271 272 273

277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292

Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

JID: INS

ARTICLE IN PRESS

[m3Gsc;March 10, 2016;19:41]

J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

11

Fig. 14. Token fluctuating on a wire in A4 . The sequence of configurations shows a token moving to the left or right in a random order, simulating the fluctuations of a token in B3 . This behavior results from the application of rules 1 to 4 (or their symmetric equivalents) in Fig. 13, as well as from the random choice of one (enabled) cell for updating. Each enabled cell in a configuration is pointed to by a triangle. The label on an arrow indicates the corresponding rule from Fig. 13 that effectuates the global transition between two configurations.

293 294 295

For the sake of identifying the Brownian motion of tokens, we specify configurations c2 , c3 , c4 in Fig. 14 as corresponding to states of the Markov chain partially isomorphic to A4 , while all other intermediate configurations are omitted. Assume i, j ∈ {2, 3, 4}. Each configuration ci describes a state in which the token resides at the i + 1th cell on the wire from the left. +

299

The configurations surrounded by a dashed circle in Fig. 14, along with the transitions between them, shows that c3 −→ c3 and that the transition probability p3, 3 > 0. Likewise, it can be confirmed that p2, 3 , p3, 2 , p3, 4 , and p4, 3 are all positive. Since every sequence of global transitions between the configurations c2 and c4 will always pass through the configuration c3 , we have p2,4 = 0 and p4,2 = 0. By generalizing the process illustrated in Fig. 14, we can prove the following theorem.

300

Theorem 5.1. A4 is a Brownian cellular automaton.

301

Proof. As with B3 , each of the configurations ci in Fig. 7, with 0 ≤ i ≤ n − 1 and n arbitrarily large, can be employed in A4 to represent a straight wire of length n + 2, whereby a token resides at the i + 1th cell on the wire from the left. Let  = {c0 , c1 , . . . , cn−1 } and (X(t) ∈  ; t ≥ 0) be the Markov chain partially isomorphic to A4 . Assume any arbitrary values of j, k, and n for which 0 ≤ j, k < n. In accordance with the transitions in Fig. 14, the transition probability from state cj to state ck is pj, k > 0 if | j − k| ≤ 1; otherwise p j,k = 0. The graph associated with (X(t) ∈  ; t ≥ 0) is identical to the graph in Fig. 7, except that each state ci has a self-loop. The resulting Markov chain, therefore, contains n states, with its associated graph being a tree with a linear structure that is strongly connected. This shows that the Markov chain is irreducible. Reversibility of the Markov chain is proven by using the symmetry of A4 to reverse a sequence of configurations in the same way as in the proof of Theorem 4.1. We conclude that A4 is Brownian. 

296 297 298

302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325

We now proceed to simulate B3 on A4 , which proves that A4 is universal for the class of DI-circuits. A crossing of wires in A4 is based on the same initial configuration as in B3 . In Fig. 8(a) a token jumps over a crossing of two wires in B3 through the application of rule ii in Fig. 5. However, in a non-block ACA it is hard to achieve such a jump without updating the cell at which two wires cross each other, because each cell in such an ACA can only access its neighbors in read-only mode (see also [17]). Consequently, a token must enter the crossing first before it can pass through, as illustrated by configurations c∗ and c∗∗ in Fig. 15. Like in Fig. 14, the trial-and-error mechanism applies rules 1 and 2 to enabled cells in a random order, which ensures that a token will eventually pass through the crossing. As in B3 , random fluctuations provide an effective way for tokens to backtrack from a deadlock when two tokens collide at a crossing. Fig. 16 shows how two tokens cross each other. This method to cross tokens is much simpler than in conventional ACAs in which tokens can only propagate in one direction. In that case two methods can be used to cross signals. One method merges two tokens waiting to cross into one and then splits it again into two tokens [2]. This method often requires a large number of transition rules, for example, like in the ACA with von Neumann neighborhood in [2], which uses 24 rules. The second method sets up a specialized circuit at every crossing to arbitrate the simultaneous arrivals of two tokens [11,28]. The installation of circuits at crossings, of course, complicates the layout of a DI-circuit embedded in an ACA and greatly increases the overall size of the circuit. A4 , on the contrary, needs neither additional rules nor special circuitry, since random fluctuations will allow tokens to avoid collisions, as demonstrated in Fig. 16. Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

ARTICLE IN PRESS

JID: INS 12

[m3Gsc;March 10, 2016;19:41]

J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

Fig. 15. Token passing through a crossing in A4 . The sequence of configurations from cs to ct shows the token on the horizontal wire passing the crossing towards the right. Upon reaching the crossing from the left, the token changes the cell at the crossing to state 2 in configuration c∗ , after which the cell may update its neighboring cells above, below, or at the right, by switching their states independently between state 1 and state 3, through application of rules 1 and 2 in Fig. 13. Starting from configuration c∗ , the alternations of states may occur arbitrarily many times on each adjacent cell. These alternations, however, will eventually end up in configuration c∗∗ , and finally produce a token adjacent to the crossing on the right in ct . Due to the rotation-symmetry +

of A4 , the reverse process ct −→ cs in which a token passes to the left through the crossing is also possible, and it is achieved by rotating all configurations and applied rules by 180 degrees.

Fig. 16. Two tokens competing to pass a crossing in A4 . Due to the large number of intermediate configurations, some are left out from the sequence of configurations; the corresponding transitions are labeled by the symbol +. Configuration c∗ would be in a deadlock where two tokens collide at the crossing, weren’t it for the fluctuations of tokens. In this case, either of the tokens will eventually withdraw from the crossing due to the fluctuating nature of the token, thus allowing the other token to pass the crossing first.

326

5.3. Implementations of Brownian circuit elements in A4

327

The Brownian circuit elements in Fig. 2 can be implemented in A4 using the same configurations as in B3 . Fig. 17 demonstrates how the configuration in Fig. 9(a) can serve as a Hub with a Ratchet attached to one of its wires in A4 . This configuration can produce similar input and output behavior, no matter whether it operates in B3 or in A4 , but the transitions used in A4 differ considerably from those in B3 . In particular, each transition in B3 between successive configurations can be associated with a reversed transition (Fig. 9(b)), and both transitions depend on the application of the same rule (or one of its rotation- or reflection-symmetric equivalents). In A4 , however, not all transitions have reversed counterparts between successive configurations (Fig. 17(a)), since it is not necessary to mimic B3 in all its details for the sake of simulating it. Based on Fig. 17, we can implement the configuration representing a Ratchet in B3 (Fig. 10(a)) as a Ratchet in A4 , and the same is true for the bidirectional curve in Fig. 10(c). The CJoin in A4 is based on the same configuration as in B3 , but in A4 the transition rules 15, 16, and 17 in Fig. 13 are used, as demonstrated in Fig. 18. Unlike rule vi in B3 , these rules are not locally reversible nor state-conserving, but they, along with other rules, enable the configuration in Fig. 11(a) to behave as a CJoin in A4 . In summary, all Brownian circuit elements can be implemented in A4 , using the same configurations as those in the block BCA B3 in Figs. 9(a), 10(a) and 11(a). A4 is able to embed the Merge, CSequencer and 2 × 2-CJoin according to the designs in Fig. 3(a), (b) and (c), respectively. A typical process in which the 2 × 2-CJoin receives a token from each of the

328 329 330 331 332 333 334 335 336 337 338 339 340 341

Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

JID: INS

ARTICLE IN PRESS J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

[m3Gsc;March 10, 2016;19:41] 13

Fig. 17. Hub with Ratchet attached in A4 . (a) Sequence of configurations in A4 in which a Hub with a Ratchet on wire W0 receives a token from wire W1 or W2 and transfers the token to W2 or W1 , respectively. (b) Sequence of configurations in which a Hub processes a token arriving on wire W0 . The token will eventually appear on either W1 or W2 , after which it can no longer go back to W0 . As shown in configuration c∗ in both (a) and (b), a token arriving on any wire will be transferred to the center of a Hub, from which it is distributed to W1 or W2 , each with equal probability because of the symmetry of the configuration and the asynchronous nature of A4 ’s updating scheme.

343

input wires A1 and B0 can be found in the movie in the supplementary material [20], where, unlike in this paper, the cell state 3 is denoted by a red color. We now have the following theorem.

344

Theorem 5.2. A4 is universal for the class of conservative delay-insensitive circuits.

342

345

The next subsection describes the embedding of a useful logic function, called D-latch, into A4 .

346

5.4. Construction of dual-rail D-latch in A4

347

A (gated) D-latch is a logic circuit that can be used to store one bit of information. It takes two binary inputs: {D, E} and two binary outputs: {Q, Q¯ } where Q¯ = ¬Q (Fig. 19(a)). The outputs Q are expressed by the Boolean equation: Q = (¬E ∧ Q ) ∨ (E ∧ D ), such that if E = 0, Q remains in its previous state, no matter what the value of D is. When E = 1, the output Q is set (reset) to 1 (respectively 0) if D = 1 (respectively D = 0). It is well-known that a D-latch can be constructed by a synchronous logic circuit consisting of NAND gates. To implement the D-latch in an asynchronous system, we employ a pair of wires to encode each bit of the inputs and outputs, in accordance with the dual-rail encoding scheme mentioned in Section 3. Fig. 19(b) gives the schematic of a dual-rail D-latch, which can be defined as a conservative DI-module ({D0 , D1 , E0 , E1 }, {Q0 , Q1 , Q¯ 0 , Q¯ 1 }, {0, 1}, 0, RD ), whereby the in-

348 349 350 351 352 353 354 355 356

ternal states 0 and 1 are used to store the values 0 and 1, respectively, of the last output Q of the D-latch. RD is defined as:

RD = {[{E0 , Di }, s] → [{Qs , Q¯ 1−s }, s] | 0 ≤ i, s ≤ 1} ∪   { {E1 , D j }, s → [{Q j , Q¯ 1− j }, j] | 0 ≤ j, s ≤ 1}. Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

ARTICLE IN PRESS

JID: INS 14

[m3Gsc;March 10, 2016;19:41]

J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

Fig. 18. CJoin in A4 . (a) Sequence of configurations in A4 in which a CJoin receives a token from one of its wires, but without another token from the wire orthogonal to it. The token will remain on the wire and move back and forth randomly. (b) Sequence of configurations in which one token on each of the wires J and J in configuration c∗ triggers the CJoin’s operation, eventually giving rise to configuration c∗∗ , with a token on wire K together with another token on wire K . Due to the asynchronous update scheme of the ACA, there are many different orders in which the transitions may occur. The reversed +

process c∗∗ −→ c∗ is also possible due to the rotation-symmetry of the CJoin’s configuration.

Fig. 19. (a) D-latch. (b) Dual-rail D-latch. Assume i, j, s ∈ {0, 1} and the dual-rail D-latch is in state s. A token arriving on input wire E0 along with another token on input wire Di does not change the state of the module, and results in a token on each of the output wires Qs and Q¯ 1−s . In addition, one input token from wire E1 and one other token from wire Dj will change the state s to j and produce one token on each of the output wires Qj and Q¯ 1− j . (c) Construction of dual-rail D-latch using 2 × 2-CJoin, CSequencer and Merge. The circuit is composed of two 2 × 2-CJoins J1 and J2 , two CSequencers S1 and S2 , and ten Merges. A token, denoted by a black blob, is assigned initially to the input wire B0 at the left of the 2 × 2-CJoin J2 . The presence of a token on input wire B0 (respectively B1 ) of J2 represents the dual-rail D-latch being in state 0 (respectively 1).

357 358 359 360 361

Theorem 3.1 implies that we can construct a dual-rail D-latch out of the 2 × 2-CJoin, CSequencer and Merge in Fig. 1. Fig. 19(c) gives a DI-circuit scheme for the dual-rail D-latch. According to Theorem 3.2, the DI-circuit in Fig. 19(c) can be further decomposed into the Brownian circuit elements in Fig. 2, by replacing each Merge, 2 × 2-CJoin and CSequencer in the circuit by the constructions in Fig. 3(a), (b) and (c), respectively. Fig. 20 shows a Brownian circuit scheme for realizing a dual-rail D-latch, and its embedding into the cell space of A4 . Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

JID: INS

ARTICLE IN PRESS J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

[m3Gsc;March 10, 2016;19:41] 15

Fig. 20. Brownian circuit for the dual-rail D-latch in Fig. 19(c). Since the Brownian circuit consists of CJoins, Hubs and Ratchets, the dual-rail D-latch can be embedded into A4 , as shown by the configuration at the bottom. For illustrative reasons, each Hub in the Brownian circuit that is used to construct a Merge is enclosed by a dashed circle, and so is its corresponding location in the configuration in the bottom figure. Wires in the Brownian circuit contain Ratchets when there is no need for tokens to fluctuate and backtrack on them. It is important to place as many Ratchets as possible on such wires to speed up the circuit. The installation of a Ratchet on a wire, however, will turn a straight wire into a curve, due to the construction of the Ratchet in Fig. 10(a). A straight wire in the top figure is thus implemented as a zigzag pattern in the bottom figure.

362

6. Conclusions

363

This paper proposes a new BCA model that, unlike previous embodiments of the model [15], is based on the conventional definition of ACAs. Previously proposed BCA models use transition rules that rewrite not only the state of a cell, like in conventional ACAs, but also the states of the neighbors of the cell. In other words, transitions in previously proposed BCAs act on blocks of cells, whereby both the left-hand side and the right-hand side of a rule contains the same cells, so the states of all cells in a block are updated simultaneously. This localized synchronization of cells in block CAs contributes to them being able to model physical reversibility and conservation law [5,9,21,24]. For BCAs this translates into straightforward and efficient constructions of Brownian circuit elements [15] (Fig. 2). However, though block BCAs allow the number of states and transition rules to be reduced, they fall somewhat outside the realm of traditional CAs. To better evaluate the merits of fluctuations only, without having to take into account other factors like block structure, we therefore use the conventional framework of ACAs in this paper to define BCAs.

364 365 366 367 368 369 370 371 372

Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

JID: INS 16

ARTICLE IN PRESS

[m3Gsc;March 10, 2016;19:41]

J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

409

We propose a new BCA, named A4 , that is a conventional ACA simulating a block BCA, named B3 . B3 has redundancies built in to facilitate a straightforward simulation by A4 , so it is not as efficient as the block BCA in [15], though there is a strong resemblance between the two models. The resulting model A4 is significantly less complex than conventional ACAs with equivalent computational power, which are typically based on the embedding of DI-circuits in the cell space, like in [1,11,12,28]. The ACA in [11], for example, requires 5 cell states and 55 transition rules to achieve computational universality, which is the best known result for non-block ACAs up to now. A4 , however, requires merely 4 states and 17 transition rules, even though it is equivalent in computational power. Another ACA with a reduced complexity of 4 states and 39 rules is proposed in [12], but it only implements a partial class of DI-circuits that do not allow the arbitration functionality of the CSequencer. Yet another ACA [32] reduces the number of states to 3, but it requires a larger neighborhood (Moore neighborhood of radius 1) and 82 transition rules. A4 achieves its reduced complexity by embedding Brownian circuits into its cell space, which allows the exploitation of fluctuations, like demonstrated by the arbitrating behavior of tokens at a crossing (Fig. 16). Apart from proposing a universal non-block ACA with decreased complexity, this paper is also the first to provide a formal definition of BCAs. This definition requires a BCA to have a finite, but unbounded, sequence of configurations that can be characterized in terms of an irreducible and reversible Markov chain. The BCAs B3 and A4 described in Sections 4 and 5 respectively, together with the other models in [15,16,30], allow the patterns representing tokens to fluctuate forward and backward on wires of any length in their cell spaces, as demonstrated in Figs. 7 and 14, respectively, whereby the corresponding sequences of configurations are (partially) isomorphic to simple random walks on ZZ. The lack of an upper bound on the size of configurations or area over which fluctuations can take place does not necessarily mean that all configurations in the cell space would facilitate fluctuations: indeed it is possible to construct configurations in a BCA that are completely non-fluctuating, for example by arranging ratchets in a linear order without there being wire segments in between. We then obtain a wire on which tokens will not fluctuate, so in fact the resulting model is then a non-Brownian ACA, albeit it is unlikely to be computationally universal, since fluctuations are required to make tokens search for computational paths from input to output in our model [15,31]. What is in the name Brownian? Definition 2.4 implies that for a CA to be called Brownian, there should exist an arbitrarily large number of configurations between which (sequences of) transitions are possible, and those transitions should be reversible. This indicates that fluctuations are not just restricted to local areas in the model, but rather may spread, given sufficient time. Signals, for example, are configurations that are typically covered by this definition, since they tend to be able to travel over prolonged distances in the cell space. Other configurations qualifying may be found in simulations of physical processes in which fluctuations play a role. Though the CAs in this paper are characterized by fluctuations, there is one significant difference with Brownian motion: the latter takes place in continuous space, whereas the CA is defined on a discrete space, thus making fluctuations on it more like a random walk. Random walks, however, have statistical properties that are very similar to Brownian motion. In fact, a random walk is a discrete fractal, whereas the trajectory in Brownian motion is a true fractal. Furthermore, the expected distance over which a particle moves scales as the square root of the elapsed time in both cases. There are thus plenty of similarities to justify the naming of the CA models in this paper after the physical phenomenon of Brownian motion, which has attracted so much scientific attention over the last century.

410

Acknowledgments

411 413

This research work was supported by NSFC (No. 61170036) and Natural Science Foundation of Chongqing (No. cstc2012jjA40 0 02). We would like to thank Tetsuya Shimokawa of the National Institute of Information and Communications Technology in Japan for helpful discussions.

414

Supplementary material

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

412

415

Supplementary material associated with this article can be found, in the online version, at 10.1016/j.ins.2016.02.046.

416

References

417 418 419 420 421 422 423 424 425 426 427 428 429 430

[1] S. Adachi, F. Peper, J. Lee, Computation by asynchronously updating cellular automata, J. Statist. Phys. 114 (1–2) (2004) 261–289. [2] S. Adachi, J. Lee, F. Peper, On signals in asynchronous cellular spaces, IEICE Trans. Inform. Systems E87-D (3) (2004) 657–668. [3] P. Chassaing, L. Gerin, Asynchronous cellular automata and Brownian motion, in: Proceedings of the Conference on Analysis of Algorithms (AofA’07), DMTCS, Antibes, France, 2007, pp. 385–402. [4] S. Dasmahapatra, J. Werner, K.P. Zauner, Noise as a computational resource, Int. J. Unconv. Comput. 2 (4) (2006) 305–319. [5] J. Durand-Lose, Representing reversible cellular automata with reversible block cellular automata, Discrete Math. Theor. Comput. Sci. Proc. AA (DMCCG) (2001) 145–154. [6] N. Fatès, É. Thierry, M. Morvan, N. Schabanel, Fully asynchronous behavior of double-quiescent elementary cellular automata, Theor. Comput. Sci. 362 (1-3) (2006) 1–16. [7] N. Fatès, A guided tour of asynchronous cellular automata, in: Proceedings of the 19th International Workshop (AUTOMATA 2013), Cellular Automata and Discrete Complex Systems, LNCS, vol. 8155, 2013, pp. 15–30. [8] S. Hauck, Asynchronous design methodologies: an overview, Proc. IEEE 83 (1) (1995) 69–93. [9] J. Kari, Representation of reversible cellular automata with block permutations, Math. Syst. Theory 29 (1996) 47–61. [10] R.M. Keller, Towards a theory of universal speed-independent modules, IEEE Trans. Comput. C-23 (1) (1974) 21–33.

Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046

JID: INS

ARTICLE IN PRESS J. Lee et al. / Information Sciences xxx (2016) xxx–xxx

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

[m3Gsc;March 10, 2016;19:41] 17

[11] J. Lee, S. Adachi, F. Peper, K. Morita, Embedding universal delay-insensitive circuits in asynchronous cellular spaces, Fund. Inform. 58 (3-4) (2003) 295–320. [12] J. Lee, S. Adachi, F. Peper, S. Mashiko, Delay-insensitive computation in asynchronous cellular automata, J. Comput. Syst. Sci. 70 (2005) 201–220. [13] J. Lee, S. Adachi, F. Peper, K. Morita, Asynchronous game of life, Physica D 194 (2004) 369–384. [14] J. Lee, F. Peper, S. Adachi, K. Morita, Universal delay-insensitive circuits with bi-directional and buffering lines, IEEE Trans. Comput. 53 (8) (2004) 1034–1046. [15] J. Lee, F. Peper, On brownian cellular automata, in: A. Adamatzky, R. Alonso-Sanz, A. Lawniczak, G.J. Martinez, K. Morita, T. Worsch (Eds.), Theory and Application of Cellular Automata, Luniver Press, 2008, pp. 278–291. [16] J. Lee, A simple model of asynchronous cellular automata exploiting fluctuation, J. Cell. Autom. 6 (4–5) (2011) 341–352. [17] J. Lee, K. Imai, Q.S. Zhu, Fluctuation-driven computing on number-conserving cellular automata, Inf. Sci. 187 (2012) 266–276. [18] J. Lee, S. Adachi, Y.N. Xia, Q.S. Zhu, Emergence of universal global behavior from reversible local transitions in asynchronous systems, Inf. Sci. 282 (2014) 38–56. [19] J. Lee,et al. Supplementary material to this paper: video entitled mmc1.avi. [20] J. Lee et al., Supplementary material to this paper: video entitled mmc2.avi. [21] N. Margolus, Physics-like models of computation, Physica D 10 (1984) 81–95. [22] C. Mead, L. Conway, Introduction to VLSI systems, Addison-Wesley, Boston, MA, USA, 1980. Chapter 7. [23] A. Moreira, N. Boccara, E. Goles, On conservative and monotone one-dimensional cellular automata and their particle representation, Theor. Comput. Sci. 325 (2004) 285–316. [24] K. Morita, Reversible computing and cellular automata - a survey, Theor. Comput. Sci. 395 (1) (2008) 101–131. [25] T. Murata, Petri nets: Properties, analysis and applications, Proc. IEEE 77 (4) (1989) 541–580. [26] K. Nakamura, Synchronous to asynchronous transformation of polyautomata, J. Comput. System Sci. 23 (1981) 22–37. [27] P. Patra, D.S. Fussell, Conservative delay-insensitive circuits, in: Workshop on Physics and Computation, 1996, pp. 248–259. [28] F. Peper, J. Lee, S. Adachi, S. Mashiko, Laying out circuits on asynchronous cellular arrays: a step towards feasible nanocomputers? Nanotechnology 14 (4) (2003) 469–485. [29] F. Peper, J. Lee, F. Abo, T. Isokawa, S. Adachi, N. Matsui, S. Mashiko, Fault-tolerance in nanocomputers: a cellular array approach, IEEE Trans. Nanotechnol. 3 (1) (2004) 187–201. [30] F. Peper, J. Lee, T. Isokawa, Brownian cellular automata, J. Cellular Automata 5 (3) (2010) 185–206. [31] F. Peper, J. Lee, J. Carmona, J. Cortadella, K. Morita, Brownian circuits: Fundamentals, ACM J. Emerg. Technol. Comput. Syst. 9 (1) (2013) 3:1–3:24. [32] O. Schneider, T. Worsch, A 3-state asynchronous CA for the simulation of delay insensitive circuits, in: Proceedings of the 10th International Conference on Cellular Automata for Research and Industry (ACRI 2012) LNCS, vol. 7495, 2012, pp. 565–574. [33] B. Schónfisch, A. de Roos, Synchronous and asynchronous updating in cellular automata, BioSystems 51 (1999) 123–143. [34] W.J. Steward, Probability, Markov Chains, Queues, and Simulation, Princeton University Press, 2009. [35] S. Wolfram, Universality and complexity in cellular automata, Physica D 10 (1984) 1–35.

Please cite this article as: J. Lee et al., Characterization of random fluctuation-based computation in cellular automata, Information Sciences (2016), http://dx.doi.org/10.1016/j.ins.2016.02.046