The GraftalLace Cellular Automaton
TThe GraftalLaceCellular Automaton
Kaszanyitzky, Andr´[email protected]
Abstract.
We introduce our
GraftalLace Cellular Automaton in short GLCAwhich is a new one-dimensional cellular automaton on the regular square lattice.It makes a monochromatic infinite directed graph which evolve deterministicallyrow by row, by a defined rule and a single initial row of arc patterns. Arcs overlapeach other and partly influence the states of the next cells in another arrangement.The data structure of GLCA is a number triangle or number trapezoid consists ofoctal digits formed by bit operations. We show examples of GLCA patterns whichrepresent all four classes of Wolfram’s classification. Some of the patterns belongsto
Sierpi´nski-like fractals as Pascal Triangle modulo 2 and modulo 3 patternswhich can be realized by GLCA in many different ways. We show these fractals,observe the reversibility of the rules and give ideas to extend our automaton byusing more colours and other representations to find new interesting patterns.
I invented GLCA in 1991 inspired by the articles of
Scientific American mag-azine about elementary cellular automata of
Stephen Wolfram [W84,W02] andgraftal trees otherwise recursive fractal plants of
Aristid Lindenmayer [D86,PL90].Graftal is a combination of two words: graph + fractal.GLCA connects root patterns with branch patterns through a junction (other-wise a grid point of the square lattice) by a defined rule. Both patterns are tripletsof arcs formed by the incoming and the outgoing arcs of a junction from and intothe same horizontal position with the left and right neighbour cells. Usually weget a porous, lace-like chaotic pattern. For illustration see
Figure 1 . GLCA operating with a chain of deterministic finite automata (DFA) and can berepresented as a 4-tuple (cid:104) Σ , φ, B, c (cid:105) , where Σ is an octal alphabet (cell states), φ is the local transition function, B is a function to define the cell neighbourhoodwith bit operations and c is the initial configuration. GLCA evolves on an arrayof cells ( s l ) where l ∈ N and each cell takes a state from the octal alphabet. This1 a r X i v : . [ n li n . C G ] M a y rray represents a global configuration c , such that c ∈ Σ ∗ . The set of finiteconfigurations of length l is represented as Σ l . Cell states in a configuration c ( j ),where j ∈ Z , are updated by the next configuration c ( j + 1) simultaneously bythe local transition function ( φ ) otherwise the rule ( R ). This rule tells how totransform all possible octal digits into another octal digit.In the next subsections we show two bit operating functions: B p ( n ) and B q ( m )to define the neighbourhood of the cells because transition function in GLCA unlikeother cellular automata only partly influences the states of the next cells (3 cells,one at the same horizontal position with the left and right neighbour cells) andnew states come from another arrangement of the new bit triplets.The array increases maximum 2 cells in each time steps ( j ). Evolution ofGLCA is represented by a sequence of finite configurations ( c l ) given by the globalmapping, Φ : Σ l → Σ l +2 . Figure 1.
First 40 rows of Rule 51254550 with gridpoints, from a singlevertical root. It was the first interesting GLCA pattern I have found in 1991. (cid:0)(cid:0)(cid:64)(cid:64) (cid:0)(cid:64) (cid:0)(cid:64) (cid:0)(cid:64)(cid:64) (cid:0)(cid:64) (cid:0)(cid:64) (cid:0)(cid:0)(cid:64) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113)(cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113)(cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) (cid:113) Figure 2.
A rule as an octal number R = 51254550 means how to connectall the root patterns (upper triplets) with branch patterns (lower tripletsin reverse order binary code) through the junction (centre point). Our cell space is the regular simple upright square lattice. All grid points are cellscalled the junctions . We use the Cartesian coordinate system with upside-down2-coordinates. We only allow connections between a cell and its closest 3 neigh-bour cells in a positive (nonzero) vertical direction with arcs and we denote theconnection between two cells with a binary digit (1=connected, 0=independent).It means only vertical and diagonal arcs are allowed and the maximum numberof the connecting arcs in one junction is six (3 indegrees and 3 outdegrees). Wecall the possible incoming arrangement of arcs into a junction: the root pattern .We call the possible outgoing arrangement of arcs from a junction: the branchpattern . We draw only the root pattern (states of the cells) in each time step andupload the next row with bits of the branches by the rule. Branches automaticallybecome roots in another arrangement in the next time step.Both patterns form binary triplets which have 8 possible variants denoted by anoctal digit therefore we use the octal alphabet : Σ = { , , , , , , , } . The state of a cell ( s ) specified by its incoming arc triplet, the root pattern. By choosing aneight-digits long octal number ( R ) we get a rule for our GLCA which tells howto combine the potential root patterns with branch patterns. This rule gives the local transition function of GLCA: φ ( s ). Root patterns are denoted by the placevalues of the rule, their connecting branch patterns are denoted by the digits ofthe rule. See mini trees on Figure 2 and more details on
Figure 5 .For practical reasons we denote the branch patterns with a reverse order binarynumber because in the next time step (next row of the evolving pattern) brancharcs become root arcs in another arrangement where every arc belongs to differentjunctions in a reverse order. Both patterns overlap each other.
Figure 3 showsthe overlapping patterns and the potential adjacency of neighbour cells. (cid:0)(cid:0)(cid:0) (cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0) (cid:0)(cid:0)(cid:0)(cid:0)(cid:0)(cid:0) (cid:0)(cid:0)(cid:0)(cid:64)(cid:64)(cid:64) (cid:64)(cid:64)(cid:64)(cid:64)(cid:64)(cid:64) (cid:64)(cid:64)(cid:64)(cid:64)(cid:64)(cid:64) (cid:64)(cid:64)(cid:64) (cid:107) (cid:107) (cid:107) (cid:107) (cid:107)(cid:107) (cid:107) (cid:107)(cid:107) (cid:107) (cid:107) (cid:107) (cid:107)
X Y ZS
Figure 3.
Overlapping roots and branches. We show 3 cellsin the middle row (X,Y,Z) with all of their possible connections.Their branches make a new root pattern by the incoming arcs of cell S.X Y Z x x x y y y z z z Figure 4.
Data representation of overlapping branch patternsfrom 3 junctions (X,Y,Z above) into 5 next junctions (below).Binary digits in a new combination represent a new root pattern: S = x y z .3he rule defines the corresponding branch pattern for any potential root pat-terns otherwise for any potential states of the cells: s i,j → φ ( s i,j ) which means3 possible outgoing connecting arcs from the junction. These arcs form an octaldigit as a reverse order binary triplet by the highest bit: ( v i,j → v i +1 ,j +1 ), themiddle bit: ( v i,j → v i,j +1 ) and the lowest bit: ( v i,j → v i − ,j +1 ) where v is a cellotherwise a grid point (vertex). The horizontal position of the vertex in a rowdenoted by i , its vertical position otherwise the actual time step is denoted by j where i, j ∈ Z .One branch pattern (outgoing triplet of arcs from a junction) partly influencesthe states of its 3 different neighbour cells in the next row by changing theircorresponding bits. The states of the cells come from their root pattern as theirincoming connecting arcs from 3 different cells into a junction by the highest bit:( v i − ,j → v i,j +1 ), the middle bit: ( v i,j → v i,j +1 ) and the lowest bit: ( v i +1 ,j → v i,j +1 ).Our rule is assigning all possible s values into not necessarily different φ ( s )values. The total number of the possible rules are 8 =16777216. We avoid growingbranches from nothing therefore the last digit of the rule is always equal to zero.The number of the remaining rules is 8 =2097152. In this section we show how the local transition function creates the states of thenew cells in the next time step automatically (1). We define a new bit operatingfunction B p ( n ) which gives back the value of the 2 p component of an octal digit n . For example: B (6) = 4 , B (6) = 2 , B (6) = 0. φ : s i,j +1 = (cid:88) p =0 B p ( φ ( s i +1 − p,j )) (1)Let’s consider another bit operating function B q ( m ) = b which means let the q th bit of the octal number m is equal to bit b . For example: if m = 0 then B ( m ) = 1 means m = 4, and after that B ( m ) = 1 means m = 5. Now we canshow how the local transition function creates the branches (2) at the same timewith root patterns. It is only another grouping of the arcs.The following branches partly influence the states of 3 different cells in thenext row: s i,j → φ ( s i,j ) = B ( s i +1 ,j +1 ) = B ( φ ( s i,j )) B ( s i,j +1 ) = B ( φ ( s i,j )) B ( s i − ,j +1 ) = B ( φ ( s i,j )) (2)See Figure 4 for data representation of a new root pattern (new state of thecell S below cell Y) made by combined bits of different branch patterns. Branch4atterns with reverse order bits: X → x x x , Y → y y y , Z → z z z automat-ically make a new root pattern in the right order: S = x y z . Figure 5.
Rule 51254550 , 200 rows. Figure 6.
Complex pattern of GLCA, Rule 71055670 , 200 rows. We can find all the pattern groups of Wolfram’s classification (Class I-IV) amongGLCA patterns otherwise the evolution of the patterns leads to homogenous, reg-ular, chaotic and complex patterns. See
Figure 5 and .We show how can we realize Pascal triangle modulo
Figure 7 .The
Sierpi´nski triangle (Pascal triangle modulo 2) pattern can be realized inmany ways. For example by applying an XOR binary operation or an iterated5 igure 7.
Rule 00520520 of GLCA = Pascal triangle modulo 3.162 rows of a nested pattern = 4th approximation (2 · n rows of arcs).function system (IFS) rule onto a binary square matrix. We get the same resultwith Wolfram’s elementary cellular automaton [WE]. His simple rules 60, 102, 90and 126 also give this pattern on different ways.GLCA also gives other possibilities to realize this fractal pattern. The simplestone, Rule 00050550 can be drawn from any single root arc. The rule means drawtwo vertical branch arcs from single arcs and do not draw in other cases. See Figure 8 . Rule 00020520 , 06523520 and 00720520 also make this fractal inanother way. Figure 8.
Rule 00050550 of GLCA = Pascal triangle modulo 2.33 rows of a nested pattern = 5th approximation (1 + 2 n rows of arcs).We can realize Pascal triangle modulo 3 pattern in many different ways also.As an IFS fractal [W02], by recursive curves otherwise by Hamiltonian paths orHamiltonian cycles [K17a,K17b]. With Wolfram’s automaton we have to use morecolours [W84,W02] (3 colours, totalistic rule, code 420) unlike my monochromaticGLCA pattern on
Figure 7 . 6
Searching for reversible rules
A reversible cellular automaton is a system that is deterministic in both directionsin terms of time. It is also called invertible cellular automaton. In GLCA it meansif we change the direction of all arcs of the mini trees into reverse we can continuethe drawing at the other side of a root pattern. Most of the cases these directionsbelongs to different rule numbers. For reversible rules we have to find bijectivepairs with the same rule number.In reversible rules we have to avoid growing branches from nothing therefore thelast digit of the rule is always equal to zero. We have to use assignments amongstroot patterns and branch patterns with one-to-one correspondence. We have 7different patterns so the maximum number of these unambigous assignments areequal to the number of the permutations of our patterns: 7! = 5040.By leaving odd numbers of digits at their place-values in the octal rule num-ber and changing the remaining digits pairwise by mutuality of the number ofthe place value and the correlating digit we get the following sum of binomials: (cid:0) (cid:1) + (cid:0) (cid:1) +3 (cid:0) (cid:1) +15 (cid:0) (cid:1) . In this case the rule number does not depend on the direc-tion of the mini trees (assignments) therefore we get 232 different reversible rules.This is the number of the self-inverse permutations on 7 letters, also known asinvolutions [OEIS]. For example Rule 67234510 is a reversible one.In the remaining cases we get a different rule number by changing the directionof the drawing. We get the correlating rule pair by replacing the digit valueswith the place-values of the rule number for example: Rule 35724160 and Rule51637420 are correlating pairs. By using the same 3 arcs long root and branch patterns and bichromatic arcs (2drawing colours and 1 background colour) the triplets can be described as 3-digitlong numbers in ternary numeral system. In this case we combine 3 root patternswith also 27 branch patterns and we have 27 = 3 different rules. We canrepresent these numbers with 0 to 9 and A to Q symbols (as digits of numeralsystem 27). In this case the rule is a 27-digit long number consisting of thesesymbols. See Figure 9 .We recommend Wolfram’s method the totalistic rules to define the assignmentsin an easier way. Instead of defining branch patterns for every possible root patternit is enough to assign branch patterns to groups of root patterns as hues or densitiesof arcs. These hues or densities are equal to the sum of the digits of a root pattern.For example in monochromatic GLCA (1 drawing and 1 background colour) wehave binary triplets as root patterns. The sum of the digits is between 0 and 3therefore it is enough to define 4 assignings instead of 8. By using bichromatic arcs(2 drawing and 1 background colour) we have ternary triplets as root patterns.The sum of the digits is between 0 and 6 therefore it is enough to define 7 assigningsinstead of 27. 7 igure 9.
Rule
HP D
DGH K M HQL C Complex pattern in bichromatic version of GLCA.300 rows, root pattern is a single black vertical arc.8e can imagine GLCA on a fixed width space or on a cylindric grid also.We can colour and draw only the junctions instead of the arcs. It is a numbertriangle (from a single root pattern) or a number trapezoid (from a single row ofroot patterns). We have to use 8 colours to show the root patterns (junctions asdata containers contain these octal values). Rule 51254550 on Figure 1 and
Fig-ure 5 makes the following number triangle of octal digits: 2 , , , , , , ... etc.The number triangle constructed as follows: for example root patterns 7 , , , possible root patterns and the same 512 differentbranch patterns. It’s worth to use a grouping of arcs to define the rules in aneasy way. By using totalistic rules we have to summarize the number of arcs inan elementary pattern. In this case a pattern consists of 0 to 9 arcs therefore atotalistic rule contains 10 numbers between 0 and 511. These numbers symbolize abranch pattern for each density or hue of arcs. Beyond the natural monochromaticrepresentation we can visualize every layer as a 2D animation as patterns changein time steps like a stroboscope. In this case it’s worth to represent the colouredjunctions as a square tessellation instead of the arcs. It could be a closer relativeof Conway’s Game of Life . We have introduced our GraftalLace Cellular Automaton which makes a one-dimensional infinite monochromatic digraph otherwise an octal number triangleor number trapezoid by partly influences the states of the neighbour cells with bitoperations. We have shown new ways to make known symmetric fractal patternsand unknown complex patterns. The monochromatic GLCA has 8 possible rules.We have chosen 8 rules in which none of the branches grow from nothing. We havefound 7! unambigous rules in which 232 are reversible. We have shown possibilitiesto represent and extend our automaton in different ways. The 2D version of GLCAcan be represented by a 3D graph in cubic space or as a 2D animated tessellationformed by the coloured junctions changing in time steps. It could be a closerrelative of Conway’s Game of Life . Beyond cryptographic utilization, the physical,chemical and biological connections might also be interesting.9 eferences. [W84] Wolfram, S.:
Computer Software in Science and Mathematics , ScientificAmerican, Vol. 251, Issue 3, September 1984.[W02] Wolfram, S.:
A New Kind of Science , Wolfram Media Inc., 2002[D86] Dewdney, A. K.:
Computer Recreations — of fractal mountains, graftalplants and other computer graphics at Pixar , Scientific American, Dec. 1986[PL90] Prusinkiewicz, P. and Lindenmayer, A.:
The algorithmic beauty of plants ,Springer, 1990.[WE]
Wolfram MathWorld / Elementary Cellular Automaton , http://mathworld.wolfram.com/ElementaryCellularAutomaton.html [K17a] Kaszanyitzky, A.: The generalized Sierpi´nski Arrowhead Curve , 2017 https://arxiv.org/abs/1710.08480 [K17b] Kaszanyitzky, A.:
Triangular fractal approximating graphs and their cov-ering paths and cycles , 2017 https://arxiv.org/abs/1710.09475 [OEIS] Sloane, N.J.A.:
The On-line Encyclopedia of Integer Sequences , http://oeis.org/A000085http://oeis.org/A000085