Skip to main content
Log in

A class of discrete dynamical systems with properties of both cellular automata and L-systems

  • Published:
Natural Computing Aims and scope Submit manuscript

A Correction to this article was published on 19 September 2020

This article has been updated

Abstract

We introduce and explore a type of discrete dynamic system inheriting some properties of both cellular automata (CA) and L-systems. Originally suggested by Jean Della Dora, and thus called DEM-systems after him and the two current authors, these systems can have the structural flexibility of an L-system as well as algebraic properties of CA. They are defined as sequences on a one-dimensional loop with rules governing dynamics in which new sites can be created, depending on the states of a neighbourhood of sites, and complex behaviour can be generated. Although the definition of DEM-systems is quite broad, we define some subclasses, for which more complete results can be obtained. For example, we define an additive subclass, for which algebraic results on asymptotic growth are possible, and an elementary class of particularly simple rules, for which nevertheless impressive complexity is achievable. Unlike for CA, finite initial sequences can produce positive spatial entropy over time. However, even in cases where the entropy is zero, considerable complexity is possible, especially when the sequence length grows to infinity, and we demonstrate and study behaviours of DEM-systems including fragmentation of sequences, self-reproducing patterns, self-similar but irregular patterns, patterns that not only produce new sites but produce producers of new sites, and sequences whose growth rate is sublinear, linear, quadratic, cubic, or exponential. The most complex behaviour from small finite initial conditions and the simplest class of rules appear to have positive entropy, a suggestion for which we have so far only stong numerical evidence, though we present a proof for these ‘elementary’ DEM-systems that entropy cannot reach the theoretical maximum of 1.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14

Similar content being viewed by others

Change history

  • 19 September 2020

    In the pdf version of the original publication, in the proof of Theorem 8 (second column of p. 632), the <Emphasis Type="Italic">T</Emphasis> matrices appeared incorrectly. The correct values are given here.

References

  • Arcuri A, Lanchier N (2017) Stochastic spatial model for the division of labor in social insects. Math Models Methods Appl Sci 27:45–73

    Article  MathSciNet  Google Scholar 

  • Baetens JM, De Baets B (2010) Phenomenological study of irregular cellular automata based on Lyapunov exponents and Jacobians. Chaos 20:033112

    Article  MathSciNet  Google Scholar 

  • Bagnoli F, Rechtman R, Ruffo S (1992) Damage spreading and Lyapunov exponents in cellular automata. Phys Lett A 172:34–38

    Article  Google Scholar 

  • Berman A, Plemmons RJ (1994) Nonnegative matrices in the mathematical sciences. SIAM, Philadelphia

    Book  Google Scholar 

  • Bohun CS, Carruthers SJ, Edwards R, Illner R (2003) Generic emergence of cognitive behaviour in self-generating neural networks. Nonlinear Dyn Syst Theory 3:43–63

    MathSciNet  MATH  Google Scholar 

  • Camarinha-Matos LM, Afsarmanesh H (2004) Emerging behavior in complex collaborative networks. In: Camarinha-Matos LM, Afsarmanesh H (eds) Collaborative networked organizations. Springer, Berlin, pp 229–236

    Chapter  Google Scholar 

  • Dennunzio A (2012) From one-dimensional to two-dimensional cellular automata. Fundam Inform 115:87–105

    Article  MathSciNet  Google Scholar 

  • Dennunzio A, Di Lena P, Formenti E, Margara L (2013) Periodic orbits and dynamical complexity in cellular automata. Fundam Inform 126:183–199

    Article  MathSciNet  Google Scholar 

  • Dorogovtsev SN, Goltsev AV, Mendes JFF (2008) Critical phenomena in complex networks. Rev Mod Phys 80:1275–1335

    Article  Google Scholar 

  • Dorogovtsev SN, Mendes JFF (2003) Evolution of networks. Oxford University Press, Oxford

    Book  Google Scholar 

  • Edwards R, Maignan A (2014) Complex self-reproducing systems. In: Sanayei A, Zelinka I, Rossler O (eds) ISCS 2013: interdisciplinary symposium on complex systems. emergence, complexity and computation. Springer, Berlin, pp 65–76

  • Edwards R, Maignan A (2016) DEM-systems: a new type of adaptive system. In: Exploratory papers of automata 2016, 22nd international workshop on cellular autmomata and discrete complex systems, Zurich, June 2016

  • Hall ME, Mohtaram NK, Willerth SM, Edwards R (2017) Modeling the behavior of human induced pluripotent stem cells seeded on melt electrospun scaffolds. J Biomed Eng 11:38

    Google Scholar 

  • Mainzer K, Chua L (2012) The universe as automaton. Springer, Berlin

    Book  Google Scholar 

  • Martin O, Odlyzko AM, Wolfram S (1984) Algebraic properties of cellular automata. Commun Math Phys 93:219–258

    Article  MathSciNet  Google Scholar 

  • Prusinkiewicz P, Lindenmayer A (1996) The algorithmic beauty of plants. Springer, Berlin

    MATH  Google Scholar 

  • Samaya H, Pestov I, Schmidt J, Bush BJ, Wong C, Yamanoi J, Gross T (2013) Modeling complex systems with adaptive networks. Comput Math Appl 65:1645–1664

    Article  MathSciNet  Google Scholar 

  • Spicher A, Michel O, Giavitto JL (2011) Interaction-based simulations for integrative spatial systems biology. In: Dubitzky W, Southgate J, Fuss H (eds) Understanding the dynamics of biological systems. Springer, Berlin, pp 195–231

    Chapter  Google Scholar 

  • Spratt ER (1911) Some observations on the life cycle of Anabaena Cycadeae. Ann Bot 25:369–379

    Article  Google Scholar 

  • Stauffer A, Sipper M (1998) On the relationship between cellular automata and L-systems: the self-replication case. Phys D 116:71–80

    Article  MathSciNet  Google Scholar 

  • Sutner K (1990) Classifying circular cellular automata. Phys D 45:386–395

    Article  MathSciNet  Google Scholar 

  • Sutner K (2009) Classification of cellular automata. In: Meyers RA (ed) Encyclopedia of complexity and system science. Springer, Berlin, pp 755–768

    Chapter  Google Scholar 

  • Wolfram S (1984) Computation theory of cellular automata. Commun Math Phys 96:15–57

    Article  MathSciNet  Google Scholar 

  • Wolfram S (1984) Universality and complexity in cellular automata. Phys D 10:1–35

    Article  MathSciNet  Google Scholar 

  • Wolfram S (1984) Cellular automata as models of complexity. Nature 311:419–424

    Article  Google Scholar 

  • Wolfram S (2002) A new kind of science. Wolfram Media, Champaign

    MATH  Google Scholar 

