Logical Gates via Gliders Collisions
Genaro J. Martinez, Andrew Adamatzky, Kenichi Morita

TL;DR
This paper demonstrates how logical gates, including reversible ones like Fredkin and CNOT, can be implemented through collisions of gliders in a cellular automaton with memory, showcasing potential for computation.
Contribution
It introduces novel designs of logical gates using glider collisions in a cellular automaton with memory, expanding computational possibilities.
Findings
Successfully implemented Fredkin and CNOT gates via glider collisions.
Demonstrated the use of cellular automaton with memory for logical operations.
Showed that glider interactions can form the basis of reversible computation.
Abstract
An elementary cellular automaton with memory is a chain of finite state machines (cells) updating their state simultaneously and by the same rule. Each cell updates its current state depending on current states of its immediate neighbours and a certain number of its own past states. Some cell-state transition rules support gliders, compact patterns of non-quiescent states translating along the chain. We present designs of logical gates, including reversible Fredkin gate and controlled NOT gate, implemented via collisions between gliders.
Click any figure to enlarge with its caption.
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17
Figure 18
Figure 19
Figure 20
Figure 21
Figure 22
Figure 23
Figure 24
Figure 25
Figure 26
Figure 27
Figure 28
Figure 29
Figure 30
Figure 31
Figure 32
Figure 33
Figure 34
Figure 35
Figure 36
Figure 37
Figure 38
Figure 39
Figure 40| localisation | period | shift | velocity | mass |
|---|---|---|---|---|
| 11 | 38 | |||
| 11 | 2 | 38 |
| 0 | 0 | 0 | 0 | 0 | 0 | |
| 0 | 0 | 1 | 0 | 1 | 0 | |
| 0 | 1 | 0 | 0 | 0 | 1 | |
| 0 | 1 | 1 | 0 | 1 | 1 | |
| 1 | 0 | 0 | 1 | 0 | 0 | |
| 1 | 0 | 1 | 1 | 0 | 1 | |
| 1 | 1 | 0 | 1 | 1 | 0 | |
| 1 | 1 | 1 | 1 | 1 | 1 |
| M | ||||
|---|---|---|---|---|
| 111 | 111 | 0 | 0 | 2 |
| 110 | 110 | 1 | 0 | 2 |
| 101 | 101 | 0 | 0 | 1 |
| 100 | 100 | 1 | 0 | 0 |
| 011 | 011 | 0 | 1 | 0 |
| 010 | 001 | 1 | 1 | 1 |
| 001 | 010 | 0 | 1 | 0 |
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.
Taxonomy
TopicsCellular Automata and Applications · DNA and Biological Computing · Slime Mold and Myxomycetes Research
Logical Gates via Gliders Collisions
Genaro J. Martínez1,2, Andrew Adamatzky2
Kenichi Morita3
(14 March 2018111Published in: Reversibility and Universality: Essays Presented to Kenichi Morita on the Occasion of his 70th Birthday, A. Adamatzky (ed.), chapter 9, pages 199–220. Springer, 2018. A short version is published as: “Conservative Computing in a One-dimensional Cellular Automaton with Memory,” Journal of Cellular Automata 13(4) 325–346, 2018.)
Abstract
An elementary cellular automaton with memory is a chain of finite state machines (cells) updating their state simultaneously and by the same rule. Each cell updates its current state depending on current states of its immediate neighbours and a certain number of its own past states. Some cell-state transition rules support gliders, compact patterns of non-quiescent states translating along the chain. We present designs of logical gates, including reversible Fredkin gate and controlled not gate, implemented via collisions between gliders.
1 Escuela Superior de Cómputo, Instituto Politécnico Nacional, México
2 Unconventional Computing Lab, University of the West of England, Bristol, United Kingdom
3 Hiroshima University, Higashi Hiroshima, Japan
1 Preliminaries
When designing a universal cellular automata (CA) we aim, similarly to designing small universal Turing machines, to minimise the number of cell states, size of neighbourhood and sizes of global configurations involved in a computation [15, 18, 2, 4, 5, 19, 50, 38, 36, 60]. History of 1D universal CA is long yet exciting.222Complex Cellular Automata Repository http://uncomp.uwe.ac.uk/genaro/Complex_CA_repository.html In 1971 Smith III proved that a CA for which a number of cell-states multiplied by a neighbourhood size equals 36 simulates a Turing machine [52]. Sixteen years later Albert and Culik II designed a universal 1D CA with just 14 states and totalistic cell-state transition function [1]. In 1990 Lindgren and Nordahl reduced the number of cell-states to 7 [21]. These proofs were obtained using signals interaction in CA. Another 1D universal CA employing signals was designed by Kenichi Morita in 2007 [43]: the triangular reversible CA which evolves in partitioned spaces (PCA).
In 1998, Cook demonstrated that elementary CA, i.e. with two cell-states and three-cell neighbourhood, governed by rule 110 is universal [13, 64]. He did this by simulating a cyclic tag system in a CA.333A reproduction of this machine working in rule 110 can be found in http://uncomp.uwe.ac.uk/genaro/rule110/ctsRule110.html Operations were implemented with 11 gliders and a glider gun.
We will show that an elementary CA with memory, where every cells updates its state depending not only on its two immediate neighbours but also on its own past states, exhibits gliders which collision dynamics allows for implementation of logical gates just with one glider. We demonstrate implementation of not and and gates, delay, nand gate, majority gate, and cnot and Fredkin gates.
2 Elementary Cellular Automata
One-dimensional elementary CA (ECA) [63] can be represented as a 4-tuple , where is a binary alphabet (cell states), is a local transitions function, is a cell neighbourhood, is a start configuration. The system evolves on an array of cells , where (integer set) and each cell takes a state from the . Each cell has three neighbours including itself: . The array of cells {} represents a global configuration , such that . The set of finite configurations of length is represented as . Cell states in a configuration are updated to next configuration simultaneously by a the local transition function : . Evolution of ECA is represented by a sequence of finite configurations given by the global mapping, .
3 Elementary Cellular Automaton Rule 22
Rule 22 is an ECA with the following local function:
[TABLE]
The local function has a probability of 37.5% to get states 1 in the next generation and much higher probability to get state 0 in the next generation. Examples of evolution of ECA Rule 22 from a single cell in state ‘1’ and from a random configurations are shown in Fig. 1.
4 Elementary Cellular Automata with Memory
Conventional CA are ahistoric (memoryless): the new state of a cell depends on the neighbourhood configuration solely at the preceding time step of . CA with memory (CAM) can be considered as an extension of the standard framework of CA where every cell is allowed to remember some period of its previous evolution. CAM was introduced by Sanz, see overview in [51]. To implement a memory function we need to specify the kind of memory , as follows:
[TABLE]
The parameter determines the depth, or a degree, of the memory and each cell being a state function of the series of states of the cell with memory up to time-step. To execute the evolution we apply the original rule as:
[TABLE]
The main feature in CAM is that the mapping remains unaltered, while historic memory of all past iterations is retained by featuring each cell in the context of history of its past states in . This way, cells canalise memory to the map . For example, we can consider memory function as a majority memory , where in case of a tie given by in we will take the last value . In this case, function represents the classic majority function for three values [37] as follows:
[TABLE]
that represents the cells and define a temporal ring of cells, before reaching the next global configuration .
5 Elementary Cellular Automaton with Memory Rule
ECA with memory (ECAM) rule employ the majority memory () and degree of memory .
Figure 2 shows a typical evolution of ECAM rule from a random initial condition. There we observe emergence of gliders travelling and colliding with each other.
The set of gliders are defined in a square of , their properties are shown in Tab. 1.
We undertook a systematic analysis of binary collisions between gliders and found 44 different types of the collision outcomes, we selected some types of the collisions to realise logical gates presented in this paper (see Appendix A).
6 Logic gates via gliders collisions
We assume presence of a glider at a given site of space and time is a logical ‘1’ (True) and absence is ‘0’ (False). Logic gates are realised via binary collisions of gliders in rule . Figure 4bc shows how and-not gate is realised. Fig. 4d demonstrates implementations of and gate. Also a delay operator can be implemented by delaying glider and conserving momentum of glider as shown in Fig. 4e
A nand gate can be cascaded from majority and not gates. To design nand gate, we fix third value in majority gate to produce and gate as illustrated in Fig 5b. Later a not gate is cascaded to get a nand gate (Fig. 5a).
Figure 6a represents a value ‘0’ as one glider and a value ‘1’ as a couple of gliders. Figure 6b presents a scheme of nand gate in . We have three-input values/gliders that will be evaluated by one control glider travelling perpendicularly to input gliders. The control glider transforms into a majority function. Further, other glider acts as an active signal in not gate.
Figures 7 and 8 show the implementation of nand gate in , encoded in its initial condition set of gliders in six positions. As was shown in the scheme (Fig. 6c), gliders coming from the left side represent binary values and a glider coming from the right acts as a control glider for the values of the majority gate. The control glider continues its travel undisturbed, after interaction with input gliders, and therefore it can be recycled in further majority gate.
6.1 Ballistic collisions
A concept of ballistic logical gates represent Boolean values by balls which preserve their identity during collision but change their velocity vectors; the balls are routed in the computing space using mirrors [58]. The billiard ball model was advanced by Margolus in his designs of partitioned CA to demonstrate a logical universality of a billiard-ball model and to implement Fredkin gate with soft spheres in billiard-ball model [28, 29].
Ballistic collisions of gliders, or particles, permit to represent functions of two arguments (general signal-interaction scheme is conceptualized in Fig. 9a), as follows [58]:
is a product of one collision (Fig. 9b); 2. 2.
identity (Fig. 9c); 3. 3.
reflection (Fig. 9d);
where Fig. 9a represents a collision not preserving identity of gliders and ; Fig. 9b shows a collision where identities of input gliders are preserved.
Below we show that ECAM rule reproduces ballistic collisions. Figure 10 demonstrates identity collisions . The collisions between gliders are illustrated in (Fig. 10). The collisions are of soliton nature [20, 56]. A carry-ripple adder [55] can be implemented in ECAM Rule by solitonic reactions with pairs of gliders and identity function (Fig. 10a).
Figure 11 illustrates elastic collisions with a pair of gliders. The pairs of gliders reflect in the same manner in all collisions (Fig. 11a). These elastic collisions are robust to phase changes and initial positions of gliders (Fig. 11b).
The ballistic interaction gate (Fig. 12a) is invertible (Fig. 12b) [10]. Therefore inverse and elastic collisions in may model the interaction gate: gliders and are equivalent to balls. To allow gliders to return to the original input locations we may constrain them with boundary conditions (Figs. 10 and 11) or route them with mirrors.
6.2 Fredkin gate
A conservative logic gate is a Boolean function that is invertible and preserve signals [17]. Fredkin gate is a classical conservative logic gate. The gate realises the transformation , where . Schematic functioning of Fredkin gate is shown in Fig. 13 and the truth table is in Table 2.
Fredkin gate is universal because one can implement a functionally complete set of logical functions with this gate (Fig. 14). Other gates implemented with Fredkin gate are shown below:
- •
, , (or , , ) yields the implies gate .
- •
, , (or , , ) yields the not implies gate [17].
6.3 Basic collisions
To simulate a Fredkin gate in ECAM rule , we utilise a set of collisions to preserve the reactions and the persistence of data, these basic collisions have a specific task and actions which are specified as follows.
- •
Mirror reflects a glider, the mirror should be deleted, not to become an obstacle for other signals.
- •
Doubler splits a signal into two signals.
- •
Soliton crosses two gliders preserving its identity but might change its phase.
- •
Splitter separates two gliders into gliders travelling in opposite directions.
- •
Flag is a glider that is generated depending of an input value given.
- •
Displacer moves a glider forward.
Fredkin gates implemented in non-invertible systems were proposed and simulated by Adamatzky in a non-linear medium — Oregonator model of Belousov-Zhabotinsky [7].
6.4 Fredkin gates in one dimension
Figure 15 displays the schematic diagram proposed to simulate Fredkin gates in ECAM rule . There are three inputs and three outputs . During the computation auxiliary gliders are generated. They are deleted before reaching outputs. Gliders travel in two directions in a 1D chain of cells, they can be reused only when crossing periodic boundaries or via combined collisions. We use two gliders as flags, travelling from the left ‘’ and from the right ‘’. Flags are activated depending on initial values for or as follows
- If then ,
- If then ,
- In any other case and .
Mirrors are defined as follows:
- If then ,
- If then ,
- If then ,
- If then ,
- In any other case .
Distances between gliders are fixed as positive integers determined for a number of cells in the state ‘0’, as \stackrel{{\scriptstyle\text{\tiny0^{n}}}}{{\frown}} . During the computation we split gliders when two gliders travel together, the split gliders travel in opposite directions. We use two gliders as mirrors to change the direction of an argument movement. We use displacer to move an output glider and adjust its distance with respect to other.
Table 3 shows values of inputs, outputs, flags, and mirrors. First column represents inputs, the second column outputs, third column are values of a flag activated in the left side, fourth column are values of the flag activated in the right side, and the last column shows the number of necessary mirrors.
Space-time configurations of ECAM rule implementing Fredkin gate for all non-zero combinations of inputs are shown in Figs. 16–19.
7 Discussion
We demonstrated how to implement a functionally complete set of Boolean functions in a one-dimensional cellular automaton with binary cell states, three-cell neighbourhood and memory depth four. We also shown that Fredkin gate can be realised the this automaton. Let us compare complexity of our designs with previously published models of universal one-dimensional cellular automata.
CA simulating Turing machine, proposed by Smith III in 1971 [52], satisfied the condition: a number of cell-states multiplied by a neighbourhood size equals . A universal 1D CA designed by Albert and Culik II [1] has 14 states and totalistic cell-state transition rule, that is for their automaton . The Lindgren-Nordahl CA [21] has 7 states, assuming three-cell neighbourhood we have . ECAM implementation of a Fredkin gate, proposed in present paper, has two cell states, three cell neighbourhood, and memory depth 4, this implies . Thus, in terms of a neighbourhood size and a number of states our automaton is less efficient than the CA proposed by Lindgren-Nordahl [21], however we use gliders as signals. Gliders are discrete analogs of solitons, therefore our design, in principle, can be considered as a blueprint for physical implementation, as we will discuss below. Cook’s design [13, 64] of a universal CA via cyclic tag system is the most optimal in terms of neighbourhood size and number of states, , however the implementation involves 11 gliders and a glider gun. Our design of Fredkin gate utilises just two types of gliders.
Polymer chains that support propagation of travelling localisations (solitons, kinks, defects) are potential substrates for implementation of glider-based Fredkin gate. There are many potential candidates, here we discuss actin filaments. Actin is a protein presented in all eukaryotic cells in forms of globular actin (G-actin) and filamentous actin (F-actin), see history overview in [53]. Filamentous actin is a double helix of F-actin unit chains. In [6] we proposed a model of actin polymer filaments as two chains of one-dimensional binary-state semi-totalistic automaton arrays and uncovered rules supporting gliders, discrete analogs of ionic waves propagating in actin filaments [59].
Let us evaluate a physical space-time requirement for implementation of Fredkin gate on actin filaments. Assume a unit of F-actin corresponds to a cell of 1D CA. Maximum diameter of an actin filament is 8 nm [40, 54]. An actin filament is composed of overlapping units of F-actin. Thus, diameter of a single unit is c. 4 nm. A glider in our ECAM model occupies 10 cells, that makes a size of a signal in actin filaments 40 nm. Maximum distance between inputs in ECAM Fredkin gate is 200 cells. This makes gate size 880 nm.
With regards to speed of Fredkin gate realisation, being unaware of exact mechanisms of travelling localisations on actin filaments we can propose speculative estimates. Assume the underpinning mechanism of generating a localisation is an excitation of F-actin molecule (single unit of actin polymer). An excitation in a molecule takes place when an electron in a ground state absorbs a photon and moves up to a high yet unstable energy level. Later the electron returns to its ground state. When returning to the ground state the electron releases photon which travels with speed Å per second. F-actin molecule (one unit of actin filament) is a polymer chain of at most 3K nodes. Thus the F-actin unit can be spanned by an excitation in at most sec. That can be adopted as a physical time step equivalent to one step of ECAM evolution. The ECAM Fredkin gate completes its operation on actin filament in 600 time steps, that is at most sec, i.e. 0.1 picosecond of real time.
Experimental implementation of the Fredkin gate, including cascading of the gates, on actin filaments, or any other soliton-supporting polymer chain makes a very challenging topic of future studies. There methodological approaches to control and monitor attosecond scale molecular dynamics [14, 8, 48, 11] however it is not clear if they can be applied to actin polymers. The problems to overcome include input of data in acting filament with a single F-actin unit precision, keeping the polymer chain stable and insulated from thermal noise, reading outputs from the polymer chain. However exact experimental implementation remains uncertain.
But, although this can be confined in a physical computing device several limitations should be improved: avoid the use of mirrors and the use of flags. An option is that they could be manipulated into in a ring (or virtual CA collider [32, 27]).
Appendix A Appendix – Binary collisions in
The reference list from the paper itself. Each links out to its DOI / PubMed record.
- 1[1] Albert, J. & Culik II, K. (1987) A simple universal cellular automaton and its one-way and totalistic versions, Complex Systems 1(1) 1–16.
- 2[2] Adamatzky, A. (2001) Computing in Nonlinear Media and Automata Collectives , IOP Publishing Ltd. Bristol, UK.
- 3[3] Adamatzky, A. (Ed.) (2002) Collision-Based Computing , Springer.
- 4[4] Adamatzky, A., Costello, B.L. & Asai, T. (2005) Reaction-Diffusion Computers , Elsevier.
- 5[5] Adamatzky, A. (2010) Physarum Machines: Computers from Slime Mould , World Scientific Series on Nonlinear Science Series A: Volume 74.
- 6[6] Adamatzky, A. & Mayne, R. (2015) Actin automata: Phenomenology and localizations, International Journal of Bifurcation and Chaos 25(02) 1550030.
- 7[7] Adamatzky, A. (2017) Fredkin and Toffoli gates implemented in oregonator model of Belousov-Zhabotinsky medium, Int. J. Bifurcation and Chaos 27(3) 1750041.
- 8[8] Baltuska, A., Udem, T., Uiberacker, M., Hentschel, M., Goulielmakis, E., Gohle, C., Holzwarth, R., Yakovlev, V.S., Scrinzi, A., Hansch, T.W. & Krausz, F. (2003) Attosecond control of electronic processes by intense light fields, Nature 421(6923) 611–615.
