Reversible cellular automaton: Difference between revisions
m Open access bot: doi added to citation with #oabot. |
→References: Added link to book in references Tag: Reverted |
||
Line 747: | Line 747: | ||
| publisher = Wolfram Media |
| publisher = Wolfram Media |
||
| title = A New Kind of Science |
| title = A New Kind of Science |
||
| url = https://www.wolframscience.com/nks/ |
|||
| year = 2002| title-link = A New Kind of Science }} |
|||
| year = 2002}} |
|||
{{refend}} |
{{refend}} |
||
Revision as of 10:51, 8 September 2020
A reversible cellular automaton is a
Several methods are known for defining cellular automata rules that are reversible; these include the
Reversible cellular automata form a natural model of
Properties related to reversibility may also be used to study cellular automata that are not reversible on their entire configuration space, but that have a subset of the configuration space as an attractor that all initially random configurations converge towards. As Stephen Wolfram writes, "once on an attractor, any system—even if it does not have reversible underlying rules—must in some sense show approximate reversibility."[1]
Examples
One-dimensional automata
A cellular automaton is defined by its cells (often a one- or two-dimensional array), a finite set of values or states that can go into each cell, a neighborhood associating each cell with a finite set of nearby cells, and an update rule according to which the values of all cells are updated, simultaneously, as a function of the values of their neighboring cells. The simplest possible cellular automata have a one-dimensional array of cells, each of which can hold a binary value (either 0 or 1), with each cell having a neighborhood consisting only of it and its two nearest cells on either side; these are called the
A little less trivially, suppose that the cells again form a one-dimensional array, but that each state is an
Multiplication of
There are no nontrivial reversible elementary cellular automata.[7] However, a near-miss is provided by Rule 90 and other elementary cellular automata based on the exclusive or function. In Rule 90, the state of each cell is the exclusive or of the previous states of its two neighbors. This use of the exclusive or makes the transition rule locally invertible, in the sense that any contiguous subsequence of states can be generated by this rule. Rule 90 is not a reversible cellular automaton rule, because in Rule 90 every assignment of states to the complete array of cells has exactly four possible predecessors, whereas reversible rules are required to have exactly one predecessor per configuration.[8]
Critters
Conway's Game of Life, one of the most famous cellular automaton rules, is not reversible: for instance, it has many patterns that die out completely, so the configuration in which all cells are dead has many predecessors, and it also has Garden of Eden patterns with no predecessors. However, another rule called "Critters" by its inventors, Tommaso Toffoli and Norman Margolus, is reversible and has similar dynamic behavior to Life.[9]
The Critters rule is a block cellular automaton in which, at each step, the cells of the automaton are partitioned into 2×2 blocks and each block is updated independently of the other blocks. Its transition function flips the state of every cell in a block that does not have exactly two live cells, and in addition rotates by 180° blocks with exactly three live cells. Because this function is invertible, the automaton defined by these rules is a reversible cellular automaton.[9]
When started with a smaller field of random cells centered within a larger region of dead cells, many small patterns similar to Life's
Constructions
Several general methods are known for constructing cellular automaton rules that are automatically reversible.
Block cellular automata
A block cellular automaton is an automaton at which, in each time step, the cells of the automaton are partitioned into congruent subsets (called blocks), and the same transformation is applied independently to each block. Typically, such an automaton will use more than one partition into blocks, and will rotate between these partitions at different time steps of the system.[10] In a frequently used form of this design, called the Margolus neighborhood, the cells of the automaton form a square grid and are partitioned into larger 2 × 2 square blocks at each step. The center of a block at one time step becomes the corner of four blocks at the next time step, and vice versa; in this way, the four cells in each 2 × 2 belong to four different 2 × 2 squares of the previous partition.[11] The Critters rule discussed above is an example of this type of automaton.
Designing reversible rules for block cellular automata, and determining whether a given rule is reversible, is easy: for a block cellular automaton to be reversible it is necessary and sufficient that the transformation applied to the individual blocks at each step of the automaton is itself reversible. When a block cellular automaton is reversible, the time-reversed version of its dynamics can also be described as a block cellular automaton with the same block structure, using a time-reversed sequence of partitions of cells into blocks, and with the transition function for each block being the inverse function of the original rule.[10]
Simulation of irreversible automata
Toffoli (1977) showed how to embed any irreversible d-dimensional cellular automaton rule into a reversible (d + 1)-dimensional rule. Each d-dimensional slice of the new reversible rule simulates a single time step of the original rule. In this way, Toffoli showed that many features of irreversible cellular automata, such as the ability to simulate arbitrary Turing machines, could also be extended to reversible cellular automata.
As Toffoli conjectured and Hertling (1998) proved, the increase in dimension incurred by Toffoli's method is a necessary payment for its generality: under mild assumptions (such as the translation-invariance of the embedding), any embedding of a cellular automaton that has a Garden of Eden into a reversible cellular automaton must increase the dimension.
Morita (1995) describes another type of simulation that does not obey Hertling's assumptions and does not change the dimension. Morita's method can simulate the finite configurations of any irreversible automaton in which there is a "quiescent" or "dead" state, such that if a cell and all its neighbors are quiescent then the cell remains quiescent in the next step. The simulation uses a reversible block cellular automaton of the same dimension as the original irreversible automaton. The information that would be destroyed by the irreversible steps of the simulated automaton is instead sent away from the configuration into the infinite quiescent region of the simulating automaton. This simulation does not update all cells of the simulated automaton simultaneously; rather, the time to simulate a single step is proportional to the size of the configuration being simulated. Nevertheless, the simulation accurately preserves the behavior of the simulated automaton, as if all of its cells were being updated simultaneously. Using this method it is possible to show that even one-dimensional reversible cellular automata are capable of universal computation.[12]
Second-order cellular automata
The second-order cellular automaton technique is a method of transforming any cellular automaton into a reversible cellular automaton, invented by Edward Fredkin and first published by several other authors in 1984.[13] In this technique, the state of each cell in the automaton at time t is a function both of its neighborhood at time t − 1 and of its own state at time t − 2. Specifically, the transition function of the automaton maps each neighborhood at time t − 1 to a permutation on the set of states, and then applies that permutation to the state at time t − 2. The reverse dynamics of the automaton may be computed by mapping each neighborhood to the inverse permutation and proceeding in the same way.[14]
In the case of automata with binary-valued states (zero or one), there are only two possible permutations on the states (the identity permutation and the permutation that swaps the two states), which may themselves be represented as the exclusive or of a state with a binary value. In this way, any conventional two-valued cellular automaton may be converted to a second-order cellular automaton rule by using the conventional automaton's transition function on the states at time t − 1, and then computing the exclusive or of these states with the states at time t − 2 to determine the states at time t. However, the behavior of the reversible cellular automaton determined in this way may not bear any resemblance to the behavior of the cellular automaton from which it was defined.[14]
Any second-order automaton may be transformed into a conventional cellular automaton, in which the transition function depends only on the single previous time step, by combining pairs of states from consecutive time steps of the second-order automaton into single states of a conventional cellular automaton.[14]
Conserved landscape
A one-dimensional cellular automaton found by
Patt's automaton can be viewed in retrospect as an instance of the "conserved landscape" technique for designing reversible cellular automata. In this technique, a change to the state of a cell is triggered by a pattern among a set of neighbors that do not themselves change states. In this way, the existence of the same pattern can be used to trigger the inverse change in the time-reversed dynamics of the automaton. Patt's automaton has very simple dynamics (all cyclic sequences of configurations have length two), but automata using the same conserved landscape technique with more than one triggering pattern are capable of more complex behavior. In particular they can simulate any second-order cellular automaton.[15]
The SALT model of
Theory
A cellular automaton consists of an array of cells, each one of which has a finite number of possible states, together with a rule for updating all cells simultaneously based only on the states of neighboring cells. A configuration of a cellular automaton is an assignment of a state to every cell of the automaton; the update rule of a cellular automaton forms a function from configurations to configurations, with the requirement that the updated value of any cell depends only on some finite neighborhood of the cell, and that the function is invariant under translations of the input array.
With these definitions, a cellular automaton is reversible when it satisfies any one of the following conditions, all of which are mathematically equivalent to each other:[18]
- Every configuration of the automaton has a unique predecessor that is mapped to it by the update rule.
- The update rule of the automaton is a bijection; that is, a function that is both one-to-one and onto.
- The update rule is an injective function, that is, there are no two configurations that both map to the same common configuration. This condition is obviously implied by the assumption that the update rule is a bijection. In the other direction, the Garden of Eden theorem for cellular automata implies that every injective update rule is bijective.[19]
- The time-reversed dynamics of the automaton can be described by another cellular automaton. Clearly, for this to be possible, the update rule must be bijective. In the other direction, if the update rule is bijective, then it has an inverse function that is also bijective. This inverse function must be a cellular automaton rule. The proof of this fact uses the Cantor topology on the space of configurations.[20]
- The update rule of the automaton is an automorphism of the shift dynamical system defined by the state space and the translations of the lattice of cells. That is, it is a homeomorphism that commutes with the shift map, as the Curtis–Hedlund–Lyndon theorem implies.[21]
Di Gregorio & Trautteur (1975) analyze several alternative definitions of reversibility for cellular automata. Most of these turn out to be equivalent either to injectivity or to surjectivity of the transition function of the automaton; however, there is one more alternative that does not match either of these two definitions. It applies to automata such as the Game of Life that have a quiescent or dead state. In such an automaton, one can define a configuration to be "finite" if it has only finitely many non-quiescent cells, and one can consider the class of automata for which every finite configuration has at least one finite predecessor. This class turns out to be distinct from both the surjective and injective automata, and in some subsequent research, automata with this property have been called invertible finite automata.[22]
Testing reversibility
It was first shown by Amoroso & Patt (1972) that the problem of testing reversibility of a given one-dimensional cellular automaton has an algorithmic solution. Alternative algorithms based on automata theory and de Bruijn graphs were given by Culik (1987) and Sutner (1991), respectively.
- Culik begins with the observation that a cellular automaton has an injective transition function if and only if the transition function is injective on the subsets of configurations that are periodic (repeating the same substring infinitely often in both directions). He defines a nondeterministic finite-state transducer that performs the transition rule of the automaton on periodic strings. This transducer works by remembering the neighborhood of the automaton at the start of the string and entering an accepting state when that neighborhood concatenated to the end of the input would cause its nondeterministically chosen transitions to be correct. Culik then swaps the input and output of the transducer. The transducer resulting from this swap simulates the inverse dynamics of the given automaton. Finally, Culik applies previously known algorithms to test whether the resulting swapped transducer maps each input to a single output.[23]
- Sutner defines a directed cycle in which at least one vertex has two differing state assignments.[8]
These methods take
For a block cellular automaton, testing reversibility is also easy: the automaton is reversible if and only if the transition function on the blocks of the automaton is invertible, and in this case the reverse automaton has the same block structure with the inverse transition function.[10]
However, for cellular automata with other neighborhoods in two or more dimensions, the problem of testing reversibility is undecidable, meaning that there cannot exist an algorithm that always halts and always correctly answers the problem. The proof of this fact by Kari (1990) is based on the previously known undecidability of tiling the plane by Wang tiles, sets of square tiles with markings on their edges that constrain which pairs of tiles can fit edge-to-edge. Kari defines a cellular automaton from a set of Wang tiles, such that the automaton fails to be injective if and only if the given tile set can tile the entire plane. His construction uses the von Neumann neighborhood, and cells with large numbers of states. In the same paper, Kari also showed that it is undecidable to test whether a given cellular automaton rule of two or more dimensions is surjective (that is, whether it has a Garden of Eden).
Reverse neighborhood size
In a one-dimensional reversible cellular automaton with n states per cell, in which the neighborhood of a cell is an interval of m cells, the automaton representing the reverse dynamics has neighborhoods that consist of at most nm − 1 − m + 1 cells. This bound is known to be tight for m = 2: there exist n-state reversible cellular automata with two-cell neighborhoods whose time-reversed dynamics forms a cellular automaton with neighborhood size exactly n − 1.[25]
For any integer m there are only finitely many two-dimensional reversible m-state cellular automata with the von Neumann neighborhood. Therefore, there is a well-defined function f(m) such that all reverses of m-state cellular automata with the von Neumann neighborhood use a neighborhood with radius at most f(m): simply let f(m) be the maximum, among all of the finitely many reversible m-state cellular automata, of the neighborhood size needed to represent the time-reversed dynamics of the automaton. However, because of Kari's undecidability result, there is no algorithm for computing f(m) and the values of this function must grow very quickly, more quickly than any computable function.[12]
Wolfram's classification
A well-known classification of cellular automata by Stephen Wolfram studies their behavior on random initial conditions. For a reversible cellular automaton, if the initial configuration is chosen uniformly at random among all possible configurations, then that same uniform randomness continues to hold for all subsequent states. Thus it would appear that most reversible cellular automata are of Wolfram's Class 3: automata in which almost all initial configurations evolve pseudo-randomly or chaotically. However, it is still possible to distinguish among different reversible cellular automata by analyzing the effect of local perturbations on the behavior of the automaton. Making a change to the initial state of a reversible cellular automaton may cause changes to later states to remain only within a bounded region, to propagate irregularly but unboundedly, or to spread quickly, and Wolfram (1984) lists one-dimensional reversible cellular automaton rules exhibiting all three of these types of behavior.
Later work by Wolfram identifies the one-dimensional Rule 37R automaton as being particularly interesting in this respect. When run on a finite array of cells with periodic boundary conditions, starting from a small seed of random cells centered within a larger empty neighborhood, it tends to fluctuate between ordered and chaotic states. However, with the same initial conditions on an unbounded set of cells its configurations tend to organize themselves into several types of simple moving particles.[26]
Abstract algebra
Another way to formalize reversible cellular automata involves abstract algebra, and this formalization has been useful in developing computerized searches for reversible cellular automaton rules. Boykett (2004) defines a semicentral bigroupoid to be an algebraic structure consisting of a set S of elements and two operations → and ← on pairs of elements, satisfying the two equational axioms:
- for all elements a, b, and c in S, (a → b) ← (b → c) = b, and
- for all elements a, b, and c in S, (a ← b) → (b ← c) = b.
For instance, this is true for the two operations in which operation → returns its right argument and operation ← returns its left argument.
As Boykett argues, any one-dimensional reversible cellular automaton is equivalent to an automaton in rectangular form, in which the cells are offset a half unit at each time step, and in which both the forward and reverse evolution of the automaton have neighborhoods with just two cells, the cells a half unit away in each direction. If a reversible automaton has neighborhoods larger than two cells, it can be simulated by a reversible automaton with smaller neighborhoods and more states per cell, in which each cell of the simulating automaton simulates a contiguous block of cells in the simulated automaton. The two axioms of a semicentral bigroupoid are exactly the conditions required on the forward and reverse transition functions of these two-cell neighborhoods to be the reverses of each other. That is, every semicentral bigroupoid defines a reversible cellular automaton in rectangular form, in which the transition function of the automaton uses the → operation to combine the two cells of its neighborhood, and in which the ← operation similarly defines the reverse dynamics of the automaton. Every one-dimensional reversible cellular automaton is equivalent to one in this form.[5]
Boykett used this algebraic formulation as the basis for algorithms that exhaustively list all possible inequivalent reversible cellular automata.[27]
Conservation laws
When researchers design reversible cellular automata to simulate physical systems, they typically incorporate into the design the
For instance, recall the one-dimensional cellular automaton defined as an example from a
Any one-dimensional reversible cellular automaton may be placed into rectangular form, after which its transition rule may be factored into the action of an
In physical systems, Noether's theorem provides an equivalence between conservation laws and symmetries of the system. However, for cellular automata this theorem does not directly apply, because instead of being governed by the energy of the system the behavior of the automaton is encoded into its rules, and the automaton is guaranteed to obey certain symmetries (translation invariance in both space and time) regardless of any conservation laws it might obey. Nevertheless, the conserved quantities of certain reversible systems behave similarly to energy in some respects. For instance, if different regions of the automaton have different average values of some conserved quantity, the automaton's rules may cause this quantity to dissipate, so that the distribution of the quantity is more uniform in later states. Using these conserved quantities as a stand-in for the energy of the system can allow it to be analyzed using methods from classical physics.[30]
Applications
Lattice gas automata
A lattice gas automaton is a cellular automaton designed to simulate the motion of particles in a fluid or an ideal gas. In such a system, gas particles move on straight lines with constant velocity, until undergoing elastic collision with other particles. Lattice gas automata simplify these models by only allowing a constant number of velocities (typically, only one speed and either four or six directions of motion) and by simplifying the types of collision that are possible.[31]
Specifically, the HPP lattice gas model consists of particles moving at unit velocity in the four axis-parallel directions. When two particles meet on the same line in opposite directions, they collide and are sent outwards from the collision point on the perpendicular line. This system obeys the conservation laws of physical gases, and produces simulations whose appearance resembles the behavior of physical gases. However, it was found to obey unrealistic additional conservation laws. For instance, the total momentum within any single line is conserved. As well, the differences between axis-parallel and non-axis-parallel directions in this model (its anisotropy) is undesirably high. The FHP lattice gas model improves the HPP model by having particles moving in six different directions, at 60 degree angles to each other, instead of only four directions. In any head-on collision, the two outgoing particles are deflected at 60 degree angles from the two incoming particles. Three-way collisions are also possible in the FHP model and are handled in a way that both preserves total momentum and avoids the unphysical added conservation laws of the HPP model.[31]
Because the motion of the particles in these systems is reversible, they are typically implemented with reversible cellular automata. In particular, both the HPP and FHP lattice gas automata can be implemented with a two-state block cellular automaton using the Margolus neighborhood.[31]
Ising model
The Ising model is used to model the behavior of magnetic systems. It consists of an array of cells, the state of each of which represents a spin, either up or down. The energy of the system is measured by a function that depends on the number of neighboring pairs of cells that have the same spin as each other. Therefore, if a cell has equal numbers of neighbors in the two states, it may flip its own state without changing the total energy. However, such a flip is energy-conserving only if no two adjacent cells flip at the same time.[32]
Cellular automaton models of this system divide the square lattice into two alternating subsets, and perform updates on one of the two subsets at a time. In each update, every cell that can flip does so. This defines a reversible cellular automaton which can be used to investigate the Ising model.[32]
Billiard ball computation and low-power computing
As Margolus (1984) showed, billiard-ball computers may be simulated using a two-state reversible block cellular automaton with the Margolus neighborhood. In this automaton's update rule, blocks with exactly one live cell rotate by 180°, blocks with two diagonally opposite live cells rotate by 90°, and all other blocks remain unchanged. These rules cause isolated live cells to behave like billiard balls, moving on diagonal trajectories. Connected groups of more than one live cell behave instead like the fixed obstacles of the billiard-ball computer. In an appendix, Margolus also showed that a three-state second-order cellular automaton using the two-dimensional Moore neighborhood could simulate billiard-ball computers.
Is every three-dimensional reversible cellular automaton locally reversible?
One reason to study reversible universal models of computation such as the billiard-ball model is that they could theoretically lead to actual computer systems that consume very low quantities of energy. According to Landauer's principle, irreversible computational steps require a certain minimal amount of energy per step, but reversible steps can be performed with an amount of energy per step that is arbitrarily close to zero.[34] However, in order to perform computation using less energy than Landauer's bound, it is not good enough for a cellular automaton to have a transition function that is globally reversible: what is required is that the local computation of the transition function also be done in a reversible way. For instance, reversible block cellular automata are always locally reversible: the behavior of each individual block involves the application of an invertible function with finitely many inputs and outputs. Toffoli & Margolus (1990) were the first to ask whether every reversible cellular automaton has a locally reversible update rule. Kari (1996) showed that for one- and two-dimensional automata the answer is positive, and Durand-Lose (2001) showed that any reversible cellular automaton could be simulated by a (possibly different) locally reversible cellular automaton. However, the question of whether every reversible transition function is locally reversible remains open for dimensions higher than two.[35]
Synchronization
The "Tron" rule of Toffoli and Margolus is a reversible block cellular rule with the Margolus neighborhood. When a 2 × 2 block of cells all have the same state, all cells of the block change state; in all other cases, the cells of the block remain unchanged. As Toffoli and Margolus argue, the evolution of patterns generated by this rule can be used as a clock to synchronize any other rule on the Margolus neighborhood. A cellular automaton synchronized in this way obeys the same dynamics as the standard Margolus-neighborhood rule while running on an asynchronous cellular automaton.[36]
Encryption
Chai, Cao & Zhou (2005) have proposed an alternative encryption system. In their system, the encryption key determines the local rule for each cell of a one-dimensional cellular automaton. A second-order automaton based on that rule is run for several rounds on an input to transform it into an encrypted output. The reversibility property of the automaton ensures that any encrypted message can be decrypted by running the same system in reverse. In this system, keys must be kept secret, because the same key is used both for encryption and decryption.
Quantum computing
Physical universality
Janzing (2010) asked whether it was possible for a cellular automaton to be physically universal, meaning that, for any bounded region of the automaton's cells, it should be possible to surround that region with cells whose states form an appropriate support scaffolding that causes the automaton to implement any arbitrary transformation on sets of states within the region. Such an automaton must be reversible, or at least locally injective, because automata without this property have Garden of Eden patterns, and it is not possible to implement a transformation that creates a Garden of Eden.
Schaeffer (2015) constructed a reversible cellular automaton that is physically universal in this sense. Schaeffer's automaton is a block cellular automaton with two states and the Margolis neighborhood, closely related to the automata for the billiard ball model and for the HPP lattice gas. However, the billiard ball model is not physically universal, as it can be used to construct impenetrable walls preventing the state within some region from being read and transformed. In Schaeffer's model, every pattern eventually decomposes into particles moving diagonally in four directions. Thus, his automaton is not Turing complete. However, Schaeffer showed that it is possible to surround any finite configuration by scaffolding that decays more slowly than it. After the configuration decomposes into particles, the scaffolding intercepts those particles, and uses them as the input to a system of Boolean circuits constructed within the scaffolding. These circuits can be used to compute arbitrary functions of the initial configuration. The scaffolding then translates the output of the circuits back into a system of moving particles, which converge on the initial region and collide with each other to build a copy of the transformed state. In this way, Schaeffer's system can be used to apply any function to any bounded region of the state space, showing that this automaton rule is physically universal.[38]
Notes
- ^ Wolfram (2002), p. 1018.
- ^ Schiff (2008), p. 44.
- ^ Toffoli & Margolus (1990).
- ^ Blanchard, Devaney & Keen (2004), p. 38: "The shift map is without doubt the fundamental object in symbolic dynamics."
- ^ a b Boykett (2004).
- ^ Wolfram (2002), p. 1093.
- ^ Patt (1971).
- ^ a b Sutner (1991).
- ^ a b c Toffoli & Margolus (1987), section 12.8.2, "Critters", pp. 132–134; Margolus (1999); Marotta (2005).
- ^ a b c Toffoli & Margolus (1987), Section 14.5, "Partitioning technique", pp. 150–153; Schiff (2008), Section 4.2.1, "Partitioning Cellular Automata", pp. 115–116.
- ^ Toffoli & Margolus (1987), Chapter 12, "The Margolus Neighborhood", pp. 119–138.
- ^ a b Kari (2005).
- ^ Margolus (1984); Vichniac (1984); Wolfram (1984).
- ^ a b c Toffoli & Margolus (1987), Section 14.2, "Second-order technique", pp. 147–149. Wolfram (2002), pp. 437ff. McIntosh (2009).
- ^ a b Toffoli & Margolus (1990), section 5.3, "Conserved-landscape permutations", pp. 237–238.
- ^ Miller & Fredkin (2005).
- ^ Miller & Fredkin (2012).
- ^ In the one-dimensional case, several of these equivalences were already presented, in the language of dynamical systems rather than cellular automata, by Hedlund (1969), Theorem 4.1. For higher dimensions, see Richardson (1972) and Di Gregorio & Trautteur (1975).
- ^ Myhill (1963).
- ^ Richardson (1972).
- ^ Hedlund (1969).
- ^ Moraal (2000).
- ^ Culik cites a 1979 automata theory textbook for this result, but see Béal et al. (2003) for more recent developments on efficiently testing whether a transducer defines a function.
- ^ Neither Amoroso & Patt (1972) nor Culik (1987) state their algorithms' time complexities explicitly, but Sutner (1991) does, and this bound can also be found e.g. in Czeizler & Kari (2007).
- ^ Kari (1992); Czeizler (2004); Czeizler & Kari (2007).
- ^ Wolfram (2002), pp. 454–457.
- ^ Boykett (2004). See Hillman (1991) and Seck Tuoh Mora et al. (2005) for closely related work on the enumeration of width-2 reversible cellular automata.
- ^ Hattori & Takesue (1991); Fukś (2007).
- ^ a b Boykett, Kari & Taati (2008).
- ^ Pomeau (1984); Takesue (1990); Capobianco & Toffoli (2011).
- ^ a b c Toffoli & Margolus (1987), Chapter 16, "Fluid dynamics", pp. 172–184.
- ^ a b Toffoli & Margolus (1987), Chapter 17.2, "Ising systems", pp. 186–190.
- ^ Durand-Lose (2002).
- ^ Fredkin & Toffoli (1982).
- ^ Kari (2005, 2009)
- ^ Toffoli & Margolus (1987), Section 12.8.3, "Asynchronous computation", pp. 134–136.
- ^ Meyer (1996); Schumacher & Werner (2004); Shepherd, Franz & Werner (2006); Nagaj & Wocjan (2008).
- ^ See also "A Physically Universal Cellular Automaton", Shtetl-Optimized, Scott Aaronson, June 26, 2014.
References
- Amoroso, S.; Patt, Y. N. (1972), "Decision procedures for surjectivity and injectivity of parallel maps for tessellation structures", MR 0317852.
- Béal, Marie-Pierre; Carton, Olivier; Prieur, Christophe; Sakarovitch, Jacques (2003), "Squaring transducers: an efficient procedure for deciding functionality and sequentiality", MR 1964625.
- Blanchard, Paul; MR 2078845.
- Boykett, Tim (2004), "Efficient exhaustive listings of reversible one dimensional cellular automata", MR 2086738.
- Boykett, Tim; MR 2394641, archived from the original(PDF) on 2015-09-30.
- Capobianco, Silvio; .
- Chai, Zhenchuan; Cao, Zhenfu; Zhou, Yuan (2005), "Encryption based on reversible second-order cellular automata", Parallel and Distributed Processing and Applications (ISPA 2005 Workshops), .
- Culik, Karel, II (1987), "On invertible cellular automata" (PDF), ).
- Czeizler, Eugen (2004), "On the size of the inverse neighborhoods for one-dimensional reversible cellular automata", MR 2086740.
- Czeizler, Eugen; MR 2330639.
- Di Gregorio, S.; Trautteur, G. (1975), "On reversibility in cellular automata", MR 0392201.
- Durand-Lose, Jérôme (2001), "Representing reversible cellular automata with reversible block cellular automata", Discrete models: combinatorics, computation, and geometry (Paris, 2001), Discrete Math. Theor. Comput. Sci. Proc., AA, Maison Inform. Math. Discrèt. (MIMD), Paris, pp. 145–154, MR 1888769.
- Durand-Lose, Jérôme (2002), "Computing inside the billiard ball model", in Adamatzky, Andrew (ed.), Collision-Based Computing, Springer-Verlag, pp. 135–160.
- MR 0658311.
- MR 0657156. Reprinted in Adamatzky, Andrew, ed. (2002), Collision-Based Computing, Springer-Verlag, pp. 47–82.
- Fukś, Henryk (2007), "Remarks on the critical behavior of second order additive invariants in elementary cellular automata", MR 2346870.
- Hattori, Tetsuya; Takesue, Shinji (1991), "Additive conserved quantities in discrete-time lattice dynamical systems", MR 1115865.
- MR 0259881.
- Hertling, Peter (1998), "Embedding cellular automata into reversible ones", Unconventional models of computation (Auckland, 1998), Springer Series in Discrete Mathematics and Theoretical Computer Science, Springer-Verlag, pp. 243–256, MR 1653663.
- Hillman, David (1991), "The structure of reversible one-dimensional cellular automata", MR 1128996.
- Janzing, Dominik (2010), Is there a physically universal cellular automaton or Hamiltonian?, Bibcode:2010arXiv1009.1720J.
- MR 1094882.
- MR 1226709.
- MR 1360196.
- MR 2187250.
- MR 2539690.
- MR 0762656. Reprinted in Wolfram, Stephen (1986), Theory and Applications of Cellular Automata, Advanced series on complex systems, vol. 1, World Scientific, pp. 232–246, and in Adamatzky, Andrew, ed. (2002), Collision-Based Computing, Springer-Verlag, pp. 83–104.
- Bibcode:1998comp.gas.11002M.
- Marotta, Sebastian M. (2005), "Living in Critters' world", Revista Ciências Exatas e Naturais, 7 (1), archived from the original on 2012-03-19.
- McIntosh, Harold V. (2009), "12. Reversible cellular automata", One Dimensional Cellular Automata, Luniver Press, pp. 205–246.
- Meyer, David A. (1996), "From quantum cellular automata to quantum lattice gases", MR 1418805.
- Miller, Daniel B.; ISBN 1-59593-019-1.
- Miller, Daniel B.; Bibcode:2012arXiv1206.2060M.
- Moraal, Hendrik (2000), "Graph-theoretical characterization of invertible cellular automata", MR 1764165.
- Morita, Kenichi (1995), "Reversible simulation of one-dimensional irreversible cellular automata", MR 1347674.
- MR 0155764. Reprinted in Burks, Arthur W.(1970), Essays on Cellular Automata, University of Illinois Press, pp. 204–205.
- Nagaj, Daniel; Wocjan, Pawel (2008), "Hamiltonian quantum cellular automata in one dimension", Physical Review A, 78 (3): 032311, .
- Patt, Y. N. (1971), Injections of neighborhood size three and four on the set of configurations from the infinite one-dimensional tessellation automata of two-state cells, Technical Report ECON-N1-P-1, Ft. Monmouth, NJ 07703. As cited by Amoroso & Patt (1972) and Toffoli & Margolus (1990).
- Pomeau, Y. (1984), "Invariants in cellular automata", MR 0750565.
- Richardson, D. (1972), "Tessellations with local transformations", MR 0319678.
- Schaeffer, Luke (2015), "A physically universal cellular automaton", Proceedings of the 6th Innovations in Theoretical Computer Science Conference (ITCS 2015), .
- Schiff, Joel L. (2008), Cellular Automata: A Discrete View of the World, Wiley, ISBN 978-0-470-16879-0.
- Schumacher, B.; Werner, R. F. (2004), Reversible quantum cellular automata, Bibcode:2004quant.ph..5174S.
- Seck Tuoh Mora, Juan Carlos; Chapa Vergara, Sergio V.; Juárez Martínez, Genaro; McIntosh, Harold V. (2005), "Procedures for calculating reversible one-dimensional cellular automata", MR 2131890.
- Shepherd, D. J.; Franz, T.; Werner, R. F. (2006), "A universally programmable quantum cellular automaton", PMID 16907423.
- MR 1116419.
- Takesue, Shinji (1990), "Relaxation properties of elementary reversible cellular automata", Cellular automata: theory and experiment (Los Alamos, NM, 1989), MR 1094882.
- MR 0462816.
- ISBN 9780262200608.
- MR 1094877.
- Vichniac, Gérard Y. (1984), "Simulating physics with cellular automata", MR 0762657.
- MR 1619103.
- doi:10.1038/311419a0.
- MR 1920418