Download references

Funding

Funding was provided to RE by the Natural Sciences and Engineering Research Council of Canada (Grant No. RGPIN-2017-04042).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Roderick Edwards.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Appendix

Appendix

1.1 Proof of boundedness of the set of fragments for Example 18

We claim that any given fragment for the system \(n=3\), \((\alpha , \beta )=(1,1)\) (or equivalently, 01121220-11) gives birth to only a finite number of fragments in its entire future history.

We first define a coding of a fragment as the sequence of lengths of blocks of 2’s and 1’s in the fragment, from left to right. Thus, for example, the fragment

$$\begin{aligned} 21122221212111222122=2^11^22^41^12^11^12^11^32^31^12^2 \end{aligned}$$

has coding \(\underline{1}2\underline{4}1\underline{1}1\underline{1}3\underline{3}1\underline{2}\). Note that the odd numbered places in the representation correspond to blocks of 2’s, while even numbered places correspond to blocks of 1’s. For visual assistance, we underline the odd places, that is the lengths of blocks of 2’s. The length of a representation must clearly be odd.

Fragments are separated by separators, which consist of blocks of 1’s of length at least 4, and these remain forever and do not shrink in length. We are concerned only with the fragments here, but we can represent the separators on either end as boundary values, using the symbol \(\infty\) (appropriate because if k additional 1’s merge with the separator, we can say \(\infty +k=\infty\)). Then the fragment above can be represented with the bounding separators as \(\infty \underline{1}2\underline{4}1\underline{1}1\underline{1}3\underline{3}1\underline{2}\infty\). If we number the separators on the ends, then the left separator has index 0, which is even. Note that the possible values of a coding are \(1,2,3,\infty\) in even places, and \(\underline{1},\underline{2},\underline{3},\underline{4}^+\) in odd places, where \(\underline{4}^+\) is used to represent any integer \(b_i\ge 4\).

If a is a fragment, we denote the coding operator by \(\kappa\), so \(b=\kappa (a)\) is the coding of a.

The dynamics, \(\phi _o\), on fragments, \(a=a_1\ldots a_n\), can be represented by \(\xi\) on the coding of fragments, such that if \(\kappa (a)=b=b_1 \ldots b_m\), then \(\xi (b)=\kappa (\phi _o(a))\), or, equivalently, \(\xi =\kappa \circ \phi _o\circ \kappa ^{-1}\). It is easy to show, by checking all cases, that \(\xi\) can be defined in two steps, \(\xi =\zeta _2\circ \zeta _1\), by the following set of rules:

  • if \(b_i = 1\) then \(\zeta _1(b_i)=010\);

  • if \(b_i = 2\) then \(\zeta _1(b_i)=2\);

  • if \(b_{2j} = 3\) then \(\zeta _1(b_{2j})=\infty\);

  • if \(b_{2j+1} = 3\) then \(\zeta _1(b_{2j+1})=121\);

  • if \(b_{2j+1} = 4^+\) then \(\zeta _1(b_{2j+1})=1\infty 1\).

Let the result of the first step be \(\zeta _1(b)=c=c_1\ldots c_p\). Then \(\zeta _2(c)\) is defined so that

  • all non-zero \(c_i\) without adjacent 0 remain the same;

  • all pairs of consecutive 0’s are removed;

  • if \(c_{i-1}\ne 0, c_i=0, c_{i+1}\ne 0\), then these three values are replaced by \(c_{i-1}+c_{i+1}\), and this is applied iteratively until no 0’s remain. Here we allow merging with separators, so if \(c_1=0, c_2\ne 0\), we have \(c_0=\infty \ne 0\) so these three are replaced by \(\infty\).

Thus, using the example above,

$$\begin{aligned} b=\underline{1}2\underline{4}1\underline{1}1\underline{1}3\underline{3}1\underline{2}, \end{aligned}$$

