A Computation in a Cellular Automaton Collider Rule 110
CChapter 1
A Computation in a Cellular AutomatonCollider Rule 110
Genaro J. Mart´ınez, Andrew Adamatzky, and Harold V. McIntosh
Abstract
A cellular automaton collider is a finite state machine build of rings of one-dimensional cellular automata. We show how a computation can be performed onthe collider by exploiting interactions between gliders (particles, localisations). Theconstructions proposed are based on universality of elementary cellular automatonrule 110, cyclic tag systems, supercolliders, and computing on rings.
Elementary cellular automaton (CA) rule 110 is the binary cell state automaton witha local transition function ϕ of a one-dimensional (1D) CA order ( k = , r = ) inWolfram’s nomenclature [57], where k is the number of cell states and r the numberof neighbours of a cell. We consider periodic boundaries, i.e. first and last cells ofa 1D array are neighbours. The local transition function for rule 110 is defined inTab. 1.1, the string 01101110 is the number 110 in decimal notation: ϕ ( , , ) → ϕ ( , , ) → ϕ ( , , ) → ϕ ( , , ) → ϕ ( , , ) → ϕ ( , , ) → ϕ ( , , ) → ϕ ( , , ) → Unconventional Computing Centre, University of the West of England,Coldharbour Lane, Bristol BS16 1QY, UKEscuela Superior de C´omputo, Instituto Polit´ecnico Nacional,Av. Juan de Dios B´atiz s/n, 07738, M´exicoDepartamento de Aplicaci´on de Microcomputadoras, Universidad Aut´onoma de Puebla,49 Poniente 1102, 72000, Puebla, Puebla, M´exico 1 a r X i v : . [ n li n . C G ] S e p Genaro J. Mart´ınez, Andrew Adamatzky, and Harold V. McIntosh
Fig. 1.1
An example of CA rule 110 evolving for 384 time steps from a random configuration,where each cell assigned state ‘1’ with uniformly distributed probability 0.5. The particles arefiltered. Time goes down.
A cell in state ‘0’ takes state ‘1’ if both its neighbours are in state ‘1’ or leftneighbour is ‘0’ and right neighbour is ‘1’; otherwise, the call remains in the state‘0’. A cell in state ‘1’ takes state ‘0’ if both its neighbours are in state ‘1’, or bothits neighbours are in state ‘0’ or it left neighbour is ‘1’ and its right neighbour is ‘0’.Fig. 1.1 shows an evolution of rule 110 from a random initial condition. We can seethere travelling localisation: particles or gliders, and some stationary localisations:breathers, oscillators or stationary structures.
A detailed description of particles/gliders discovered in evolutions of CA rule 110is provided in [32, 36]. Further, we refers to a train of n copies of particle A as A n .Figure 1.2 shows all known particles, and generators of particles, or glider guns.Each particle has its unique features, e.g. slopes, velocities, periods, contact points,collisions, and phases [37, 35, 33]. A set of particles in rule 110 is defined as: G = { A , B , ¯ B n , ˆ B n , C , C , C , D , D , E n , ¯ E , F , G n , H , gun n } . where n means that a structure of the particle can be extendible infinitely, the restof symbols denote types of particles as shown in Fig. 1.2. Table 1.1 summarizeskey features of the particles: column structure gives the name of each particle in-cluding two more structures: e r and e l which represent the slopes of ether pattern See also, http://uncomp.uwe.ac.uk/genaro/rule110/glidersRule110.html
A Computation in a Cellular Automaton Collider Rule 110 3
Fig. 1.2
Types of particles discovered in rule 110. (periodic background). The next four columns labeled margins indicate the numberof periodic margins in each particle: they are useful to recognize contact points forcollisions. The margins are partitioned in two types with even values ems and odd
Genaro J. Mart´ınez, Andrew Adamatzky, and Harold V. McIntosh
Table 1.1
Properties of particles in rule 110.MarginsStructure Left – Right Velocity Lineal ems oms ems oms
Volume e r . 1 . 1 2/3 ≈ e l A . 1 . 1 2/3 ≈ B B n B n C C C D D E n ≈ -0.266666 19¯ E ≈ -0.266666 21 F ≈ -0.111111 15-29 G n ≈ -0.333333 24-38 H
17 8 17 8 -18/92 ≈ -0.195652 39-53glider gun 15 5 15 5 -20/77 ≈ -0.259740 27-55 values oms which are distributed also in two groups: left and right margins. Col-umn v g indicates a velocity of a particle g , where g belongs to a particle of the setof particles G . A relative velocity is calculated during the particle’s displacementon d cells during period p . We indicate three types of a particle propagation viasign of its velocity. A particle travelling to the right has positive velocity , a parti-cle travelling to the left has negative velocity . Stationary particle has zero velocity.Different velocities of particles allow us to control distances between the particle toobtained programmable reactions between the particles. Typically, larger particleshas lower velocity values. No particle can move faster than v e r or v e l . Column linealvolume shows the minimum and maximum number of necessary cells occupied bythe particle. We represent CA particles as strings. These strings can be calculated using de Bruindiagrams [31, 34, 55, 32, 37] or with the tiles theory [16, 33, 35, 37]. A regular language L R is based on a set of regular expressions Ψ R uniquelydescribing every particle of G . A subset of the set of regular expressions See a complete set of regular expressions for every particle in rule 110 in http://uncomp.uwe.ac.uk/genaro/rule110/listPhasesR110.txt
A Computation in a Cellular Automaton Collider Rule 110 5 Ψ R = p (cid:91) i = w i , g ∀ ( w i ∈ Σ ∗ ∧ g ∈ G ) (1.2)where p ≥ L R = { w | w = w i w j ∨ w i + w j ∨ w ∗ i and w i , w j ∈ Ψ R } . (1.3)From these set of strings we can code initial configurations to program collisionsbetween particles [39, 27, 36]. Fig. 1.3
De Bruijn diagram calculating A particles (left) and space-time configuration of automa-ton showing locations of periodic sequences produced (right). To deriver the regular expressions we use the de Bruijn diagrams [31, 55, 34] asfollows. Assume the particle A moves two cells to the right in three time steps (seeTab. 1.1). The corresponding extended de Bruijn diagram (2-shift, 3-gen) is shownin Fig. 1.3. Cycles in the diagram are periodic sequences uniquely representing eachphase of the particle. Diagram in Fig. 1.3 has two cycles: a cycle formed by just avertex 0 and another large cycle of 26 vertices composed by other nine internalcycles. The sequences or regular expressions determining the phases of the particle A are obtained by following paths through the edges of the diagram. There regularexpressions and corresponding paths in Bruijn diagram are shown below. I. The expression (1110)*: vertices 29, 59, 55, 46 determining A n particles.II. The expression (111110)*: vertices 61, 59, 55, 47, 31, 62 defining nA particles with a T tile among each particle.III. The expression (11111000100110)*: vertices 13, 27, 55, 47, 31, 62, 60, 56, 49, 34, 4, 9,19, 38 describing the periodic background configurations in a specific phase. Cycle with period 1 (vertex 0) yields a homogeneous evolution in state 0. Theevolution space in Fig. 1.3 shows different trains of A particles. The initial conditionis constructed following some of the seven possible cycles of the de Bruijn diagramor a combination of them. In this way, the number of particles A or the number ofintermediate tiles T can be selected by moving from one cycle to another.The alignment of the f i Genaro J. Mart´ınez, Andrew Adamatzky, and Harold V. McIntosh a phase is fixed (in our case the phase f i
1) and a horizontal line is placed in theevolution space bounded by two aligned T tiles. The sequence between both tilesaligned in each of the four levels determines a periodic sequence representing aparticular structure in the evolution space of rule 110. All periodic sequences ina specific phase are calculated, enumerating the phases for each particle or non-periodic structure. Table 1.2
Four sets of phases Ph i in rule 110.phases level one ( Ph ) → { f
1, f
1, f
1, f } phases level two ( Ph ) → { f
2, f
2, f
2, f } phases level three ( Ph ) → { f
3, f
3, f
3, f } phases level four ( Ph ) → { f
4, f
4, f
4, f } Table 1.2 represents disjoint subset of phases, each level contains four phases.Variable f i indicates the phase of a particle, and the subscript j (in the notationf i j ) indicates the selected set Ph j of regular expressions. Finally, we use the nextnotation to codify initial conditions by phases as follows: ( , f i ) (1.4)where represents a particle according to Cook’s classification (Table 1.1) and is a phase of the particle with period greater than four. A concept of universality and self-reproduction in CA was proposed by von Neu-mann in [54] in his design of a universal constructor in a 2D CA with 29 cell-states.Architectures of universal CA have been simplified by Codd in 1968 [10], Banks in1971 [7], Smith in 1971 [51], Conway in 1982 [8], Lindgren and Nordahl in 1990[22], and Cook in 1998 [11]. Cook simulated a cyclic tag system, equivalent toa minimal Turing machine, in CA rule 110. In general, computation capacities areexplores in complex CA and chaotic CA [40].
Cyclic tag systems are used by Cook in [11] as a tool to implement computations inrule 110. Cyclic tag systems are modified from tag systems by allowing the system A range of universal CA is listed here http://uncomp.uwe.ac.uk/genaro/Complex_CA_repository.html
A Computation in a Cellular Automaton Collider Rule 110 7 to have the same action of reading a tape in the front and adding characters at itsend:
1. Cyclic tag systems have at least two letters in their alphabet ( µ > ν =
1) and its respective sequence is added.3. In all cases if the machine reads a character zero then the production rule is always null(0 → ε , where ε represents the empty word).4. There are k sequences from µ ∗ which are periodically accessed to specify the currentproduction rule when a nonzero character is taken by the system. Therefore the periodof each cycle is determinate by k . Such cycle determines a partial computation over the tape, although a halt con-dition is not specified. Let us see some samples of a cyclic tag system working with µ = k = →
11, 1 →
10 and 1 → ε . Toavoid writing a chain when there is no need to add characters, the (cid:96) k relation is justindicated. For example, the 00001 (cid:96) (cid:96) (cid:96) (cid:96) (cid:96)
10 represents the relations 00001 (cid:96) (cid:96) (cid:96) (cid:96) (cid:96)
10. Each relation indicates which exactly sequence µ is selected.Cyclic tag systems tend to growth quickly which makes it difficult to analysetheir behaviour. Morita in [43, 44] demonstrated how to implement a particular haltcondition in cyclic tag systems given an output string when the system is halting, andhow a partitioned CA can simulate any cyclic tag system, consequently computingall the recursive functions.Similar to Post’s developments with tag systems, Cook determined that for acyclic tag system with µ = k =
2, the productions 1 →
11 and 1 →
10, and startingevolution with the state 1 on the tape, it is impossible to decide if the process isterminal.
Let us see how a cyclic tag system operates in rule 110 [58]. We use a cyclic tagsystem with µ = k = →
11 and 1 →
10, starting itsevolution in state 1 on the tape. A fragments of the systems’ behaviour is shownbelow: (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) (cid:96) ... We start with the expression 1(10)*. The cyclic tag systems moves (from the rightto the left) and adds a pair of bits. As soon as the expression 1(10)* appears again,
Genaro J. Mart´ınez, Andrew Adamatzky, and Harold V. McIntosh a number of relations selected in each interval in such a manner that the expressionsgrow lineally in order of f = ( n + ) . Fig. 1.4
Schematic diagram of a cyclic tag system working in rule 110.
If we take consecutive copies of 1(10)* with their respective intervals deter-mined by the number of j productions (represented as (cid:96) ji ), we obtain the follow-ing sequence: 1 (cid:96) i (cid:96) i (cid:96) i (cid:96) i (cid:96) i (cid:96) i (cid:96) i (cid:96) i . . . . There are no states where to ‘0’ appeartogether.Further, we show how to interpret particles and their collisions to emulate a cyclictag system in rule 110. We must use trains of particles to represent data and oper-ators, their reactions, transform and deletion of data on the tape. A schematic dia-gram, where trains of particles are represented by lines, is shown in Fig. 1.4. Thediagram is explained with details in the next sections. A construction of the cyclic tag system in rule 110 can be subdivided into three parts(Fig. 1.4). First part is the left periodic part controlled by trains of 4 A particles.This part is static. It controls the production of 0’s and 1’s. The second part is thecenter determining the initial value on the tape. The third part is the right, cyclic,part which contains the data to process. It adds or removes data on the tape. A Computation in a Cellular Automaton Collider Rule 110 9
Set of particles 4 A The four trains of A particles are static but their phases change periodically. Akey point is to implement these components by defining both distances and phases,because some choices of phases or distances might induce an undesirable reactionsbetween the trains of particles. Fig. 1.5
Set of particles 4 A . Packages defined by particles A have three different phases: f
1, f A we must establish the phase of each A . Let us assignphases as follows: A (f e - A (f e - A (f e - A (f A are fixed but the phases change. Thesoliton-like collisions between the particles ¯ E occur: { e - A (f e - A (f e - A (f e - A (f e - A (f e - A (f e - A (f e - A (f e - A (f e - A (f e - A (f e - A (f } *If for every 4 A we take a phase representing the complete train, we can rename itas: { e -4 A (F )-649 e -4 A (F )-649 e -4 A (F ) } *this phase change is important to preserve good reactions coming to the left side ofthe system. Set of particles 1Ele C and 0Ele C The central part is made of the state ‘1’ written on the tape represented by a trainof four C particles. A set of particles 1Ele C represents ‘1’ and a set of particles0Ele C represents ‘0’ on the tape.The left configurations in Fig. 1.6 shows the set of particles 1Ele C . We shouldreproduce each set of particles by the phases f i
1. The phases are coded as fol-lows: C (A,f e - C (A,f e - C (A,f e - C (B,f Fig. 1.6
Set of particles 1Ele C (left) and 0Ele C (right). C are in phase (A,f
1) and the fourth particle C is in phase (B,f T -9 T -7 T . To determine the distances, we count thenumber of tiles T between particles. Similarly, we obtain the distances 9 T -5 T -7 T for the particles 0Ele C . Set of particles 0Blo ¯ E The left part stores blocks of data without transformations in trains of E and theparticles ¯ E .
10 1 2 8 8 8 10 1 2 8 8
Fig. 1.7
Set of particles 0Blo ¯ E . The set of particles 0Blo ¯ E is formed by 12 ¯ E particles as we can see in Fig. 1.7.There must be an exact phase and distance between each one of the particles, other-wise the whole system will be disturbed. Set of particles 1BloP ¯ E and 1BloS ¯ E To write ‘1’s we must use two set of particles — primary and standard .They are differences in distance between first two particles ¯ E , as shown inFig. 1.8. Both blocks produce the same set of particles 1Add ¯ E . The main reasonto use both set of particles is because the CA rule 110 evolves asymmetrically andtherefore we need a double set of particles to produce values 1 correctly. A Computation in a Cellular Automaton Collider Rule 110 11
Fig. 1.8
Set of particles 1BloP ¯ E (left) and 1BloS ¯ E (right). Set of particles SepInit E ¯ E Fig. 1.9
Set of particles SepInit E ¯ E . A leader component renamed as the set of particles SepInit E ¯ E (see Fig. 1.9) isessential to separate trains of data and to determine the incorporation of the data on the tape. Its has a small but detailed code determining which data without trans-formation would be added or erased from the tape, depending on the value that iscoming. Set of particles 1Add ¯ E and 0Add ¯ E Figure 1.10 illustrates the set of particles 1Add ¯ E and 0Add ¯ E produced by twoprevious different trains of data. A set of particles 1Add ¯ E must be generated by theset of particles 1BloP ¯ E or 1BloS ¯ E . This way, both set of particles can produce thesame element.
27 21 2727 27 27
Fig. 1.10
Set of particles 1Add Eb (left) and 0Add ¯ E (right). On the other hand, a set of particles 0Add ¯ E is generated by a set of particles0Blo ¯ E . Nevertheless, we could produce ¯ E particles modifying their first two dis-tances and preserving them without changing others particles to get a reliable reac-tion. This is possible if we want to experiment with other combinations of blocks ofdata.If a leader set of particles SepInit E ¯ E reaches a set of particles 1Ele ¯ E , it erasesthis value from the tape and adds a new data that shall be transformed. In other case,if it finds a set of particles 0Ele ¯ E , then it erases this set of particles from the tapeand also erases a set of unchanged data which comes from the right until finding anew leader set of particles. This operation represents the addition of new values fromperiodic trains of particles coming from the right. Thus a set of particles 1Add ¯ E A Computation in a Cellular Automaton Collider Rule 110 13 is transformed into 1Ele ¯ E colliding against a train of 4 A particles representinga value 1 in the tape, and the set of particles 0Add ¯ E is transformed into 0Ele ¯ E colliding against a train of 4 A particles representing a value 0 in the tape. Table 1.3
Distances between sets of particles.set of particles distance1Ele C C E E E E ¯ E ( ) -6-9-2-81Add ¯ E E Table 1.3 shows all distances (in numbers of T tiles) for every. We can code theconstruction of this cyclic tag system across phase representations in three main bigsub systems: left: . . . -217 e -4 A (F2)-649 e -4 A (F1)-649 e -4 A (F3)-649 e -4 A (F2)-649 e -4 A (F1)-649 e -4 A (F3)-216 e - center: C (A,f e - A (f right: SepInit E ¯ E (C,f E (C,f E ¯ E (C,f E (C,f E (C,f E (A,f E ¯ E (A,f E (F,f E ¯ E (A,f E (F,f E (E,f E (C,f e -SepInit E ¯ E (B,f E (F,f e -SepInit E ¯ E (B,f e -. . . . The initial conditions in rule 110 are able to generate the serial sequence of bits1110111 and a separator at the end with two particles. A desired construction isachieved in 57,400 generations and an initial configuration of 56,240 cells. Thewhole evolution space is 3,228,176,000 cells. See details [38].
The cyclic tag system starts with the value ‘1’ on the tape, see Fig. 1.4. We show aselection of snapshots of the machine working in rule 110 (see details in [38, 47]).We show different sets of particles with coloured labels on the snapshot below.Figure 1.11 shows the initial stage of the cyclic tag system with the state ‘1’ in thetape. This data is represented by the set of particles 1Ele C . The snaphshot showsa central part of the machine and a train of A particles. We can see the first leaderin the set of particles SepInit E ¯ E coming from the right periodic side. Fig. 1.11
Initial stage of cyclic tag system in rule 110.
The first reaction in Fig. 1.11 deletes the state ‘1’ on the tape. The set of particles1Ele C ) and the particles’ separator are prepared for next data to be aggregated. Ifa set of particles 0Ele C is encountered on the tape then data is not added to thetape until another separator appears. The particles ¯ E left after the first productionare invisible to the system, they do not affect any operations because they cross assolitons, without state modifications, the subsequent set of particles 4 A . A Computation in a Cellular Automaton Collider Rule 110 15
Fig. 1.12
Constructing an element 1Ele C . In Fig. 1.12 we see a set of particles 1Ele C constructed from a train of particles4 A . These particles have a very short life because quickly a separator set of parti-cles arrives. This separator erases the particles and prepares new data that would beaggregated to the tape. Fig. 1.13
Transformed data crossing the tape of values.
Figure 1.13 presents the construction of a set of particles 1Ele C . In this stage ofthe evolution, we can see how data is aggregated, based on their values, before theycross the tape. Similar reactions can be observed with the set of particles 0Ele C .Figure 1.14 shows a constructed a set of particles 0Ele C and its roles in thesystem. At the top, a set of particles 1Add ¯ E , previously produced by a standardcomponent 1BloS ¯ E , crosses a set of particles 0Ele C . A leader set of the particles A Computation in a Cellular Automaton Collider Rule 110 17
Fig. 1.14
Deleting a set of particles 0Ele C2. deletes ‘0’ from the tape and all the subsequent incoming data. There are 1BloP ¯ E ,0Blo ¯ E and 1BloS ¯ E set of particles in the illustrated sequence. The tile T is gen-erated in the process. This differences in distances between the particles determinea change of phases which will lead to erasure of particles ¯ E , instead of productionof particles C . The reaction A → ¯ E is used to delete the particles. Production rules in cyclic tag system specify that for the state ‘0’ the first elementof the chain must be erased and the other elements are conserved and no data arewritten on the tape. If the state is ‘1’ the first element of the chain is deleted and 10or 11 are aggregated depending of the k value. This behaviour is particularly visiblewhen a separator finds 0 or 1 and deletes it from the tape. If the deleted data is ‘0’,a separator does not allow the production of new data. If the deleted data is ‘1’ theseparator aggregates new elements 11 or 10, which are modified at later stages ofthe system’s development. Using this procedure, we can calculate up to the sixth ‘1’of the sequence 011 < > left: { e -4 A (F i ) } *, for 1 ≤ i ≤ center: e -1Ele C2(A,f e - A (f right: { SepInit E ¯ E ( i E ( i E ¯ E ( i E ( i E ( i E ( i } * (where1 ≤ i ≤ These periodic coding will be very useful to design and synchronise three inter-linked rings of 1D CA (cyclotrons) to make a ‘supercollider’.
In the late 1970s Fredkin and Toffoli proposed a concept of computation based onballistic interactions between quanta of information that are represented by abstractparticles [53]. The Boolean states of logical variables are represented by balls oratoms, which preserve their identity when they collide with each other. Fredkin, Tof-foli and Margolus developed a billiard-ball model of computation, with underpin-ning mechanics of elastically colliding balls and mirrors reflecting the balls’ trajec-tories. Margolus proposed a special class of CA which implements the billiard-ballmodel [24]. Margolus’ partitioned CA exhibited computational universality becausethey simulated Fredkin gates via collision of soft spheres [26, 25]. Also, we considerprevious results about circular machines designed by Arbib, Kudlek, and Rogozhinin [5, 20, 21]. Initial reports about CA collider were published in [30, 28, 29].The following functions with two input arguments u and v can be realised incollisions between two localizations: • f ( u , v ) = c , fusion (Fig. 1.15a) • f ( u , v ) = u + v , interaction and subsequent change of state (Fig. 1.15b) • f i ( u , v ) (cid:55)→ ( u , v ) identity, solitonic collision (Fig. 1.15c); • f r ( u , v ) (cid:55)→ ( v , u ) reflection, elastic collision (Fig. 1.15d); A Computation in a Cellular Automaton Collider Rule 110 19 u vf (a) u v v u f (b) u vuv (c) u vu v (d) Fig. 1.15
Schemes of ballistic collision between localizations representing logical values of theBoolean variables u and v . To represent Toffoli’s supercollider [53] in 1D CA we use the notion of an ide-alised particle p ∈ G (without energy and potential). The particle p is represented bya binary string of cell states. (a) (b) (c) Fig. 1.16
Representation of abstract particles in a 1D CA ring.
Figure 1.16 shows two typical scenarios where particles p f and p s travel in aCA cyclotron. The first scenario (Fig. 1.16a) shows two particles travelling in oppo-site directions; these particles collide one with another. Their collision site (contactpoint) is shown by a dark circle in Fig. 1.16a. The second scenario demonstratesa beam routing where a fast particle p f eventually catches up with a slow parti-cle p s at a collision site (Fig. 1.16b). If the particles collide like solitons, then thefaster particle p f simply overtakes the slower particle p s and continues its motion(Fig. 1.16c).Typically, we can find all types of particles in complex CA, including particleswith positive p + , negative p − , and neutral p displacements, and composite parti-cles assembled from elementary localizations. A sample coding and colliding parti-cles is shown in Fig. 1.17, which displays a typical collision between two particles inrule 110. As a result of the collision one particle is split into three different particles(for full details please see [35]). The previous collision positions of particles deter-mines the outcomes of the collision. Particles are represented now with orientationand name of the particle in rule 110 as follows: p + , − , G .To represent particles on a given beam routing scheme (see Fig. 1.16), we do notconsider the periodic background configuration in rule 110 because essentially this Fig. 1.17
Particle collision in rule 110. Particle p − ¯ B collides with particle p − G giving rise to threenew particles — p − F , p + D , and p + A , and preserving the p − ¯ B particle — that are generated as a resultof the collision.(a) (b) (c) Fig. 1.18
A soliton-type interaction between particles in rule 110: (a)–(b) two steps of beam rout-ing, (c) exact configuration at the time of collision. does not affect on collisions. Fig. 1.18 displays a 1D configuration where two par-ticles collide repeatedly and interact as solitons so that the identities of the particlesare preserved in the collisions. A negative particle p − F collides with and overtakesa neutral particle p − C . First cyclotron (Fig. 1.18a) presents a whole set of cells instate 1 (dark points) evolving with the periodic background. By applying a filter we A Computation in a Cellular Automaton Collider Rule 110 21 can see better these interactions (Fig. 1.18b). Typical space-time configurations ofa CA exhibiting a collision between p − F and p − C particles are shown in Fig. 1.18c. We examine beam routing based on particle-collisions. We will show how the beamrouting can be used in designs of computing based-collisions connecting cyclotrons.Figure 1.19 shows a beam routing design, connecting two of beams and then cre-ating a new beam routing diagram where edges represent a change of particles andcollisions. In such a transition, new particles emerge and collide to return to the firstbeam. The particles oscillate between these two beam routing indefinitely.
Fig. 1.19
Transition between two beam routing synchronising multiple reactions. When the firstset of collisions is done a new beam routing is defined with other set of particles, so that when thesecond set of collisions is done then first beam returns to its original state.
To understand how dynamics of a double beam differs from a conventional 1Devolution space we provide Fig. 1.22. There we can see multiple collisions betweenparticles from first beam routing and trains particles. Exactly, we have that p + A , p + A ↔ p − ¯ B , p − B , p − B changes to the set of particles derived in the second beam routing: p + A ↔ p + E , p + ¯ E . This oscillation determines two beam routing connected by a transition of colli-sions as: ( p + A , p + A ↔ p − ¯ B , p − B , p − B ) → ( p + A ↔ p + E , p + ¯ E ) , and ( p + A ↔ p + E , p + ¯ E ) → ( p + A , p + A ↔ p − ¯ B , p − B , p − B ) . We can see that a beam routing representation allows for a design of collisionsin cyclotrons. We employ the beam routing to implement the cyclic tag system in Cyclotron evolution was simulated with DDLab software, available at .2 Genaro J. Mart´ınez, Andrew Adamatzky, and Harold V. McIntosh the CA rings. A construction of the cyclic tag system in rule 110 consists of threecomponents (as was discussed in Sect. 1.4.2): • The left periodic part , controlled by trains of 4 A particles. This part is static. Itcontrols the production of 0’s and 1’s. • The centre , determining the initial value in the tape. • The right periodic part , which has the data to process, adding a leader componentwhich determines if data will be added or erased in the tape.
Left periodic part is defined by four trains of A (Fig. 1.20c), trains of A havethree phases. The key point is to implement these components defining both dis-tances and phases, because a distinct phase or a distance induces an undesirablereaction.The central part is represented by one value ‘1’ on the tape across a train of four C particles. The component 1Ele C (Fig. 1.20b) represents ‘1’ and the component0Ele C (Fig. 1.20a) represents ‘0’ on the tape. The component 0Blo ¯ E is formedby 12 ¯ E particles. The construct includes two components to represent the state ‘1’:1BloP ¯ E (Fig. 1.20f) named primary and 1BloS ¯ E (Fig. 1.20g) named standard . Aleader component SepInit E ¯ E (Fig. 1.20d) is used to separate trains of data and todetermine their incorporation into of the tape.The components 1Add ¯ E (Fig. 1.20i) and 0Add ¯ E (Fig. 1.20h) are produced bytwo previous different trains of data. The component 1Add ¯ E must be generated bya block 1BloP ¯ E or by 1BloS ¯ E . This way, both components can yield the sameelement. The component 0Add ¯ E is generated by a component 0Blo ¯ E (Fig. 1.20e).For a complete and full description of such reproduction by phases f i
1, see [38].To get a cyclic tag system emulation in rule 110 by beam routings, we will useconnections between beam routings as a finite state machine represented in Fig 1.21.Transitions between beam routings means a change of state (transition function).Initial state is represented by the component 1Ele C . A final state is not specifiedbecause it is determined by the state of the computation, i.e., a halt condition. Com-ponents 1Ele C and 0Ele C are compressed and shown as a dark circle, whichrepresents the point of collision. Both components are made of four C particles be-ing at different distances. When a leader component (SepInit E ¯ E ) is transformed,given previous binary value on the tape, it collides with p component, i.e., a p or p element. If p is ‘0’, then a cascade of collisions starts to delete all com-ponents that come with three particles successively. If p is ‘1’ then a cascade of transformations dominated by additional particles p is initiated, in order to reachthe next leader component. Here, we have more variants because pre-transformedtrain of particles is encoded into binary values that are then written on the machinetape. If a component of particles is 1BloP ¯ E or 1BloS ¯ E this means that such acomponent will be transformed to one 1Add ¯ E element. If a component of parti-cles is 0Blo ¯ E , then such a component will be transformed to 0Add ¯ E element. Atthis stage, when both components are prepared then a binary value is introducedon the tape, a 1Add ¯ E element stores a 1 (1Ele C ), and a 0Add ¯ E element storesa 0 (0Ele C ), which eventually will be deleted for the next leader component andstarts a new cycle in the cyclic tag system. In bigger spaces these components will A Computation in a Cellular Automaton Collider Rule 110 23(a) (b) (c)(d) (e) (f)(g) (h) (i)
Fig. 1.20
The whole set of beam routing codification representing train of particles, to simulatea cyclic tag system. Each global state represents every component (set of particles) described inSection 1.4.1. be represented just as a point in the evolution space: we describe this representationin the next section. p p de l e t e t r an s f o r m Fig. 1.21
Beam routing finite state machine simulating the cyclic tag system by state of cyclotronsrepresentation. A Computation in a Cellular Automaton Collider Rule 110 25
Fig. 1.22
Synchronisation of multiple collisions in rule 110 on a ring of 1,060 cells in 1,027generations, starting with 50 particles from its initial condition.
We use cyclotrons to explore large computational spaces where exact structures ofparticles are not relevant but only the interactions between the particles. There wecan represent the particles as points and trains of particles as sequences of points. A3D representation is convenient to understand the history of the evolutions, numberof particles, positions, and collisions. Fig. 1.23 shows a cyclotron evolving froma random initial configuration with 20,000 cells. Three stages are initialised in theevolution and the particles undergo successions of collisions in few first steps ofevolution. The evolution is presented in a vertical orientation rotated 90 degrees.The present state shown is a front and its projection in three dimensions unveils thehistory and the evolution. Following this representation we can design a number ofinitial conditions to reproduce periodic patterns. Figure 1.24 shows a basic flip-flop pattern. We synchronise 16 particles p F ← p B ,the basic collision takes place for two pairs of particles, a p D particle and a train of p A particles. The distance is determined by a factor of mod
14. A second reaction The simulations are done in
Discrete Dynamics Lab (DDLab, ) [59].6 Genaro J. Mart´ınez, Andrew Adamatzky, and Harold V. McIntosh is synchronised with p D ← p A to return back to the initial p F and p B particles.All 16 particles are forced in the same phase to guarantee an adequate distance,this distance is fixed in 64 copies of 14 cells (ether). Finally eight collisions arecontrolled every time simultaneously on an evolution space with 7,464 cells. A Computation in a Cellular Automaton Collider Rule 110 27
Fig. 1.23
ECA rule 110 particles traveling and colliding inside a cyclotron in a evolution spaceof 20,000 cells. A filter is selected for a better view of particles, each cyclotron initial stage in thehistory (three dimensional projection) is restarted randomly to illustrate the complex dynamics andvariety of particles and collisions.8 Genaro J. Mart´ınez, Andrew Adamatzky, and Harold V. McIntosh
Fig. 1.24
Basic flip-flop oscillator implemented in a cyclotron with 7,464 cells in 25,000 genera-tions. 16 particles p F ← p B were coded. A Computation in a Cellular Automaton Collider Rule 110 29 A cyclic tag system consists of three main components. Each stage of computationcan be represented with a cyclotron. A synchronisation of these cyclotrons injectsbeams of particles to a central main collider to obtain the collisions that will simulatea computation. The periodic representations of left and right cyclotrons are fixed.Diagram in Fig. 1.25 shows the dynamics of particles in a collider. accelerating E 's particles to constant velocity of -0.2666666accelerating A 's particles to constant velocity of 0.6666666 contact point(point of collision)periodic injection of particles left area right area Fig. 1.25
Collider diagram.
Left part
Periodic area handle beams of three trains of four p A particles, travelling fromthe left side with a constant velocity of 2 /
3. This ring has 30,640 cells, the min-imum interval between trains of particles is 649 copies of ether. Each beam of p A can have three possible phases. The sequence of phases is periodic and fixedsequentially: { e -4 A (F i ) } ∗ , for 1 ≤ i ≤ p A ( F i ) particles. Right part
Periodic area handle beams of six trains of 12 E ’s particles ( p E n , p ¯ E ), travelling Fig. 1.26
Three beams of 4 p A ( F i ) particles. Simulation is displayed in a vertical position to get abetter view of particles’ trajectories. from the right side with a constant velocity of − /
5. There are 12 particles re-lated to a perfect square with 13 , possibilities to arrange inputs into the maincollider. Interval between 12 particles is mod
14. Figure 1.27 shows the whole
A Computation in a Cellular Automaton Collider Rule 110 31
Fig. 1.27
A beam composed of six 12 p Es particles. Simulation is shown in a vertical position to geta better view of particles’ trajectories. Interval between first and last particles can be any number mod set of 72 p Es particles. The set contains leaders and separator components, andbeams of particles that introduce ‘0’s and ‘1’s on the tape. Fig. 1.28
First stage of collisions of the cyclic tag system. Solitonic interactions take place 4 p A ( F ) and two p ¯ E particles. First symbol ‘1’ on the type is deleted (center). The the first separator is readand deleted. Center
Initial state of particles starts with a ‘1’ on the type of the cyclic tag system.Fig. 1.28 shows the first stage of the collider. The system start with one ‘1’ inthe type (four vertical p Cs particles), they are static particles that wait for the firstbeam of p Es particles to arrive at the right side to delete this input and decode thenext inputs. In this process two solitons emerge, but they do not affect the systemand the first beam of 4 p A ( F ) particles without changing their states.Figure 1.29 shows how a second symbol ‘1’ is introduced in the collider. A leadercomponent is deleted and the second binary data is prepared to collide later withthe first beam of 4 p A ( F ) particles. Finally, the second ‘1’ is represented for thevertical particles, as shown at the bottom of Fig. 1.29.Figure 1.30 shows how further symbols ‘0’ and ‘1’ are introduced in the sys-tem. They are coded with p ¯ Es particles. Before the current ‘1’ is introduced with4 p A ( F ) particles, the next set of 4 p A ( F ) particles is prepared in advance. A Computation in a Cellular Automaton Collider Rule 110 33
Fig. 1.29
This snapshot shows when a ‘1’ is introduced in the type. A second beam of 12 p ¯ E particles is coming to leave just spaced four p ¯ E particles, these particles collide with one of 4 p A ( F ) particles. The result is four 4 p Cs particles at the bottom of the simulation that represent one ‘1’ inthe cyclic tag system type. Figure 1.31 shows the largest stage of the collider’s working. A second beam of4 p A ( F ) arrives. More beams of p Es particles are introduced. Figure 1.32 displaysa full cycle of beams of p A and p Es particles. All operations are performed atleast once. The next set of particles is ready to continue with the next stage of thecomputation. Fig. 1.30
This snapshot shows how a sequence of values ‘0’ and ‘1’ is precoded. You can seesequences of ‘0’s and ‘1’s, and p Es particles travelling to from the left to the right. The CA collider is a viable prototype of a collision-based computing device. Itwell compliments existing models of computing circuits based on particle colli-sions [18, 42, 15, 45, 41, 23, 60, 56]. How complex is our design? With regarding totime complexity, rule simulates Turing machine a polynomial time and any step ofrule 110 can be predicted in a polynomial time [46]. As to space complexity, left cy-clotron in the collider is made of 30,640 cells and the right cyclotron of 5,864 cells.The main collider should have 61,280 cells to implement a full set of reactions;however, it is possible to reduce the number of cells in the main collider, becausethe first train of 4 p A ( F i ) particles needs just 10,218 cells; and subsequent trains canbe prepared while initial data are processed. Thus, the simulated collider have justthousands of cells not millions.The space complexity of the implemented cyclic tagsystems has been reduced substantially [11, 58, 12]. A Computation in a Cellular Automaton Collider Rule 110 35
Fig. 1.31
This snapshot shows from another angle how binary values are introduced in the cyclictag system. We can also see how a number of values are prepared to collide with beams of 4 p A ( F i ) particles at the end of simulation. What are chances of implementing the CA collider model in physical substrates?A particle, or gliders, is a key component of the collider. The glider is a finite-state machine implementation of a propagation localisation. A solitary wave, or animpulse, propagating in a polymer chain could be a phenomenologically suitableanalog of the glider. A wide range of polymer chains, both inorganic and organic,support solitons [13, 17, 50, 9, 1, 2, 3, 52, 6, 14, 19]. We believe actin filamentscould make the most suitable substrate for implementation of a cyclic tag systemvia linked rings of CA colliders.
Fig. 1.32
This evolution displays a full cycle of beams of p A and p Es particles. In this snapshotwe can see all necessary operations in the cyclic tag system: input values, deleting block of values,particles like solitons, and the next stage of the collider. An actin filament is a double spiral helix of globular protein units. Not onlyactin is a key element of a cell skeleton, and is responsible for a cell’s motility,but actin networks is a sensorial, information processing and decision making sys-tem of cells. In [4] we proposed a model of actin filaments as two chains of one-dimensional binary-state semi-totalistic automaton arrays. We show that a rich fam-ily of travelling localisations is observed in automaton model of actin, and many ofthe localisation observed behave similarly to gliders in CA rule 110. The finite statemachine model has been further extended to a quantum cellular automata model in[48]. We have shown that quantum actin automata can perform basic operations ofBoolean logic, and implemented a binary adder. To bring more ‘physical’ meaningin our actin-computing concept we also employed the electrical properties of imi-tated actin filaments — resistance, capacitance, inductance — and found that it is
A Computation in a Cellular Automaton Collider Rule 110 37 possible to implement logical gates via interacting voltage impulses [49]; voltageimpulses in non-linear transmission wires are analogs of gliders in 1D CA. Clearly,having just actin is not enough: we must couple rings together, arrange physicalinitiation of solitons and their detection, and solve myriad of other experimentallaboratory problems. That will be a scope of further studies. • Cyclic left-side of particles in a cyclic tag system in ECA rule 110 .URL: https://youtu.be/HFJlbz7qATg • Cyclic right-side of particles in a cyclic tag system in ECA rule 110 .URL: https://youtu.be/kciEa6cF1QQ • A computation in a cellular automaton collider rule 110 .URL: https://youtu.be/i5af0tQiVd4 • Three glider guns evolving in a virtual collider in ECA rule 110 .URL: https://youtu.be/JElxQt32Odc
References
1. Adamatzky, A.:
Computing in Nonlinear Media and Automata Collectives . Institute ofPhysics Publishing, Bristol and Philadelphia, Bristol (2001)2. Adamatzky, A. (ed.):
Collision-Based Computing . Springer-Verlag London (2002)3. Adamatzky, A.: Unconventional Computing.
Human Brain Project magazine (2015)4. Adamatzky, A., Mayne, R.: Actin automata: Phenomenology and localizations. InternationalJournal of Bifurcation and Chaos. , 1550030 (2015)5. Arbib, M.A.:
Theories of Abstract Automata . Prentice-Hall Series in Automatic Computation,Michigan (1969)6. Bandyopadhyay, A., Pati, R., Sahu, S., Peper, F., Fujita, D.: Massively parallel computing onan organic molecular layer. Nature Physics. , 369–375 (2010)7. Banks, E.R.: Information and transmission in cellular automata. PhD Dissertation . Mas-sachusetts Institute of Technology, Cambridge, MA (1971)8. Berlekamp, E.R., Conway, J.H., Guy, R.K.:
Winning Ways for your Mathematical Plays . Aca-demic Press, vol. 2, chapter 25, (1982)9. Bredas, J.L., Street, G.B.: Polarons, bipolarons, and solitons in conducting polymers. Ac-counts of Chemical Research. , 309–315 (1985)10. Codd, E.F.:
Cellular Automata . Academic Press, Inc. New York and London (1968)11. Cook, M.: Universality in elementary cellular automata. Complex Systems. , 1–40(2004)12. Cook, M.: A Concrete View of Rule 110 Computation. In
The Complexity of Simple Programs (T. Neary, D. Woods, A. K. Seda, N. Murphy (eds.)), pp. 31–55 (2008)13. Davydov, A.S.: Solitons and energy transfer along protein molecules. Journal of theoreticalbiology. , 379–387 (1977)14. Davydov, A.S.:
Solitons in Molecular Systems . Springer (1990)15. Fredkin, E., Toffoli, T.: Design Principles for Achieving High-Performance Submicron Dig-ital Technologies. In A. Adamatzky (ed.),
Collision-Based Computing . (pp. 27–46) SpringerLondon (2002)8 Genaro J. Mart´ınez, Andrew Adamatzky, and Harold V. McIntosh16. Gr¨unbaum, B., Shephard, G.C.:
Tilings and Patterns . W. H. Freeman, New York (1986)17. Heeger, A.J., Kivelson, S., Schrieffer, J.R., Su, W.P.: Solitons in conducting polymers. Re-views of Modern Physics. , 781 (1988)18. Hey, A.J.G. (ed):
Feynman and computation: exploring the limits of computers . PerseusBooks (1998)19. Jakubowski, M.H., Steiglitz, K., Squier, R.: Computing with Solitons: A Review and Prospec-tus. Multiple-Valued Logic. , 439–462 (2001)20. Kudlek, M., Rogozhin, Y.: New Small Universal Post Machine. Lecture Notes in ComputerScience. , 217–227 (2001).21. Kudlek, M., Rogozhin, Y.: Small Universal Circular Post Machine. Computer Science Journalof Moldova. , 34–52 (2001)22. Lindgren, K., Nordahl, M.G.: Universal computation in simple one-dimensional cellular au-tomata. Complex Systems. , 229–318 (1990)23. Lu, Y., Sato, Y., Amari, S.: Traveling bumps and their collisions in a two-dimensional neuralfield. Neural Computation. , 1248–1260 (2011)24. Margolus, N.H.: Physics-like models of computation. Physica D. , 81–95 (1984)25. Margolus, N.H.: Crystalline Computation, In: A.J.G. Hey (ed.) Feynman and computation:exploring the limits of computers , pp. 267–305, Perseus Books (1998)26. Margolus, N.H.: Universal cellular automata based on the collisions of soft spheres. In A.Adamatzky (ed.),
Collision-Based Computing , pp. 107–134. Springer-Verlag London (2002)27. Mart´ınez, G.J., Adamatzky, A., Chen, F., Chua, L.: On soliton collisions between localizationsin complex elementary cellular automata: rules 54 and 110 and beyond. Complex Systems. , 117–142 (2012)28. Mart´ınez, G.J., Adamatzky, A., McIntosh, H.V.: Computing on Rings. In H. Zenil (ed.),
AComputable Universe: Understanding and Exploring Nature as Computation , pp. 283–302,World Scientific Press (2012)29. Mart´ınez, G.J., Adamatzky, A., McIntosh, H.V.: Computing with virtual cellular automatacollider. IEEE Proceedings of Science and Information Conference, pp. 62–68, London, UK(2015) DOI: 10.1109/SAI.2015.7237127.30. Mart´ınez, G.J., Adamatzky, A., Stephens, C.R., Hoeflich, A.: Cellular automaton supercollid-ers. Int. J. Mod. Phys. C. , 419–439 (2011)31. McIntosh, H.V.: Linear cellular automata via de Bruijn diagrams, http://delta.cs.cinvestav.mx/~mcintosh/cellularautomata/Papers_files/debruijn.pdf . Cited 10August 1991.32. McIntosh, H.V.: Rule 110 as it relates to the presence of gliders, http://delta.cs.cinvestav.mx/~mcintosh/comun/RULE110W/RULE110.html . Cited 14 May 2001.33. McIntosh, H.V.: A concordance for rule 110, http://delta.cs.cinvestav.mx/~mcintosh/cellularautomata/Papers_files/ccord.pdf . Cited 14 May 2002.34. McIntosh, H.V.:
One Dimensional Cellular Automata . Luniver Press, Bristol (2009)35. Mart´ınez, G.J., McIntosh, H.V.: ATLAS: Collisions of gliders like phases of etherin Rule 110, http://uncomp.uwe.ac.uk/genaro/Papers/Papers_on_CA_files/ATLAS/bookcollisions.html . Cited 14 August 2001.36. Mart´ınez, G.J., McIntosh, H.V., Seck, J.C.S.T.: Gliders in Rule 110. Int. J. Unconv. Comput. , 1–49 (2006)37. Mart´ınez, G.J., McIntosh, H.V., Mora, J.C.S.T., Vergara, S.V.C.: Determining a regular lan-guage by glider-based structures called phases fi 1 in Rule 110, J. Cellular Automata. ,231–270 (2008)38. Mart´ınez, G.J., McIntosh, H.V., Mora, J.C.S.T., Vergara, S.V.C.: Reproducing the cyclic tagsystem developed by Matthew Cook with rule 110 using the phases f
1. J. Cellular Automata. , 121–161 (2011)39. Mart´ınez, G.J., McIntosh, H.V., Mora, J.C.S.T., Vergara, S.V.C.: Rule 110 objects and othercollision-based constructions. J. Cellular Automata. , 219–242 (2007)40. Mart´ınez, G.J., Seck-Tuoh-Mora, J.C., Zenil, H.: Computation and Universality: Class IVversus Class III Cellular Automata. J. Cellular Automata. , 393–430 (2013) A Computation in a Cellular Automaton Collider Rule 110 3941. Mills, J. W.: The nature of the Extended Analog Computer. Physica D. , 1235–1256 (2008)42. Minsky, M.:
Computation: Finite and Infinite Machines . Prentice Hall (1967)43. Morita, K.: Simple universal one-dimensional reversible cellular automata. J. Cellular Au-tomata. , 159–166 (2007)44. Morita, K.: Simulating reversible Turing machines and cyclic tag systems by one-dimensionalreversible cellular automata. Theoretical Computer Science. , 3856–3865 (2011)45. Margolus, N. Toffoli, T., Vichniac, G.: Cellular-Automata Supercomputers for Fluid Dynam-ics Modeling. Physical Review Letters. , 1694–1696 (1986)46. Neary, T., Woods, D.: P-completeness of cellular automaton Rule 110. Lecture Notes in Com-puter Science. , 132–143 (2006)47. Ninagawa, S., Mart´ınez, G.J.: Compression-Based Analysis of Cyclic Tag System Emulatedby Rule 110. J. Cellular Automata. , 23–35 (2014)48. Siccardi, S., Adamatzky, A.: Actin quantum automata: Communication and computation inmolecular networks. Nano Communication Networks. , 15-27 (2015)49. Siccardi, S., Tuszynski, J. A., Adamatzky, A.: Boolean gates on actin filaments. Physics Let-ters A. , 88–97 (2016)50. Scott, A. C.: Dynamics of Davydov solitons. Physical Review A. , 578 (1982)51. Smith III, A.R.: Simple computation-universal cellular spaces. J. of the Assoc. for ComputingMachinery. , 339–353 (1971)52. Toffoli, T.: Non-Conventional Computers. In: J. Webster (ed.), Encyclopedia of Electrical andElectronics Engineering . , Wiley & Sons, 455–471 (1998)53. Toffoli, T.: Symbol Super Colliders. In: A. Adamatzky (ed.), Collision-Based Computing , pp.1–23, Springer-Verlag London (2002)54. von Neumann, J.:
Theory of Self-reproducing Automata (edited and completed by A. W.Burks), University of Illinois Press, Urbana and London (1966)55. Voorhees, B.H.:
Computational analysis of one-dimensional cellular automata . World Scien-tific Series on Nonlinear Science, Series A, Vol. 15. Singapore (1996)56. Wolfram, S.: Cellular Automata Supercomputing. In: R.B. Wilhelmson (ed.)
High SpeedComputing: Scientific Applications and Algorithm Design . pp. 40–48, University of IllinoisPress (1988)57. Wolfram, S.:
Cellular Automata and Complexity . Addison-Wesley Publishing Company, Col-orado (1994)58. Wolfram, S.:
A New Kind of Science . Wolfram Media, Inc., Champaign, Illinois (2002)59. Wuensche, A.:
Exploring Discrete Dynamics . Luniver Press, Bristol (2011)60. Zenil, H. (Ed.):