Reachability Problem in Non-uniform Cellular Automata
Sumit Adak, Sukanya Mukherjee, Sukanta Das

TL;DR
This paper introduces an algorithm to determine configuration reachability in non-uniform cellular automata, utilizing a reachability tree, with good average performance despite exponential worst-case complexity.
Contribution
It presents the first decision algorithm for the configuration reachability problem in non-uniform cellular automata using a novel reachability tree method.
Findings
Algorithm effectively decides reachability in non-uniform CAs.
Reachability tree provides a useful characterization tool.
Average performance of the algorithm is very good despite exponential worst-case complexity.
Abstract
This paper deals with the CREP (Configuration REachability Problem) for non-uniform cellular automata (CAs). The cells of non-uniform CAs, we have considered here, can use different Wolfram's rules to generate their next states. We report an algorithm which decides whether or not a configuration of a given (non-uniform) cellular automaton is reachable from another configuration. A characterization tool, named Reachability tree, is used to develop theories and the decision algorithm for the CREP. Though the worst case complexity of the algorithm is exponential in time and space, but the average performance is very good.
| Present state | 111 | 110 | 101 | 100 | 011 | 010 | 001 | 000 | Rule |
|---|---|---|---|---|---|---|---|---|---|
| (RMT) | (7) | (6) | (5) | (4) | (3) | (2) | (1) | (0) | |
| (i) Next state | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 9 |
| (ii) Next state | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 170 |
| (iii) Next state | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 195 |
| (iv) Next state | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 80 |
| RMT | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
|---|---|---|---|---|---|---|---|---|
| RMT | 0, 1 | 2, 3 | 4, 5 | 6, 7 | 0, 1 | 2, 3 | 4, 5 | 6, 7 |
| Rule Vector | CA Size | Source | Destination | Reachable | Decision | Remarks |
| or Not | Level | |||||
| 8, 58, , , | Not | 1 | satisfies | |||
| , | reachable | Condition 1 | ||||
| 10, 164, , , | Not | 1 | satisfies | |||
| , | reachable | Condition 2 | ||||
| 7, 72, 254, , | Not | 2 | no path | |||
| , , | reachable | exists | ||||
| 15, 213, 5, 196, 124, | = | 01001 | 11001 | Reachable | 9 | satisfies |
| 243, 218, 99, 184, | 00101 | 11011 | Theorem IV.1 |
| CA size | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100 |
|---|---|---|---|---|---|---|---|---|---|---|
| Average number of | ||||||||||
| edges to be | 50 | 344 | 1085 | 2428 | 4536 | 7612 | 11704 | 17012 | 23742 | 31923 |
| explore |
| CA size | 10 | 20 | 30 | 40 | 50 | 60 | 70 | 80 | 90 | 100 |
|---|---|---|---|---|---|---|---|---|---|---|
| Explored edges | 50 | 344 | 1085 | 2428 | 4536 | 7612 | 11704 | 17012 | 23742 | 31923 |
| Rate of growth () | - | 2.78 | 2.83 | 2.80 | 2.80 | 2.84 | 2.79 | 2.80 | 2.83 | 2.81 |
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Reachability Problem in Non-uniform Cellular Automata
Sumit Adak
Department of Information Technology
Indian Institute of Engineering Science and Technology
Shibpur
Howrah-711103
India
Sukanya Mukherjee
Department of Computer Science and Engineering
Institute of Engineering and Management
Kolkata
West Bengal 700091
India
Sukanta Das
Department of Information Technology
Indian Institute of Engineering Science and Technology
Shibpur
Howrah-711103
India
Abstract
This paper deals with the CREP (Configuration REachability Problem) for non-uniform cellular automata (CAs). The cells of non-uniform CAs, we have considered here, can use different Wolfram’s rules to generate their next states. We report an algorithm which decides whether or not a configuration of a given (non-uniform) cellular automaton is reachable from another configuration. A characterization tool, named Reachability tree, is used to develop theories and the decision algorithm for the CREP. Though the worst case complexity of the algorithm is exponential in time and space, but the average performance is very good.
keywords:
Non-uniform Cellular Automata (CAs), reachability tree, link, rule, rule min term (RMT).
Reachability Problem in Non-uniform Cellular Automata
I Introduction
Cellular automata (CAs) are discrete dynamical systems which produce complex global behaviour using simple local computation [11, 16]. The Configuration REachability Problem (CREP) in CAs asks to decide whether a (destination) configuration of a given cellular automaton (CA) is reachable from another (source) configuration of the CA [3]. The CREP is undecidable for 1-d infinite CAs [14], so researchers considered this problem for finite CAs [14, 3]. CREP is P-complete, NP-complete and PSPACE-complete depending on the types of CAs [14]. It has also been shown that CREP is NP-intermediate for the CAs with additive rules [3]. Wolfram’s rule 90, for example, is an additive rule [9], and so to decide reachability of of rule 90 CA with cells from , we need superpolynomial time.
However, all the works on CREP consider the classical CAs, where the cells follow same next state function (that is, ) to generate their next states. In recent time, a new class of CAs, known as non-uniform CAs, are under the focus of CAs research where the cells of a CA can follow different next state functions [2, 8, 13]. Obviously, classical CAs are proper subset of these non-uniform CAs. Primary focus of the non-uniform CA research was on the one-dimensional CAs, where the cells follow Wolfram’s CA rules [2]. Researchers already studied the reachability problem [14, 3] for finite classical CAs. However, for non-linear non-uniform CAs, there is no method to deal with the reachability problem. In this work, we propose a method to deal with the reachability problem for 1-d finite non-uniform CAs.
We use here a characterization tool, named Reachability tree, to discover the properties of non-uniform CAs. An algorithm to decide reachability of from of a given -cell non-uniform CA is reported. The algorithm can obviously deal with classical CAs as well. Worst case time complexity of the algorithm, however, is exponential, because CREP is itself PSPACE-complete [3]. But, the average case time requirement of the algorithm is polynomial.
To understand average case performance, we conduct an experimentation. And through experimentation, we determine that the average case complexity of the algorithm is , where is the size of automaton.
Hereafter, by “CA”, we will mean “non-uniform” CA. We next proceed with some useful definitions about CAs.
II Definitions
The CAs, we consider here, consist of a finite number of cells which are organized as a 1-dimensional lattice . The cells can be in state 0 or state 1. A configuration or (global) state of the CA is a mapping : . Let us consider that is the collection of all possible configurations of an -cell CA (that is =). Then, a CA is a function : , which satisfies the following conditions: , , where , and . The is a next state function for the cell . In this work, we consider null boundary condition where left and right neighbors of cell 0 and cell are always in state 0. That is, and .
The next state function can be expressed in tabular form (Table 1). Decimal equivalents of 8-next states are conventionally called as “rule” () [15]. We name each of the 8 combinations of , and as Rule Min Term (RMT), which is generally presented in its decimal equivalent. The 001 of the first row of Table 1 is the RMT 1, next state against which is 0 for rule 9, 1 for rule 170. If is an RMT of , we write to denote its next state. Hence, 9[1]=0, 170[1]=1 (see Table 1).
Now, we introduce a set that contains the valid RMTs of . That is, RMT of is valid}. Generally, . However, only four RMTs are valid for the first and last rules of a null boundary CA, and and .
Traditionally, the cells of a CA follow same rule. Such a CA is uniform CA. In a non-uniform CA, the cells may follow different rules. We, therefore, need a rule vector to define an -cell non-uniform CA, where the cell follows . The uniform CA, hence, is a special case of non-uniform CA; where .
State Transition Diagram: The sequence of configurations or states of a CA generated (state transitions), during its evolution (with time), directs the CA behaviour. The state transition diagram of an automaton shows the transition of states, and depicts the relations among states of the automaton. As a proof of concept, Fig. 1 shows the state transition diagram of a 4-cell CA 9, 170, 195, 80. In this work, however, we have used the terms “configuration” and “state of a CA” interchangeably.
Definition 1
A state of a CA is reachable if there exists at least one state so that . If no such exists, is non-reachable.
For example, state 0011 of Fig. 1 is non-reachable whereas state 1101 is reachable.
Definition 2
A state of a CA * is reachable from , , if there exists a finite so that . If no such exists, then is not reachable from **.*
For example, state 1010 of Fig. 1 is reachable from the state 0100. However, 0100 is not reachable from the state 1010. Please note here that “ is not reachable from ” does not necessarily imply that “ is non-reachable”. may be reachable from other configuration, but not from .
RMT Sequence (RS): A CA state can also be viewed as a sequence of RMTs. For example, the state 0101 in null boundary condition can be viewed as , where 1, 2, 5 and 2 are the RMTs on which the transition of first, second, third and fourth cells can be made. For an -bit state, we get a sequence of RMTs. Obviously, two consecutive RMTs in an RS, and are related, and = or (Table 2).
Definition 3
Two RMTs and () are said to be equivalent to each other if . [6]
Definition 4
Two RMTs and () are said to be sibling to each other if =. [6]
Therefore, RMT 2 is equivalent to RMT 6, whereas RMTs 2 and 3 are sibling to each other.
Now to decide whether a configuration or a state of a (non-uniform) CA reachable from another configuration , we next introduce a tool, named reachability tree.
III Reachability Tree and Configuration Tracing
Reachability Tree [7, 1], a characterization tool for 1-dimensional CA, is a rooted and edge-labelled binary tree that represents the reachable states of a CA. For an -cell CA, there are levels - root at level 0, and leaves at level . We represent a node of the tree by , where () is the level index, and () is the node number at level. The numbering of nodes in each level starts from left side. In the reachability tree, the nodes are the subset of RMTs of rules – .
The root is formed with the RMTs of , the nodes of level are formed with RMTs of , and the leaf nodes are empty. We represent an edge of the tree by , where () is the level index, and () is the edge number at level. Here, we define the level of an edge. An edge is said to be edge of level, if it connects the nodes of and levels. So, we can write, and (, ), where and are the labels of the edges, and . If for any , the edge (hence, ) does not exit. We call such an edge as a non-reachable edge. However, for each (resp. ), RMT of is 0 (resp. 1) and we get two RMTs and of in (resp. ), and the edge is called 0-edge (resp. 1-edge). Following is the formal definition of the reachability tree.
Definition 5
Reachability tree of an -cell CA with rule vector \langle$${\mathcal{R}}_{0}, , , , , {\mathcal{R}}_{n-1}$$\rangle under null boundary condition is a rooted and edge-labelled binary tree with levels, where and are the edges between nodes and with label , and between nodes and with label respectively , . Following are the relations which exist in the tree:
[For root] . 2. 2.
, RMT of is in (resp. ), if = 0 (resp. 1). That means, (, ). 3. 3.
, RMTs and of are in (, ). 4. 4.
[For level ] , RMT of is in (). 5. 5.
[For level ] , for any , .
Fig. 2 is the reachability tree of the CA of Fig. 1. According to the null boundary condition, only 4 RMTs (0, 1, 2 and 3) of are valid, and so the root is formed with these 4 RMTs. That is, . Similarly, and for all , . However, the label of edge is {0, 3}, as RMTs 0 and 3 of rule 9 are 1. We write RMTs of a label on the edge. Note that, the label of is empty, that is, . This edge is non-reachable, and it can not connect any node of next level. Fig. 2 uses dotted line for them. Since for an -cell CA, the leaves are empty. The number of leaves (excluding dotted leaves) in Fig. 2 is 8, which is the number of reachable states. We call edge as 0-edge when is even, and 1-edge otherwise. We further call the edge as an edge of level . A sequence of edges from the root to a leaf node represents a reachable state, when 0-edge and 1-edge are replaced by 0 and 1 respectively. For example, 0000 is a reachable state in Fig. 2, but the state 0001 is non-reachable.
From the reachability tree, we can get the information about reachable and non-reachable states. A sequence of edges \langle$$E_{0.j_{0}} E_{n-1.j_{n-1}}$$\rangle from root to a leaf associates a reachable state and at least one RS , where and (, , and or ). That is, the sequence of edges represents at least two CA states. Note that if RMT is 0 (resp. 1) then is 0-edge (resp. 1-edge). Therefore, the reachable state is the next (resp. present) state of the state (resp. predecessor), represented as RS. Interestingly, there are RSs in the tree, but number of reachable states may be less than . A sequence of edges may associate -number of RSs (), which implies, this state is reachable from -number of different states.
Obtaining only reachable or non-reachable states using reachability tree is not enough to make the decision about reachability of one state from another. We need to find out the predecessor(s) of each state in the reachability tree. Then only we can trace in the tree if a CA state is reachable from another state . However, the tree guides us to find the predecessors of the CA states by establishing relation among edges. To find the relations among the edges, we introduce the concept of “link” in the next section.
III.1 Links
As we have discussed before, a CA state/configuration can be represented as a bit sequence, and as an RMT sequence. Reachability tree uses both the representations - bit sequences to represent the reachable states, and RMT sequences to represent their predecessors. Now, the predecessors, which are also CA states, can be observed in the tree as bit sequence. Intuitively, the “links” link the states represented as bit sequences to their predecessor.
The links are formed for each RMT , present on edge (, ). By the processing of reachability tree, we find the links among the edges for each individual RMT on the tree. The links are formed depending on whether the RMTs are self replicating (defined below) or not.
Definition 6
An RMT of a rule is said to be self replicating if where .
For example, RMT 1 (001) and RMT 3 (011) of rule 9 is self replicating, whereas RMTs 4, 5, 6 and 7 of rule 195 are self replicating (see Table 1). If an RMT is not self replicating, then there is a link from the edge to (). Depending on the values of and , we can classify the links in the following way: forward link (when ), backward link (when ) and self link (when ). We represent this link as . The rules, followed to form links in a reachability tree, are noted below:
R1) If RMT is self replicating ( or ), the edge is self linked for RMT . Otherwise, if , there is a forward link from to for RMT ; else, there is a backward link from to for RMT .
R2) If is self linked for RMT , and if is self replicating where (resp. ) is or , then (resp. ) is self linked. But if is not self replicating, then there is a forward link from to (resp. backward link from to ).
R3) If there is a link from to () for RMT , and (resp. ) is or , then there is a link from (resp. ) to while or to while . It is forward link if , backward link if .
Example III.1
Fig. 3 shows the links of edges caused by RMTs of the CA 9, 170, 195, 80. There is a (forward) link from to for RMT 2, so we write the link within a bracket beside the RMT 2. Now, we get a forward link from to for RMT 5. Now, we get , and . Therefore, for the RS , we can get a sequence of links, hence a sequence of edges , which represents 1010. Note that the RS corresponds to the state 1010. The sequence associates the state 0101, as well as the RS . The RS , hence the state 1010, is the predecessor of the state 0101. See Fig. 1 for verification.
The links help us to trace state transitions in reachability tree by identifying the predecessor(s) of each state. Through the links, we can identify the predecessor of predecessor of a state. If is linked with for RMT , and is linked with ( for forward link, for backward link) for RMT , we say there exists a link (forward or backward) from to , where . Therefore, we get the following property (transitivity property) of the links. We write , if there is a link from to for RMT .
- •
If and , then
- •
.
Now, we define length of the links. If from edge to , there are number of RMTs (or number of edges), then we write: . We write, if there is no link between and . In Fig. 3, following connection between and exists: . That is, .
Lemma III.2
There exist only two links to from any one or two edges for RMTs and when and and are sibling to each other, and only one link when in a reachability tree (). [1]
Property 1
A link present at level triggers two links at level , where , a link of level derives one link at level.
This is obvious, because an RMT at a node/label of level contributes two RMTs - and in node/label(s) of level . Both the RMTs participate in links, depending upon the link caused by RMT . For example, the link triggers two links and . However, a link at level triggers only one link at last level, as RMT is invalid in that level.
Let us now define path between two edges of a level - and . We say that there exists a path between and if is linked to , that is, if is finite. Otherwise, there is no path between and . If a path exists, we write it as the following: . Now, the question is, can we say that there exist a path between and where and ? No, not always. Following Property 1, if a path is formed from and due to the path between and , we say the path between and is triggered by the path between and . However, no path may be triggered at level . Obviously, a path from to is triggered by the paths above.
Example III.3
In Fig. 3, following path is formed at level [math], which and triggers a path at level : , , , .
Now, we explore the reachability tree to check that if there exists any path or not from destination edge () to source edge () at leaf level.
IV Reachability Analysis
To check whether a configuration of an -cell CA is reachable from another configuration , we rewrite the configurations as following: and . The configurations can also be identified in the reachability tree as sequences of edges. For ease of understanding, let us rename the sequences of edges as representing , and as representing D. Now, we search in the reachability tree for a path from to . If no path exists, we declare that is not reachable from .
Theorem IV.1
For an -cell CA, is reachable from , if and only if there exists a path from to .
Proof IV.2
Let us consider, there is a path from to at leaf level of length : where = and = . Now, we can proof is reachable from . Hence, we can get a sequence of edges from root to for each which represents a reachable state. Here, two reachable states which are represented by edge sequences that end with and respectively are two consecutive states. Hence, we can get a sequence of consecutive states. Since there is a path, the sequence of states forms a path involving the RMTs . Hence, is reachable from .
Now suppose, is reachable from . Obviously, there is a path from to , . Hence the proof.
Example IV.3
Suppose, and for the CA . Now, from Fig. 3, we see that = and = . From the linked tree, we can get the path - (). Therefore, is reachable from , and (check it from Fig. 1).
For the same CA, if and , then = and = . From Fig. 3, we can see that there is no path from to . So, is not reachable from .
To decide the reachability, we first form the root of the reachability tree (using ), get edges from the root, identify links between edges following rule R1 of link formation. Then, check if there exist any path from to . If it exists then we continue, otherwise conclude that is not reachable from . If it exists then form the next level (using ) and get the links, and again check whether there exists any path from to . If no path exists, then is not reachable from . Otherwise, continue the same process. Finally, if there exist a path from to , then declare that is reachable from .
By definition, reachability tree grows exponentially, in general. In this particular problem, however, we do not deal with all the edges. The edges, not in the path of and , are irrelevant to us. To reduce the number of edges/nodes in the proposed decision procedure, we remove such irrelevant edges.
Example IV.4
Let us consider the CA and and . Fig. 4 explains that is reachable from . The paths of and are shown in the figure. The edge is not in the path of and , and so it is irrelevant in this particular case. Hence, is removed, and the corresponding sub tree is not further developed. Similarly, , , , , etc are irrelevant, and hence removed. Obviously, we need not to deal with a good number of edges/nodes here.
However, we can sometime decide the non-reachability of from without tracing path of and , but by observing some conditions related to and . We next report these conditions.
Condition 1
For an -cell CA, if the edge is non-reachable where , then to is not reachable.
**Reason: ** From Theorem IV.1, we know that, is reachable from if there exist a path from to . And from Property 1, we can say that the path at leaf level is triggered from the root. That is, if there is a path from to , then there are the paths from to , to , , and to . If at any level, is non-reachable, then there is no link from this edge. Hence, there is no path from to , , and to . Therefore, there is no path at leaf level and we can conclude that to is non-reachable.
Example IV.5
Suppose, and for the CA . Now, from Fig. 3, we get = and = , and there is a path . At the second level, = and = and there is also a path: . Now, at the third level, = and = and there is also a path: . Now at the leaf level, = and = , but the edge is non-reachable edge. So, there is no path from to anywhere. Therefore, is not reachable from (see Fig. 1).
Condition 2
For an -cell CA, if the edge is self linked for two sibling RMTs and , then to is not reachable ().
**Reason: ** From Theorem IV.1, we know that, is reachable from if there exists a path from to , which immediately implies the paths from to , to , , and to . From Lemma III.2, we get that there exist two links to from any edges (except leaf level). If the edge is self linked for two RMTs, then no other edge can link to . So, we can reach to from only the edge and if , there is no path from to .
Example IV.6
Consider, and of the CA . Now, from Fig. 3, we get that = and = and there is path . Now, at the next level, = and = and there is also have path: . At the next level, = and = and there is no path from to (). The edge is self linked for RMTs 6 and 7 of rule 195. Hence, the edge is not reachable from any other edge.
V Decision Algorithm
Now, we present an algorithm to decide whether to is reachable or not. The following algorithm uses the theories framed in the earlier sections, to decide the same. However, the algorithm deals only with the labels of edges. Moreover, the algorithm does not form the whole tree at a time, but it deals with two sets of labels - {} and {}. We proceed with only non-empty labels, and . Here, corresponds to the label of and correspond to the label of (). The input of the algorithm is the CA (rule vector), (Source) and (Destination). The output is ‘Yes’ if is reachable from ; ‘No’ otherwise.
Example V.1
Let us consider the CA 9, 170, 195, 80, and (Fig.4) as input to Algorithm 1. Here , , and . A path from to exists (Step 7). Since there is no irrelevant label, so . Next, we get 4 labels (Fig. 3) , , and (Step 4). Now, and . The conditions of Step 6 are not satisfied, so the algorithm searches for a path from to . There exists a path involving , and (see Fig.4). Obviously is irrelevant in this case. Hence, (Step 8(b)). Now, we assign the following: , , , and further we update and (Step 9(a)). As a next step, the algorithm finds , , , (Step 4) and sets and . There exists a path involving , and . So, , and are irrelevant in this case. Hence, (Step 8(b)). Now, we assign following: , , , and further we update and (Step 9(a)). In this way, the algorithm proceeds, and finally reports “Yes”.
Correctness of Algorithm 1: The correctness of the algorithm is directly connected to the theorems, lemmas and conditions reported before. The algorithm conceptually forms reachability tree for the given CA and finds the links at each level. From the root to leaf, at any level, if the destination edge is non-reachable or the source edge is self linked for two sibling RMTs, then according to Condition 1 or Condition 2, the algorithm terminates with output Non-reachable. At any level, if there does not exist any path, then according to Property 1 and Theorem IV.1, the algorithm terminates with output Non-reachable. Otherwise, it forms a new level and checks the paths. At leaf level, if there exists any path, then according to Theorem IV.1, the algorithm terminates with output Reachable.
Theorem V.2
The upper bound running time of Algorithm 1 is proportional to the number of edges explored by the algorithm.
Proof V.3
Algorithm 1 contains main loop enclosing Steps 4-9. Hence, the time complexity of the algorithm is dependent on the time requirements of the steps. However, Step 4 finds the labels of edges of a level, and Steps 5-9 work on those labels. That is, if number of labels, hence edges, are explored at Step 4, then the other labels work only with them. Therefore, the upper bound of the time requirement for single execution of Steps 4 to 9 is proportional to . Now, before halting of the algorithm, it repeatedly explores the edges in each run of the main loop. Hence, upper bound of the running time is proportional to the total number of edges explored by the algorithm.
Worst case analysis: The worst case in Algorithm 1 occurs if is reachable from and no labels (hence, edges) can be removed. That is, the reachability tree contains all the possible leaves. In that case, space requirement, which is determined by two arrays - and , is exponential. The time requirement is then obviously exponential.
However, the algorithm performs well on an average. Because, in many cases, many edges are removed, and before reaching to the leaf of the tree, non-reachability can be decided. A sample result of another experimentation is shown Table 3, which speaks about the fact that in many cases, we need not to deal with all the of a CA. The first rule vector of Table 3 says that if and , and if first two rules of the CA are 8 and 58, then is not reachable from for any value of . Table 3 gives us an idea that reachability can be decided much before than encountering the last rule. To understand the average performance of the algorithm, we have arranged a detailed experimental study which is reported in the next section.
VI Average Case Analysis
We find the upper bound of average running time of Algorithm 1 experimentally. Theorem V.2 points out the fact that the running time of the algorithm is proportional to the number of edges explored in corresponding reachability tree. By the proposed experimentation, we, therefore, find the average number of edges explored by Algorithm 1 for a given CA size. We next proceed with experimental setup.
VI.1 Experimental Setup
In this experiment, we use simple random sampling with replacement to calculate the population mean () [4, 12]. In the estimation process, denotes the mean of sample, and denotes the estimate to the population mean (). Let us consider that the sample size is . So, , where is an element of the population which is chosen randomly and uniformly.
In the experiment, we first find which is considered as the first estimate to population mean (). Next we take the second sample of size , and find . Then, we find the next estimate to in the following way. And, this process continues.
[TABLE]
As the mean of all possible samples’ means is the population mean, the series approaches to . For our study, population size is normally large. So, neither consideration of all possible samples nor finding of is possible. We, therefore, declare as our final estimate to the population mean if , where is a small threshold value and specifies the precision we desire to achieve. We consider here .
Now, fixing of the ‘’ value is another important task of this calculation. Here, we use another statistical method for choosing . For calculating the sample size (), we first take a random sample of size . Then, we find another sample size using the following equation [4].
[TABLE]
where and are the mean and variance of the first sample of size , and
[TABLE]
where is the constant and is the relative error. For our experimental setup, we consider and [4].
As a next step, we randomly and uniformly take the second sample of size . Then, we find and as the mean and variance of the second sample. Using these parameters, we find another sample size , which finally leads us to get the ‘m’:
[TABLE]
Now, the desired sample size is calculated as following, where is the population size.
[TABLE]
VI.2 The Method of Experiment
Though Algorithm 1 is a decision algorithm, a slight modification in Algorithm 1 enables us to get the total number of edges explored by it. To do that, we initialize a variable () in the Step 2 of Algorithm 1, and rewrite the Step 8 as following:
**Step 8:
**(a) Mark the labels (s) which are not in any path, computed in Step 7, as irrelevant.
(b) 2*Count.
(c) .
So, we just add an extra step (Step 8(b)) in Algorithm 1 to get the number () of explored edges. We use this modified algorithm in our experimentation. However, Algorithm 1 demands two input parameters - one is a CA (that is, a rule vector) and the other is a pair of states (source and destination). For the experiment, therefore, we need to find out sample size twice. One for the pairs of states when a CA is given, and the other for the CAs of a given size. Let us consider that be the number of CAs to be sampled for a given size, and be the number of pairs to be sampled for a given CA.
Example VI.1
This example illustrates, the calculation of . Let us consider the 20-cell CA 106, 110, 191, 148, 71, 118, 189, 147, 164, 141, 90, 183, 201, 73, 106, 103, 230, 207, 73, 36. To find , we first randomly choose 500 () pairs of source and destination states. By Algorithm 1, we can calculate (mean of explored edges), . Using the values of mean and variance, we find (using Equation 1). For the sample size , we get the and . Now using Equation 3, we get the value of . Finally, we get the sample size , which is also 129 (using Equation 4) where .
Now, using the value of and , we can get the average number of explored edges. For a given CA size, we randomly and uniformly synthesize number of (non-uniform) CAs, and for each CA we randomly and uniformly choose number of source and destination pairs. However, for each case, we use the modified Algorithm 1 to get total number of edges explored to decide the reachability. For ease of reference, the method is summarized in Algorithm 2. This method takes the CA size as input, and reports the average number of explored edges. We use this algorithm to get our further results.
VI.3 The Results
Using Algorithm 2, we have extensively experimented with various CA sizes to get the average number of explored edges against a CA size. In Table 4, we report a sample experiment to show the average number of explored edges with respect to the size of automaton. The table points out the fact that with increase of CA size, explored number of edges also increases, but it is not exponential.
Therefore, we need another experiment for finding the rate of growth with respect to CA size. However, the worst case time complexity is exponential for this problem. Therefore, we can compare the average number of explored edges (experimentally) with the worst case of reachability problem for different size of automaton. In Figure 5, we plot the logarithm of number of edges explored against the CA size. The worst case scenario is shown by the dotted line and experimental result is shown by continuous curve in the figure. It is obvious from the graph that the edges explored on average is much less than that on worst case.
VI.4 The Rate of Growth
Experimental results indicate that the rate of growth of average number of explored edges is not exponential. In this sub-section, we find the rate of growth of explored edges to mathematically feel the change in explored edges with respect to the size of automaton. To find the rate of growth, we use the empirical curve bounding technique [10]. Assuming the explored edges () follows power rule, that is, [10], the coefficient ‘’ can be found by taking empirical measurements of explored edges at some input CA size , and calculating . So,
[TABLE]
Now, after taking the value of ‘’ for different size of automaton, we can find rate of growth using the Equation 5. In Table 5, we are showing the rate of growth with respect to CA size.
From the experimentation, we have also observed that the growth rate of explored edges always lies under some upper bound. To represent this fact asymptotically, we are using the big-oh () notation. From the definition of big-oh () notation, we can get that for a given function , , if there exist two positive constant and , such that , for all [5]. As the average number of edges, explored of the non-uniform CAs satisfies the definition of big-oh, so we represent the rate of growth by big-oh notation. From Table 5, we can show that, the value of ‘’ is nearly for all value of ( is the size of automaton). So, we estimate . Hence, we can say, the average number of edges to be explore of these CAs as . This is validated in Fig. 6.
VII Conclusion
This paper has presented an in-depth analysis on the non-uniform CAs for reachability problem. The reachability tree has been utilized to develop theories for this class of CAs. We have introduced here a technique to trace the state transition diagram in reachability tree. This technique has helped us to design the decision algorithm for the reachability problem. The average case analysis of our algorithm is done experimentally. The average case performance is of our algorithm, where the worst case time complexity is exponential.
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Adak, S., Naskar, N., Maji, P., Das, S.: On Synthesis of Non-uniform Cellular Automata Having Only Point Attractors, Journal of Cellular Automata, Special issue on Cellular Automata in Theoretical Computer Science , 12 (1-2), 2016, 81–100.
- 2[2] Chaudhuri, P. P., Chowdhury, D. R., Nandi, S., Chatterjee, S.: Additive Cellular Automata – Theory and Applications , vol. 1, IEEE Computer Society Press, USA, ISBN 0-8186-7717-1, 1997.
- 3[3] Clementi, A. E. F., Impagliazzo, R.: The Reachability Problem for Finite Cellular Automata., Inf. Process. Lett. , 53 (1), 1995, 27–31.
- 4[4] Cochran, W. G.: Sampling Techniques , John Wiley, 1977, ISBN 0-471-16240-X.
- 5[5] Cormen, T. H., Stein, C., Rivest, R. L., Leiserson, C. E.: Introduction to Algorithms , 2nd edition, Mc Graw-Hill Higher Education, 2001, ISBN 0070131511.
- 6[6] Das, S.: Theory and Applications of Nonlinear Cellular Automata In VLSI Design , Ph.D. Thesis, Bengal Engineering and Science University, Shibpur, India, 2007.
- 7[7] Das, S., Sikdar, B. K., Chaudhuri, P. P.: Characterization of Reachable/Nonreachable Cellular Automata States, Proceedings of 6 t h superscript 6 𝑡 ℎ 6^{th} International Conference on Cellular Automata for Research and Industry (ACRI) , October 2004.
- 8[8] Dennunzio, A., Formenti, E., Provillard, J.: Computational Complexity of Rule Distributions of Non-uniform Cellular Automata, Proceedings of the 6th International Conference on Language and Automata Theory and Applications , LATA’12, 2012, ISBN 978-3-642-28331-4.