we find

$$\begin{aligned} c=\zeta _1(b)=\underline{0}1\underline{0}2\underline{1}\infty \underline{1}0\underline{1}0\underline{0}1\underline{0}0\underline{1}0\underline{0}1\underline{0}\infty \underline{1}2\underline{1}0\underline{1}0\underline{2} \end{aligned}$$

and

$$\begin{aligned} \xi (b)=\zeta _2(c)= \underline{1}\infty \underline{2}1\underline{1}\infty \underline{1}2\underline{4}. \end{aligned}$$

Thus, the fragment has split into three shorter fragments. It can be verified that \(\kappa (\phi _o(a))\) produces the same result:

$$\begin{aligned} \phi _o(a)=211112212111112112222=2^11^42^21^12^11^52^11^22^4 \end{aligned}$$

and

$$\begin{aligned} \kappa (\phi _o(a))=\underline{1}\infty \underline{2}1\underline{1}\infty \underline{1}2\underline{4}. \end{aligned}$$

We prove that the future evolution of a fragment involves only a finite number of fragments by bounding the length of the evolution of its coding. In particular, we show that in a maximum of three steps, every coding must shrink in length, or split into fragment codings whose maximum length is less than the length of the initial coding, with the exception of the coding \((\underline{2}2)^k\underline{2}\) for any \(k\ge 0\), which is a fixed point of \(\xi\).

Let |b| denote the maximum length of a fragment coding in b, i.e., the longest string of digits between \(\infty\) symbols, which code separators. Thus \(|\underline{1}2\underline{1}\infty \underline{3}|=3\).

Note that a sequence of consecutive 1’s in the coding leads at the next step to the loss of two digits, as a result of the merging on either end. A \(\underline{3}\) at an odd location in the coding leads to the addition of two digits. A 3 in an even location or a \(\underline{4}^+\) in an odd location leads to a splitting, and thus usually causes a decrease in maximum length of a fragment coding. Exceptions are when \(\underline{4}^+\) occurs at the end of a coding, in which case no change to the maximum length of a fragment coding occurs, or when a 3 in an even location occurs adjacent to a \(\underline{1}\) that is itself next to the end of the coding, in which case there is a net loss of only two digits in the maximum length of the fragment coding (the loss attributable to the 1 alone). Note, for example, that \(|\xi (\underline{4}1\underline{4})|=|\underline{1}\infty \underline{3}\infty \underline{1}|=1\), and the total change \(|\xi (b)|-|b|=-2\) can be calculated by counting 0 for the \(\underline{4}\)’s and \(-2\) for the 1. Also, \(|\xi (\underline{1}3\underline{2})|=|\underline{2}|=1\), and again \(|\xi (b)|-|b|=-2\) can be calculated by counting 0 for the 3 (adjacent to a \(\underline{1}\)), 0 for the \(\underline{2}\), and \(-2\) for the \(\underline{1}\). On the other hand, \(|\xi (\underline{2}3\underline{2})|=|\underline{2}\infty \underline{2}|=1\) and \(|\xi (b)|-|b|=-2\) can be calculated by counting 0 for the \(\underline{2}\)’s and \(-2\) for the 3 (not adjacent to a 1).

Thus, a coding can only grow under \(\xi\) as a result of 3’s in odd locations. No change in length results from 2’s anywhere or from \(\underline{4}^+\) at either end of a coding, or 1’s surrounded by other 1’s. Everything else (1’s at the ends of consecutive sequences of 1’s, 3’s in even places, \(\underline{4}^+\) away from the ends of the coding) leads to losses of digits. However, even in the cases with no loss under \(\xi\), there is a loss under \(\xi ^2\) or \(\xi ^3\), except for the coding \(b=(\underline{2}2)^k\underline{2}\), which clearly remains fixed for all time.

The effect of a \(\underline{4}^+\) on the end of a coding is to produce a \(\underline{1}\) on the end of a fragment coding, which at the next step causes a loss of two digits. Thus, the \(\underline{4}^+\) on the end of a coding causes a net loss of 2 digits under \(\xi ^2\).

A \(\underline{3}\) in an odd place produces \(\underline{1}2\underline{1}\) under \(\xi\) unless it has an adjacent 1 on one or both sides. If not, there is a net increase of 2 digits at the first step, but each of the adjacent 1’s leads to a loss of two digits at the second step, so under \(\xi ^2\) there is a net loss of two digits. Each side on which the \(\underline{3}\) in an odd place has an adjacent sequence of 1’s simply causes a loss of two digits at the first step instead of the second. Thus, there is always a net local loss of 2 digits under \(\xi ^2\) unless an adjacent 1 is adjacent to another \(\underline{3}\) in an odd place, or a \(\underline{4}^+\) in an odd place, because in these cases, a new \(\underline{3}\) is created in an odd place as a result of the first step. It remains only to verify these last two cases. First, \(\underline{3}1\underline{3}\) leads to \(\underline{1}2\underline{3}2\underline{1}\) under \(\xi\), \(\underline{1}2\underline{1}\) under \(\xi ^2\) (the rest merging with whatever is to the left and right), and \(\emptyset\) under \(\xi ^3\). And second, \(\underline{3}1\underline{4}^+\) gives \(\underline{1}2\underline{3}\infty \underline{1}\) under \(\xi\), \(\underline{1}2\underline{1}\) under \(\xi ^2\) and \(\emptyset\) under \(\xi ^3\).

In summary, \(\xi ((\underline{2}2)^k\underline{2})=(\underline{2}2)^k\underline{2}\), but for any \(b\ne (\underline{2}2)^k\underline{2}\), \(|\xi ^3(b)|<|b|\). Thus, all fragment codings decrease in length until a set of fragment codings of the form \(2^k\) remain. Although this results in an infinite family of possible fragments, with \(k\ge 1\) (odd), for any given initial fragment coding, there is clearly a maximum possible k. Thus, all initial fragments lead, after transients, to fragments of the form \((2211)^k22\), for \(k\ge 0\) but with length bounded by the length of the initial fragment.

1.2 Growth rate of Example 19

To determine a more exact growth rate of Example 19, we introduce a new notation on the time scale of production of new \(2^4\) blocks. Let \(C^{(b)}=(C^{(b)}_0,\ldots ,C^{(b)}_b)\) be the set of counts of the blocks of 1’s at time \(t=1+6b\), beginning with the block to the left of \(2^3\), and continuing to the right. Starting with \(a^{(0)}=21^{k+1}\), or equivalently, \(a^{(1)}=2^31^k\), before the first collision we have \(a^{(1+6b)}=\varPhi ^{6b}(2^31^k)=1^{k-b}2^31^22^41^5\cdots 1^{3b-1}2^4\). Thus,

$$\begin{aligned} C^{(0)}= & {} \,(C^{(0)}_0)=(k),\\ C^{(1)}= & {} \,(C^{(1)}_0,C^{(1)}_1)=(k-1,2),\\ C^{(b)}= & {} \,(C^{(b)}_0,\ldots ,C^{(b)}_b)=(k-b,2,5,\ldots ,3b-1),\\ C^{(k-1)}= & {} \,(C^{(k-1)}_0,\ldots ,C^{(k-1)}_{k-1})=(1,2,5,\ldots ,3k-4). \end{aligned}$$

This last state before the collision occurs at \(t=1+6(k-1)=6k-5\). Then the collision takes another 8 time steps, to \(t=6k+3\). At that point,

$$\begin{aligned} C^{(k)}=(3k-3,2,3,6,\ldots ,3k-3) \end{aligned}$$

but we must also keep track of the times of the steps in which a new \(2^4\) block is created. Let \(s_j\) be the time at which the j th such step occurs. Then the rules for calculation of \(C^{(j+1)}\) and \(s_{j+1}\) from \(C^{(j)}\) and \(s_j\) depend on \(C^{(j)}_0\): If \(C^{(j)}_0>1\) then

$$\begin{aligned} C^{(j+1)}_0= & {} \,C^{(j)}_0-1\\ C^{(j+1)}_1= & {} \,2\\ C^{(j+1)}_i= & {} \,C^{(j)}_{i-1}+3,\quad 1<i\le j+1,\quad \hbox {and}\\ s_{j+1}= & {} \,s_j+6. \end{aligned}$$

If \(C^{(j)}_0=1\) then

$$\begin{aligned} C^{(j+1)}_0= & {} \,C^{(j)}_j+1\\ C^{(j+1)}_1= & {} \,2\\ C^{(j+1)}_2= & {} \,3\\ C^{(j+1)}_i= & {} \,C^{(j)}_{i-2}+4,\quad 2<i\le j+1,\quad \hbox {and}\\ s_{j+1}= & {} \,s_j+8. \end{aligned}$$

The length of the sequence at time \(s_j\) is

$$\begin{aligned} N_j=N(s_j)=3+4j+\sum _{i=0}^jC^{(j)}_i\,. \end{aligned}$$
(1)

Each \(C^{(j)}\) contains a history of recent collisions, at positions \(b_i\ge 1\) where \(C^{(j)}_{b_i+1}-C^{(j)}_{b_i}=1\). At other points \(l\ge 1\), \(C^{(j)}_{l+1}-C^{(j)}_l=3\). The number of recent collisions thus recorded in \(C^{(j)}\) is \(m^{(j)}\), which is less than or equal to the number of collisions that have occurred up to this time, since the \(C_i\) are slowly reabsorbed into \(C_0\) as collisions occur, and thus, eventually, the \(b_i\) are lost at the right end of C. We can describe \(C^{(j)}\) more compactly by specifying only j, \(C^{(j)}_0\) and the indices \(b_1, \ldots , b_{m^{(j)}}\) where \(C^{(j)}_{b_i+1}-C^{(j)}_{b_i}=1\). Now the evolution is described by

$$\begin{aligned}&(j,C^{(j)}_0, b_1,\ldots ,b_{m^{(j)}})\\&\quad \rightarrow (j+1,C^{(j)}_0-1,\\&\qquad b_1+1,\ldots ,b_{m^{(j)}}+1)\quad \hbox {if}\quad C^{(j)}_0>1,\\&(j,C^{(j)}_0, b_1,\ldots ,b_{m^{(j)}}) \\&\quad \rightarrow (j+1,3j-2m^{(j)},1,\\&\qquad b_1+2,\ldots ,b_{m^{(j)}}+2)\quad \hbox {if}\quad C^{(j)}_0=1, b_{m^{(j)}}<j-1,\\&(j,C^{(j)}_0, b_1,\ldots ,b_{m^{(j)}})\\&\quad \rightarrow (j+1,3j-2m^{(j)},1,\\&\qquad b_1+2,\ldots ,b_{m^{(j)}-1}+2)\quad \hbox {if}\quad C^{(j)}_0=1, b_{m^{(j)}}=j-1\,. \end{aligned}$$

The dynamics on the time scale of collisions can be described in terms of

$$\begin{aligned} B^{(J)}=(j^{(J)},C^{(J)}_0,b^{(J)}_1,\ldots ,b^{(J)}_{m^{(J)}}), \end{aligned}$$

where J indexes the times at which \(C_0\) makes a jump (i.e., the collision time steps), and where we abuse notation slightly by denoting \(C^{(j^{(J)})}_0\) and \(m^{(j^{(J)})}\) by \(C^{(J)}_0\) and \(m^{(J)}\), respectively. The loss of \(b_{m^{(j)}}\) terms is described at collision times by

$$\begin{aligned} m^{(J)}=J-\lfloor f^{-1}(J)\rfloor ,\quad \hbox {and}\quad f(J)=j^{(J)}+J-1, \end{aligned}$$

where we assume f(J) is defined as a smooth, monotone increasing function on \([0,\infty )\). For our purposes, it doesn’t matter what the interpolation is between integer points, since we always use the floor of the inverse, \(\lfloor f^{-1}(J)\rfloor\).

The dynamics can now be represented as follows:

$$\begin{aligned} B^{(J+1)}=(j^{(J+1)},C^{(J+1)}_0,b^{(J+1)}_1,\ldots ,b^{(J+1)}_{m^{(J+1)}}), \end{aligned}$$

where

$$\begin{aligned} j^{(J+1)}= & {} \,j^{(J)}+C^{(J)}_0, \end{aligned}$$
(2)
$$\begin{aligned} C^{(J+1)}_0= & {} \,3(j^{(J)}+C^{(J)}_0)-3-2m^{(J)},\end{aligned}$$
(3)
$$\begin{aligned} b^{(J+1)}_1= & {} \,1,\end{aligned}$$
(4)
$$\begin{aligned} b^{(J+1)}_i= & {} \,C^{(J)}_0+b^{(J)}_{i-1}+1, \quad i=2,\ldots ,m^{(J+1)}\,. \end{aligned}$$
(5)

Now, the times of the jumps are at

$$\begin{aligned} t_J=6j^{(J)}+2J \end{aligned}$$
(6)

and the length of the sequence at these times is

$$\begin{aligned} N_J= & {} \,N(t_J)\nonumber \\= & {} \,3+4j^{(J)}+C^{(J)}_0+\frac{3}{2}(j^{(J)})^2\nonumber \\&-\left( 2m^{(J)}-\frac{1}{2}\right) j^{(J)}+2\sum _{i=1}^{m^{(J)}} b^{(J)}_i\,. \end{aligned}$$
(7)

To illustrate, when \(k=2\) (so the initial sequence is \(a^{(1)}=2^31^2\)), we have on the time scale of creation of \(2^4\) blocks

$$\begin{aligned} C^{(0)}= & {} \,(2), C^{(1)}= (1,2), C^{(2)}=(3,2,3),\ldots ,\\C^{(4)}= & {} \,(1,2,5,8,9), C^{(5)}=(10,2,3,6,9,12), \end{aligned}$$

where the first collision occurs at step 2 and the second at step 5. The corresponding representations on the time scale of jumps are

$$\begin{aligned} B^{(0)}=(0,2), B^{(1)}=(2,3,1), B^{(2)}=(5,10,1)\,. \end{aligned}$$

Note that the length of B does not increase at collision step 2 (\(m^{(2)}=m^{(1)}=1\)) because at the previous collision step, it was the last pair in \(C^{(2)}\) that differed by 1. This is reflected in the fact that \(f(1)=2\), so that \(f^{-1}(2)=1\), and so \(m^{(2)}=2-1=1\). Note that \(f(2)=6\) so it is not until the \(6^{th}\) collision that we will lose the effect of the \(2^{nd}\) collision in B, and \(m^{(6)}\) will be equal to \(m^{(5)}\). The first two jump times are \(s_1=6j^{(1)}+2(1)=14\) and \(s_2=6j^{(2)}+2(2)=34\), and the total sequence lengths after the first two collisions are \(N_1=19\) and \(N_2=65\).

When \(k=3\) (initial sequence \(a^{(1)}=2^3 1^3\)), we get

$$\begin{aligned} C^{(0)}= & {} \,(3), \ldots , C^{(3)}= (6,2,3,6),\ldots ,\\ C^{(9)}= & {} \,(22,2,3,6,9,12,15,18,21,22) \end{aligned}$$

and

$$\begin{aligned} B^{(0)}=(0,3), B^{(1)}=(3,6,1), B^{(2)}=(9,22,1,8) \end{aligned}$$

and the history of both collisions is reflected in the values \(b_1=1, b_2=8\) in \(B^{(2)}\), since the second one has not yet been absorbed in a collision event, though it will be at the next collision, since now \(j^{(2)}=9\) and \(b_2^{(2)}=8\) so that it is the last pair in \(C^{(j^{(2)})}\) that differ by 1. Thus, \(m^{(1)}=1, m^{(2)}=2\) and \(m^{(3)}\) will also be 2. The jump times are \(s_1=20\) and \(s_2=58\), and the total sequence lengths after the first two collisions are \(N_1=32\) and \(N_2=169\).

The recurrence relation governing the evolution of \(B^{(J)}\) is

$$\begin{aligned}\left[ \begin{matrix} j^{(J+1)}\\ C^{(J+1)}_0 \end{matrix}\right] = \left[ \begin{array}{*{20}l} 1 & 1\\ 3 & 3 \end{array}\right] \left[ \begin{matrix} j^{(J)}\\ C^{(J)}_0 \end{matrix}\right] -\left[ \begin{array}{c} 0\\ 3+2m^{(J)} \end{array}\right] , \end{aligned}$$

with initial condition \(B^{(0)}=(0,k)\).

The solution to this recurrence relation is

$$\begin{aligned} \left[ \begin{matrix}j^{(J)}\\ C^{(J)}_0\end{matrix}\right]= & {} \, \left( 4^{J-1}(k-1)-\frac{1}{2}\sum _{i=2}^{J-1}4^{J-i}m^{(i-1)}\right) \left[ \begin{matrix} 1 \\ 3 \end{matrix}\right] \nonumber \\&+\left[ \begin{array}{c}1\\ -2m^{(J)} \end{array}\right] , \end{aligned}$$
(8)

for \(J\ge 3\), and for \(J=1,2\) we omit the summation in the scalar term. Since \(m^{(J)}=J-\lfloor f^{-1}(J)\rfloor\), we can decompose the summation term above as

$$\begin{aligned} \frac{1}{2}\sum _{i=2}^{J-1}4^{J-i}m^{(i-1)} = \frac{1}{8} \sum _{i=1}^{J-2}4^{J-i}i -\frac{1}{8} \sum _{i=1}^{J-2}4^{J-i}\lfloor f^{-1}(i)\rfloor \,. \end{aligned}$$
(9)

Using a “summation by parts” formula:

$$\begin{aligned} \sum _{i=2}^n b_i\sum _{j=1}^{i-1}a_j= & {} \, \left( \sum _{i=1}^n a_i\right) \left( \sum _{i=1}^n b_i\right) \nonumber \\&-\left( \sum _{i=1}^n a_ib_i\right) -\sum _{i=2}^n a_i\sum _{j=1}^{i-1}b_j, \end{aligned}$$
(10)

in each of these two sums, and letting

$$\begin{aligned} \chi _i=\left\{ \begin{array}{l} 1,\quad \hbox {if}\quad \exists J \hbox { such that } f(J)=i\\ `0,\quad {\text {otherwise}},\end{array}\right. \end{aligned}$$

so that

$$\begin{aligned} \sum _{i=1}^{J}\chi _i=\lfloor f^{-1}(J)\rfloor , \end{aligned}$$

we calculate

$$\begin{aligned}&\frac{1}{2}\sum _{i=2}^{J-1}4^{J-i}m^{(i-1)} \nonumber \\&\quad = \left( \frac{2}{9} 4^{J-1}-\frac{2}{3} J +\frac{4}{9}\right) \nonumber \\&\qquad -\left( \frac{1}{6} 4^{J-1} \sum _{i=2}^{J-2} \chi _i \left( \frac{1}{4}\right) ^{i-1} - \frac{2}{3}\lfloor f^{-1}(J-2)\rfloor \right) \,. \end{aligned}$$
(11)

The summation term here can be bounded by taking \(\chi _i=0\) or \(\chi _i=1\) for large i. However, for any \(k\ge 2\), we have that \(f(1)=k\), \(f(2)=4k-2\), \(f(3)=16k-15\), and \(f(4)\ge 64k-72\), so \(\chi _k=1\), \(\chi _{4k-2}=1\), \(\chi _{16k-15}=1\) and \(\chi _i=0\) for all other \(i\le 64k-73\). Thus, for \(i\ge 64k-72\) we use bounds \(0\le \chi _i \le 1\). This gives,

$$\begin{aligned} \frac{1}{6} 4^{J-1} \sum _{i=2}^{J-2} \chi _i \left( \frac{1}{4}\right) ^{i-1} = \beta _k^{(J)} 4^{J-1}-\alpha ^{(J)}, \end{aligned}$$
(12)

where

$$\begin{aligned} \bar{\beta }_k^{(J)}= \left\{ \begin{array}{ll} 0, &{} \hbox { for } J\le k+1 \\ \frac{1}{6} \left( \frac{1}{4} \right) ^{k-1}, &{} \hbox { for } k+2\le J\le 4k-1 \\ \frac{1}{6} \left[ \left( \frac{1}{4} \right) ^{k-1}+\left( \frac{1}{4}\right) ^{4k-3}\right] , &{} \hbox { for } 4k\le J\le 16k-14 \\ \frac{1}{6} \left[ \left( \frac{1}{4} \right) ^{k-1}+\left( \frac{1}{4} \right) ^{4k-3}+\left( \frac{1}{4} \right) ^{16k-15}\right] , &{} \hbox { for } 16k-13\le J\le 64k-71 \\ \frac{1}{6} \left[ \left( \frac{1}{4} \right) ^{k-1}+\left( \frac{1}{4} \right) ^{4k-3}+\left( \frac{1}{4} \right) ^{16k-15}\right] +\frac{2}{9} \left( \frac{1}{4}\right) ^{64k-73}, &{} \hbox { for } J\ge 64k-70 \end{array}\right. \end{aligned}$$
(13)

and

$$\begin{aligned} \bar{\alpha }^{(J)} = \left\{ \begin{array}{ll} 0, &{} \hbox { for } J\le 64k-71 \\ \frac{8}{9}, &{} \hbox { for } J\ge 64k-70 \end{array}\right. \end{aligned}$$

overestimate \(\beta _k^{(J)}4^{J-1}-\alpha ^{(J)}\) and

$$\begin{aligned}&\underline{\beta }_k^{(J)}= \left\{ \begin{array}{ll} 0, &{} \hbox { for } J\le k+1 \\ \frac{1}{6} \left( \frac{1}{4} \right) ^{k-1}, &{} \hbox { for } k+2\le J\le 4k-1 \\ \frac{1}{6} \left[ \left( \frac{1}{4} \right) ^{k-1}+\left( \frac{1}{4}\right) ^{4k-3}\right] , &{} \hbox { for } 4k\le J\le 16k-14 \\ \frac{1}{6} \left[ \left( \frac{1}{4} \right) ^{k-1}+\left( \frac{1}{4} \right) ^{4k-3}+\left( \frac{1}{4} \right) ^{16k-15}\right] , &{} \hbox { for } J\le 16k-13 \\ \end{array}\right. \nonumber \\&\underline{\alpha }^{(J)} = 0 \end{aligned}$$
(14)

underestimates \(\beta _k^{(J)}4^{J-1}-\alpha ^{(J)}\) .

Thus, from Eqs. (8), (11), and (12),

$$\begin{aligned} j^{(J)}= & {} \, 4^{J-1}\left( k-\frac{11}{9}+\beta _k^{(J)}\right) \\&+\frac{2}{3} J + \left( \frac{5}{9} -\alpha ^{(J)}\right) -\frac{2}{3}\lfloor f^{-1}(J-2)\rfloor \,. \end{aligned}$$

To estimate the last term here, we can use

$$\begin{aligned} f(J)=J+j^{(J)}-1 \ge 4^{J-1}\left( k-\frac{11}{9}\right) +\frac{11}{9},\quad \hbox {for } J\ge k, \end{aligned}$$

in which equality holds for \(J=k\). This can be inverted to yield

$$\begin{aligned} f^{-1}(J) \le 1+\log _4\left( J-\frac{11}{9}\right) -\log _4\left( k-\frac{11}{9}\right) \quad \hbox {for } J\ge k, \end{aligned}$$
(15)

and \(\lfloor f^{-1}(J)\rfloor =0\) for \(J<k\), as an upper bound, and \(\lfloor f^{-1}(J)\rfloor \ge 0\) for all J as a lower bound. Finally,

$$\begin{aligned} j^{(J)}=4^{J-1}\left( k-\frac{11}{9}+\beta _k^{(J)}\right) +o(4^J)\,. \end{aligned}$$
(16)

In order to estimate the length of the sequence at collision steps, \(N_J\) from Eq. (7), we need to get \(C_0^{(J)}\) and \(\sum _{i=1}^{m^{(J)}}b_i^{(J)}\) in terms of \(j^{(J)}\), which is related to time by Eq. (6). We can estimate \(C_0^{(J)}\) from Eq. (8) as

$$\begin{aligned} C_0^{(J)}=3(j^{(J)}-1)-2m^{(J)}\,. \end{aligned}$$
(17)

However, it will also be useful to estimate \(C_0^{(J)}\) from Eq. (2) as

$$\begin{aligned} C_0^{(J)}=j^{(J+1)}-j^{(J)}\,. \end{aligned}$$

From Eqs. (4) and (5), we find

$$\begin{aligned} b_i^{(J)}= & {} \,i + \sum _{\ell =1}^{i-1}C_0^{(J-\ell )} \\= & {} \, i + \sum _{\ell =1}^{i-1}[j^{(J-\ell +1)} -j^{(J-\ell )}]=i+j^{(J)}-j^{(J-i+1)}\,. \end{aligned}$$

Thus,

$$\begin{aligned} \sum _{i=1}^{m^{(J)}} b_i^{(J)}= & {} \, \sum _{i=1}^{m^{(J)}} i +\sum _{i=1}^{m^{(J)}} j^{(J)} - \sum _{i=1}^{m^{(J)}} j^{(J-i+1)}\\= & {} \, \frac{1}{2} m^{(J)}(m^{(J)}+1)+m^{(J)}j^{(J)}\\&-\sum _{i=1}^{m^{(J)}} \left[ 4^{J-i}\left( k-\frac{11}{9}+\beta _k^{(J-i+1)}\right) \right. \\&\left. +\frac{4}{9} + \frac{2}{3} m^{(J-i+1)}\right] , \end{aligned}$$

where the last sum is

$$\begin{aligned} \sum _{i=1}^{m^{(J)}} j^{(J-i+1)}= & {} \,\frac{1}{3} 4^J\left( k-\frac{11}{9}\right) \\&+\frac{1}{6}\sum _{i=1}^{m^{(J)}}4^{J-i}\sum _{p=2}^{J-i-1}\chi _p\left( \frac{1}{4}\right) ^{p-1} +o(4^J) \end{aligned}$$

and

$$\begin{aligned}&\sum _{i=1}^{m^{(J)}}4^{J-i}\sum _{p=2}^{J-i-1}\chi _p\left( \frac{1}{4}\right) ^{p-1} \\&\quad = \sum _{p=2}^{(J-m^{(J)}-1)}\sum _{i=1}^{m^{(J)}} 4^{J-1}\chi _p \left( \frac{1}{4}\right) ^{p-1} \\&\qquad + \sum _{p=J-m^{(J)}}^{J-2}\sum _{i=1}^{J-p-1}4^{J-i}\chi _p\left( \frac{1}{4}\right) ^{p-1}\\&\quad = 8 (4^{J-1}\beta _k^{(J)}-\alpha ^{(J)})-\frac{1}{3} 4^{\lfloor f^{-1}(J)\rfloor }\sum _{p=2}^{\lfloor f^{-1}(J)\rfloor -1} \chi _p\left( \frac{1}{4}\right) ^{p-1}\\&\qquad -\frac{16}{3}(\lfloor f^{-1}(J-2)\rfloor - \lfloor f^{-1}(\lfloor f^{-1}(J)\rfloor -1)\rfloor ). \end{aligned}$$

This gives

$$\begin{aligned} \sum _{i=1}^{m^{(J)}}b_i^{(J)}=m^{(J)}j^{(J)}-\frac{4}{3} 4^{J-1}\left( k-\frac{11}{9}+\beta _k^{(J)}\right) + o(4^J)\,. \end{aligned}$$
(18)

We can now estimate \(N_J\) in Eq. (7) from Eqs. (17) and (18) as

$$\begin{aligned} N_J= & {} \, \frac{3}{2}(j^{(J)})^2 + \frac{15}{2} j^{(J)}\\&-\frac{8}{3} 4^{J-1} \left( k-\frac{11}{9}+\beta _k^{(J)}\right) + o(4^J)\\= & {} \frac{3}{2}(j^{(J)})^2 + \frac{29}{6} j^{(J)}+o(4^J)\,. \end{aligned}$$

From Eq. (6) we have

$$\begin{aligned} j^{(J)}=\frac{1}{6} t_J-\frac{1}{3} J, \end{aligned}$$
(19)

so at jump times, \(t=t_J\), we have \(4^J=O(j^{(J)})=O(t)\), so \(o(4^J)=o(t)\), and \(J=O(\log (t))=o(t)\), and

$$\begin{aligned} N(t)= & {} \,N_J\\= & {} \, \frac{3}{2}\left( \frac{1}{6} t-\frac{1}{3} J\right) ^2 +\frac{29}{6} \left( \frac{1}{6} t-\frac{1}{3} J\right) +o(t) \\= & {} \, \frac{1}{24}t^2-\frac{1}{6} Jt +\frac{29}{36}t +o(t)\,. \end{aligned}$$

Now, from Eq. (16), we have

$$\begin{aligned} \log _4(j^{(J)})= & {} \,\log _4\left( 4^{J-1}\left( k-\frac{11}{9}+\beta _k^{(J)}\right) (1+o(1))\right) \\= & {} \, (J-1)+\log _4\left( k-\frac{11}{9}+\beta _k^{(J)}\right) +o(1), \end{aligned}$$

so

$$\begin{aligned} J= & {} \, \log _4(j^{(J)})+1-\log _4\left( k-\frac{11}{9}+\beta _k^{(J)}\right) +o(1) \\= & {} \, \log _4 t - \log _4 6+1-\log _4\left( k-\frac{11}{9}+\beta _k^{(J)}\right) +o(1)\,. \end{aligned}$$

Thus, finally,

$$\begin{aligned} N(t)= & {} \,\frac{1}{24}t^2-\frac{1}{6} t\log _4 t +\left( \frac{29}{36}+\frac{1}{6}\left( \log _4 6\right. \right. \\&\left. \left. +\log _4\left( k-\frac{11}{9}+\beta _k^{(J)}\right) -1\right) \right) t +o(t)\\= & {} \, \frac{1}{24}t^2 -\frac{1}{12} t\log _2 t +\left( \frac{23}{36}+\frac{1}{12} \log _2 6\right. \\&\left. + \frac{1}{12}\log _2\left( k-\frac{11}{9}+\beta _k^{(J)}\right) \right) t+o(t), \end{aligned}$$

where \(\beta _k^{(J)}\) can be bounded above and below asymptotically by the last expressions in Eqs. (13) and (14).

Thus, N(t) grows asymptotically like \(\frac{t^2}{24}\) but the next term is of order \(t\log _2t\), followed by a term of order t and smaller terms. The coefficient of the order t term depends on k. For example, for \(k=2\) it is about 0.830386; for \(k=3\) it is about 0.924178; and for \(k=13\) it is about 1.150802.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Edwards, R., Maignan, A. A class of discrete dynamical systems with properties of both cellular automata and L-systems. Nat Comput 19, 609–641 (2020). https://doi.org/10.1007/s11047-019-09739-5

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11047-019-09739-5

Keywords

Mathematics Subject Classification

Navigation