Iterons, Fractals and Computations of Automata

0 downloads 0 Views 1MB Size Report
Processing of strings by some automata, when viewed on space-time (ST) ... we show new examples of filtron phenomena: multifiltron solitonic collisions, .... This model is known as Moore automaton without outputs. ... between states and input/output signals of cells, this model may be not ...... each at_ is its orbital state.
Computing Anticipatory Systems. CASYS’98 – The Second International Conference. Liege, Belgium, August 1998. D. M. Dubois (ed.), American Institute of Physics (AIP) Conference Proceedings 465, Woodbury, New York, 1999, pp. 367-394.

Iterons, Fractals and Computations of Automata Paweł Siwak fax: 48 61 8330217,

Poznan University of Technology, 60-965 Poznan, Poland e-mail: [email protected], http://staff.sk-kari.put.poznan.pl/siwak

Abstract. Processing of strings by some automata, when viewed on space-time (ST) diagrams, reveals characteristic solitonlike coherent periodic objects. They are inherently associated with iterations of automata mappings thus we call them the iterons. In the paper we present two classes of one-dimensional iterons: particles and filtrons. The particles are typical for parallel (cellular) processing, while filtrons, introduced in (32) are specific for serial processing of strings. In general, the images of iterated automata mappings exhibit not only coherent entities but also the fractals, and quasi-periodic and chaotic dynamics. We show typical images of such computations: fractals, multiplication by a number, and addition of binary numbers defined by a Turing machine. Then, the particles are presented as iterons generated by cellular automata in three computations: B/U code conversion (13, 29), majority classification (9), and in the discrete version of the FPU (Fermi-PastaUlam) dynamics (7, 23). We disclose particles by a technique of combinational recoding of ST diagrams (as opposed to sequential recoding). Subsequently, we recall the recursive filters based on FCA (filter cellular automata) window operators, and considered by Park (26), Ablowitz (1), Fokas (11), Fuchssteiner (12), Bruschi (5) and Jiang (20). We present the automata equivalents to these filters (33). Some of them belong to the class of filter automata introduced in (30). We also define and illustrate some properties of filtrons. Unlike particles, the filtrons interact nonlocally in the sense that distant symbols may influence one another. Thus their interactions are very unusual. Some examples have been given in (32). Here we show new examples of filtron phenomena: multifiltron solitonic collisions, attracting and repelling filtrons, trapped bouncing filtrons (which behave like a resonance cavity) and quasi filtrons.

Keywords: iterons, solitons, iterative computations, filtrons, quasi-filtrons, cellular automata, particles, automata We consider the processing of one-dimensional strings of symbols from a finite alphabet. Our aim is to show particular effects of processing performed by a computational model: the linear nets of automata. Such nets may transform the strings either in parallel or in serial. One may distinguish then the cellular processing with Moore type automata and the iterating nets (6) equipped with Mealy automata. The essence of computation carried out in both types of nets is the iterating of automata mappings. The space-time (ST) diagrams of such computations disclose some entities characteristic for dynamical systems. Especially, the iterating of automata mappings supports two kinds of behaviour: fractal objects and periodic coherent structures. The fractals generated by automata are well know and have been investigated many years, e.g. (37). This is not the case with coherent objects. There are two kinds of such objects. One, associated with cellular automata is widely used to arrange computations since von Neumann’s cellular model. These are called waves, signals, building blocks or particles (2, 3, 24, 28, 36). The second class, consists of periodic objects specific for serial processing of strings performed in nets of Mealy automata. Analysis of these objects has started recently, and in the beginning was restricted mainly to the binary case. The first paper (26) has introduced a model consisting of a special ST window operator and parity update function. This model was named the parity rule filter cellular automaton (FCA). However, as will be seen, the model is strictly sequential, and belongs to the class of IIR (infinite impulse response) filters. We will use the term FCA type window to refer to the mentioned ST operator. Park, Steiglitz and Thurston showed a remarkable property of their model: it is capable of supporting substring particles with soliton-like behaviour. Since then, a number of models based on the FCA type window, and various update functions, has been introduced (11, 1, 12, 5, 20). These models enlarged substantially the family of supported substring particles. All these models were described by analytical recurrent formulas, which hindered the analysis of both the properties of the models and the properties of substring particles. Later, it was shown (30, 31, 32, 33) that automata description of these models is more natural and efficient. The automata approach permits us to define, identify, classify and describe the coherent objects supported in serial iterated processing. What is most important is that these objects can be analysed by their associated multiautomata ring computations (32). Because of their connections with digital filters they have been called the filtrons. The presented coherent entities, particles and filtrons, are like fractals inherently connected with iterations of (automata) mappings, thus we propose here to distinguish them by a new term the iterons.

1. ITERATING OF AUTOMATA MAPPINGS 1.1. Mealy and Moore Automata Let us recall the definitions of automata. A Mealy type automaton M with outputs and an initial state is defined to be an algebraic system M = (S, X, Z, , , s0), where S, X and Z are nonempty, finite sets of respectively states, inputs and outputs,  : S  X  S is a next state (or transition) function,  : S  X  Z is an output function, and s0  S is an initial state.

string t:

... x1 x2



  xi  

 xL

...

Automaton (S, X, Z, , , s0) string t+1:

... z1 z2



  zi  

 zL

...

q FIGURE 1 (33). Mealy automaton converts a string; a shift q is called the range of processing.

The operation of an automaton M is illustrated in Fig. 1. For each symbol xi read from an input string it responds with an associated output symbol zi which is a consecutive element of the resulting string. The input string is read sequentially from left to right, one symbol at each instant  of time, in such a way that:

 (s(), x()) = s(+1) and  (s(), x()) = z(). Sometimes it is convenient to shift the entire output string by q positions to the left with respect to the input string. We will say in such a case that the range of processing equals q. In Moore type automata the output function is of the form:  : S  Z or (s()) = z(), which means that  codes the states onto outputs. Sometimes the outputs Z and states S are not distinguished. In such a case the coding  is the identity ( = id). This model is known as Moore automaton without outputs. To make the iterations possible we assume one working alphabet A = X = Z. Nevertheless, sometimes, when a symbol a  A is considered as input or output of the automaton we use the letters x or z, respectively. The operation of an automaton may be described also by functions fs : A  A. They depend on states and are such that fs (ai) =  (s, ai) for all s  S and ai  A. Using fs one may describe the succession of outputs by an operator next [fs (ai)] = f (s, ai) (ai+1). We assume that two models of automata, say M1 and M2, are equivalent () if both return the same output string for any input string at when their ranges q of processing are disregarded. We write in this case at+1 = M1(at) = M2(at). An operation M(at) = at+1 is said to be the automaton mapping.

1.2. Cellular and Serial Processing of Strings We consider two types of linear nets of automata. The first one converts the strings in parallel, like cellular models, and employs Moore automata. The second performs serial processing of strings, and consists of Mealy type automata. Cellular automata (CA) are computational models. They have the form of (regular) nets of identical automata, called the cells. The CA model is strictly parallel, all cells change their states simultaneously. In the one dimen-sional case a net may be such that each cell has r left and r right neighbours, as it is shown in Fig. 2 for r = 1. Let us start with a model which will be called here the general cellular automaton. This model distinguishes states of cells from their input/output symbols. Such a cellular net is defined as CN = (C, , ), where: - C = {ci} is a sequence of cells which are Moore automata c = (S, X, Z, , , s0); i  Z, -  (ci) = (..., cj, ...) is a neighbourhood function; j  Ni is the index of a neighbour of a cell ci, and |Ni| = 2r, -  : Z 2r  X is a function that couples the cells.

368



zi-2

zi-1

zi



zi

ci



ci-1

zi+2



zi+2



ci+1

zi-1

ci+2

zi+1

zi+1



zi+3

FIGURE 2. Linear net of the general cellular automaton; here each cell ci has two neighbours.

At each instant  of time the cells operate according to: (si) = zi,  (zi-r, ..., zi-1, zi+1, ..., zi-r) = xi, and  (si (), xi) = si (+1). When r = 1, like in the Fig. 2, we have  (ci) = (ci-1, ci+1) and Ni = 2r = 2. Now, let us recall the nets which will be called classical CA. Such nets consist of Moore automata without outputs ( = id). In this case a single set A is considered (A = S = Z), and called the set of sites (or states). The input alphabet of a cell is given by X = A2r, thus the sequence of functions ,  and , that described the operation of general model, can be replaced by a single function A2r+1  A, which can be interpreted as identical with , and which is called a local function of the model. Note, that such terms like rule, or LUT are also used for . This model is very popular in literature (this is why it is called classical). But sometimes, when the simulating phenomena require a distinction between states and input/output signals of cells, this model may be not sufficient.  , ... of In classical CA, the global state of a net at some time  is described by a sequence a = ..., ai , ai1 , ai2 the states of all cells in the net. This global state is also called the current configuration. The next configuration a+1 is

a result of updating simultaneously of all symbols from a; ai 1 =  ( ai r , ai r 1 , ..., ai , ..., ai r ), - < i < +. The resulting global mapping a  a+1 will be denoted by  (a) = a+1. For r = 1, the function  can be considered as the set of all 4-tuples (a, b, c, d)  A4, such that  (a, b, c) = d, where the results d are assumed to be placed on the position of b. Any such 4-tuple will be called the elementary rule (ER) of the model. This convention allows us to distinguish five levels of cellular processing. These are: - the level of a single elementary rule, - the level of sets of ERs and families of such sets (these sets are further connected with the idea of a particle), - the level of the local function , - the level of the global mapping  (when entire configuration changes; a  a+1), and - the level of the computational task; a conversion of given initial configuration to a final one by iterating of . In the case of a finite CA periodic boundary conditions are usually assumed. Also it is assumed that an initial state s0, denoted here by 0, and called the quiescent state, is such that  (0, 0, 0) = 0. In the binary case, when A = {0, 1}, the local function  : A2r+1  A is a Boolean function. i

  

ai-1

 

  

ai

 ai-1



ai+1

a



 ai+1   

ai



  

a+1



FIGURE 3. Classical model of CA interpreted as a multilayer net of gates  : A3  A.

The images of computations performed by CA will be presented on space-time (ST) diagrams, in (i, ) coordinates. Successive configurations a, a+1, a+2, ... will be placed in the consecutive rows. Note also, that the ST diagram of CA model can be interpreted as a multilayer net of gates , as shown in Fig. 3. The second, serial mechanism of string processing, uses the linear homogeneous nets of Mealy type automata, as shown in Fig. 4. Such a pipeline computation, with a multiple copy of the machine F, is equivalent to iterated computation performed by a single F. There are various possible interpretations of serial homogeneous nets. They can be interpreted as cellular automata with a one-sided (left-hand) neighbourhood. In (17) the serial net was called a one-way linear iterative automaton (OLIA model). In the domain of digital signal processing the automata used as (sequential) transducers are well known as IIR (infinite impulse response) filters. They constitute the family of recursive filters. In this paper we present some new phenomena associated with the propagation of strings through such nets. In this context, it seems

369

natural to interpret the serial nets as a one-dimensional automaton medium, and the propagating strings as a flow of disturbances.

at+j at+2

at+1

at

F

F



at+p

at+p-1

F

F at+j-1 FIGURE 4 (27). Iterated and serial processing of strings by an automaton F.

The conversion of a string at onto an output string at+1 performed by a single automaton F, called a step of serial processing, requires many instances of time . It means that such processing implies two scales of time. The first one, denoted by t, represents steps in the evolution of the entire string. The second, indexed by , is associated with the state changes of the automaton (clock pulses). The images of strings evolving in serial processing will be presented on ST diagrams in (i, t) coordinates. Again, configurations at, at+1, at+2, ... will be placed in the successive rows, sometimes, each shifted by q positions to the left with respect to preceding one.

1.3. Iterons We focus our attention on successive forms of converted strings (the evolution of strings). In the cellular model the updating of all string symbols is accomplished simultaneously in one instant of time . Thus the cellular iterated processing of strings is associated with the global function  and  moments of time:  (a) = a+1,  (a+1) = a+2,  (a+2) = a+3, ... . But for the model of Fig. 4, the serial iterating of an automaton mapping F is connected with time steps t, and is understood as F (at) = at+1, F (at+1) = at+2, F (at+2) = at+3, ... . Both systems of string processing support the entities characteristic of dynamical systems. These can be seen on ST diagrams, e.g. it’s easy to observe fractal like objects. Sometimes, some particular coherent objects are visible, too. They have the form of segments or substrings of strings. These objects are periodic and also they displace with different velocities. They are able to come into collision. During collisions they manifest extraordinary soliton-like properties. Iterations of automata mappings are a basic factor supporting the coherent objects. Thus, we distinguish such objects by a new term: one-dimensional iterons. Note, that iterons emerge also during iterations of two- and higherdimensional discrete structures. Some examples were given recently in (5) and (22). For the iterons of cellular processing we retain the widely used term: particles. But for the iterons of serial processing, especially for those specific for filter automata, we will use the name filtrons, introduced in (32). The filtrons and particles differ substantially. Note, that in cellular nets equipped with Moore automata, like those shown in Fig. 2 and 3, the distant symbols of converted strings cannot influence one another during one action of . This is simply because the radius r of the neighbourhood is restricted. In contrast to that, during serial and sequential processing of strings, the distant symbols may interact in one step at  at+1 due to the memory and internal clock pulses  of the underlying automaton F. In this context we may speak about nonlocality in the serial processing of strings. As will be seen, this forms a background for many particular phenomena.

2. IMAGES OF AUTOMATA MAPPINGS 2.1. Fractals Now, we will present some ST diagrams of iterated automata mappings. The images of such computations allow us to realise the richness and variety of events which may appear during automata processing of strings. The typical images include fractals, deterministic chaos (or pseudo-chaos) and periodic or quasi-periodic entities. The widely known objects which emerge during cellular iterating of automata mappings are fractals (37). These objects can be generated also in serial processing. Let us consider a two-state Mealy automaton M1 shown in Fig. 5.

370





0/1 0/0

s\a 0 1 0 1

s0

s1

s0 s0 s1 0 1 s1 s0 s1 1 0

1/1

1/0

FIGURE 5. Next state and output functions table of the automaton M1, and state diagram of M1; A = {0, 1}.

Further, in Fig. 6, we show the ST diagram of serial processing performed by this automaton. The initial configuration is a0 = ...010... . One can easily verify that a1 = ...0110..., a2 = ...01010..., and so on. The classical cellular automaton capable of generating the same fractal has the local function  : A3  A such that:  -1(0) = {00, 11} = {000, 001, 110, 111} and  -1(1) = {01, 10} = {010, 011, 100, 101}.

FIGURE 6. Sierpinski’s carpet generated by iterating the serial processing with the automaton M1; ST diagram for q = 0.

2.2. Image of Iterated Multiplication For multiplication and division one can easily construct automata capable of performing these operations by serial processing of strings. The strings are binary codes of numbers, and the states represent classes of remainders. An example, the automaton which multiplies binary numbers by five, is shown in Fig. 7. It is assumed that the binary string of a number is entered into the automaton with the least significant bit first (LSBF).

0/0 0 0/1

1/1 2 0/0

0/0 1/1

1/1 4

1/0

1 0/1

1/0 3

FIGURE 7. Automaton M2 which multiplies by five the binary numbers; strings are fed on LSBF basis.

The ST diagram from Fig. 8 shows the evolution of serial iterated processing of the initial string a0 = ...010... . When one interprets this string as the number 1, consequently the successive rows of ST diagram represent the powers of 5: 5, 25, 125, ..., thus: a1 = ...01010..., a2 = ...0100110..., a3 = ...010111110..., ... . The image of this computation resembles the dynamics of chaos.

371

FIGURE 8. ST diagram of iterated processing of a0 = ...010... performed by the automaton M2; q = 1.

2.3. Image of a Computation Specified by Turing Machine Let us consider now the addition of binary numbers described by the Turing machine. The computation will be performed by one-dimensional automaton medium. The pipeline of copies of an equivalent Mealy automaton will be used. We want to show that the images of such computations may exhibit coherent quasi-periodic objects. Example 1. The Turing machine which adds binary numbers is given in Fig. 9. The machine has 12 states: STM = {0, 1, ..., B}. The tape alphabet is T = {, 0, 1, s}, where  denotes blank, 0 and 1 are the ciphers, and s serves as a separation mark. Admissible initial forms of the tape (configurations) are: cnsscnh, where h shows a position of the machine’s head, and cn represents n-bit addenda. We described this machine using a state diagram form. The labels x/zu of arrows are such that: x denotes input, z - output, and u - the head’s move (either L or R).

Stop

ccL

ss-

1

L

ccL ssL

ssL

3

8

1sR

s0L 5

0sR

1L 0

0L 2

ssL

ssL

4

01R

7

1sR

10L ssL A

ssR

s1R 6

B s0R

ccL

ccR

0sR

ccL

9 L

FIGURE 9. Turing machine that performs the addition of binary numbers.

One may construct a Mealy automaton M capable of realising the computations determined by the Turing machine TM. Such an M simply iterates the initial configurations of the machine MT. The construction builds at first an alphabet A = T  {(s, u)}, where s  STM and u  {L, R}. TABLE 1. Coding the tape symbols T and pairs (s, u) into a new working alphabet A. symbols T and moves of TM



0

1

s

symbols of new alphabet A

0

1

2

3

0L 1L 2L 3L 4L 5L 6L 7R 8R 9R AL BR 4

5

6

7

8

9

A

B

C

D

E

F

Then, the pairs from A  A are used as the states of M, and the functions  and  of M may mimic the head’s actions. Here, we do not present the construction itself. We are interested in images of computations performed by the resulting automaton M. Table 1 shows how to obtain the new alphabet A, and Table 2 gives M3  a minimal state form of the automaton M  TM. Automaton M3 has (again) 12 states.

372

TABLE 2. Automaton M3, capable of adding binary numbers; states s  S = {0, 1, ..., B} and inputs x  A.

 s\x 0 1 2 3 4 5 6 7 8 9 A B

0 0 0 0 0 0 0 0 0 0

1 1 1 1 1 1 1 1 1 7

2 2 2 2 2 2 2 2 2 7

3 3 3 3 3 3 3 3 3 7 1 7 7

4 0 0 0 0 -

5 0 1 2 3 -

6 0 1 2 3 -

7 0 1 2 3 -

 8 0 1 2 3 -

9 0 4 5 0 -

A 0 6 4 0 -

B 0 8 8 8 -

C 0 9 9 9 -

D 0 A A A -

E 0 7 1 3 -

F 0 B B B -

0 0 1 2 3 B C D F 4

1 0 1 2 3 B C D F 1

2 0 1 2 3 B C D F 2

3 0 1 2 3 B C D F 2 E 1 3

4 4 6 5 3 -

5 5 5 7 -

6 6 6 8 -

7 7 7 9 -

8 8 8 A -

9 3 3 -

A 3 3 -

B 0 1 2 3 -

C 0 1 2 3 -

D 0 1 2 3 -

E 2 E E -

F 0 1 2 3 -

The undefined values of functions  and  are denoted by -. The ST diagram of iterations performed by M3 is shown in Fig. 10. Six pairs of numbers have been included in the initial configuration a0: 821+861, 621+875, 1812+1206, 700+814 and 907+287, thus a0 contains the following associated substrings: 112211221212331122121222120000004, 1211221221233122122121220000004, 122211121211331211212212210000004, 1212122221133122112122210000004, 112221122122331212222112120000004, 1222111212233112111222220000004.

FIGURE 10. ST diagram of iterations of automaton M3; q = 1. Six additions are performed simultaneously.

The image from Fig. 10 reveals quasi-periodic coherent objects. Note that they emerge in the pipeline of automata M3 and M3 is such that M3  TM holds for all initial configurations representing the admissible tapes.

3. PARTICLES OF CELLULAR COMPUTATIONS The particles emerging during cellular processing are associated with some segments of strings. Usually, these are periodic objects which can be localised on some chosen area of ST diagram. This class of particles contains such objects as kinks (14) which are like defects on a background (or walls separating two domains). The background, usually a stable configuration, represents an attractor of the global mapping . It means that these particles refer to the global dynamics of CA model. Similarly, in the paper (3), the particles were defined as transient segments not occurring in configurations which belong to the attractor. In (15) and (8) a sequential (automaton) processing of ST diagram rows has been proposed as a method of extracting the particles. This method was illustrated in (10) with the CA performing the task of synchronisation of cell switchings 0 1 in binary configurations. The role of particles was to carry and distribute the information about local regions. The particles were defined on ST diagrams as spatially localised and timely recurrent structures occurring on the boundaries between domains (described by regular languages). The same method was used in (9) to identify the particles in a CA performing the classification task. The task is aimed to decide (in a CA with r = 3) the majority of zeroes or ones in given binary initial configuration. The

373

significance of interactions of particles in this task was also shown in (2). Moreover, a function  with efficiency  82.33% was found (the best known) and about 50 various particles were identified. In the computational model theory, the particles are usually treated (17, 24, 28, 36) as functional components in the hierarchical description of a computation. In this approach, the identification of particles is based on their role in a given computational task. The model of CA is strictly parallel and operates with a neighbourhood restricted by r. It means that the analysis of particles in ST diagrams can be based on a parallel operator, and the sequential row filters are not necessary. Here, we will present CA particles along with this approach, namely a technique of combinational recoding of ST diagrams.

3.1. Binary to Unary Code Conversion The CA task of binary to unary (B/U) code conversion assumes that initial configuration a0 contains an integer L  0 in its binary form. The string a0 should be transformed by a cellular automaton to some final stable (under ) configuration which represents the same integer in its unary form. This task was posed and partially resolved in (13). Here we recall a 5-state complete solution from (29). The time of conversion in this solution is T = 2L +3. Our goal is to show the concept of particle of classical CA as the pair: a string segment and a set of elementary rules. TABLE 3 (27, 29). 74 elementary rules of cellular B/U code conversion. 0 0 1 +   1 0 1 +   + 0 1 +    0 1 +  0 0 0 + + + 0 1 1 0 0 0 1 1 0 + + 0 + + 1 0 0 + + 1 1 1 0 0 1 1 1 0 1 0 1 1 1 + + + + 1 1 0 +   + +          +         1  1 1  0  1 1   

  +  

 0 1 +  0 1 +      

 + +   

The CA model capable of B/U code conversion is given by: A = {0, 1, +, , }, radius r = 1 and the local function

 : A3  A shown in Table 3. The rows of each table determine the state of the cell’s left neighbour, the columns

determine the state of the cell’s right neighbour, and the head of each table shown in a box corresponds to current state of a cell. Note that not all ER’s are specified; only 74 suffice to support B/U code conversion. A dot  denotes the quiescent state, thus the ER of the form (, , , ) is also included to the set. We illustrate how cellular B/U code conversion proceeds by showing the ST diagram for  = 0 ... 17. Note that a0 contains the numbers L from 0 to 7. The unary code of L is seen as a segment of L consecutive elements x.                  

= = = = = = = = = = = = = = = = = =

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17

..1.....10......11......100.......101........110.........111.......0.... ..0+....1++.....10+.....10++......100+.......11++........110+......1+... ...+x....0+x....1++x....1+0+x.....10++x......100+x.......11++x......0x.. ..x1+.....++.....0x+.....1+++.....1+0x+......10+++.......100x+.......... ..xx0x...x1+x.....++x.....0x+x.....1+++x.....1+0x+x......10+++x......... ..x......xx1+....x1x+......+x+......0xx+......1++x+......1+0xx+......... ..x......xxx0x...xx1+x....x1x+x......+x+x......0xx+x......1++x+x........ ..x......xx......xxx1+....xx1x+.....x1xx+.......+xx+.......0xxx+........ ..x......xx......xxxx0x...xxx1+x....xx1x+x.....x1xx+x.......+xx+x....... ..x......xx......xxx......xxxx1+....xxx1x+.....xx1xx+......x1xxx+....... ..x......xx......xxx......xxxxx0x...xxxx1+x....xxx1x+x.....xx1xx+x...... ..x......xx......xxx......xxxx......xxxxx1+....xxxx1x+.....xxx1xx+...... ..x......xx......xxx......xxxx......xxxxxx0x...xxxxx1+x....xxxx1x+x..... ..x......xx......xxx......xxxx......xxxxx......xxxxxx1+....xxxxx1x+..... ..x......xx......xxx......xxxx......xxxxx......xxxxxxx0x...xxxxxx1+x.... ..x......xx......xxx......xxxx......xxxxx......xxxxxx......xxxxxxx1+.... ..x......xx......xxx......xxxx......xxxxx......xxxxxx......xxxxxxxx0x... ..x......xx......xxx......xxxx......xxxxx......xxxxxx......xxxxxxx......

The ST diagram permits one to understand how the conversion is realised. Note that the binary segment of the initial configuration operates like a residue number system (RNS) counter; it is decremented. On the right hand side of the counter two waves are generated. At the beginning of counting the front wave starts; its speed is 1/2. At the end of counting the final wave arises; it has the speed 1/1. When the waves meet, the final configuration is stabilised. The process can be observed on pixel ST diagrams shown in Fig. 11 for various values of L.

374

FIGURE 11. ST diagram of B/U code conversion for: 0  L  28, 29  L  42 and 43  L  52.

The ST diagrams can reveal certain characteristic coherent objects which may be classified as particles. E.g. the string a = ...x1x... exhibits periodic evolution for the set R = {(x, x, x, x), (x, x, 1, x), (x, 1, x, x), (1, x, x, 1)} of ERs. This pair, that is the string and set of ERs, represents the final wave mentioned above. We will use this concept of a pair (a, R) as our definition of the particle. The particle of the CA model is a string  a and a subset R   of ERs ( : A2r+1  A), such that a global periodic evolution of a can be performed. This definition implies a function  : A2r+1  Q where Q represents a set of identifiers of particles. This function  is essentially a combinational recoding of ST diagram. TABLE 4. The particles of cellular B/U code conversion. 0 0 1 +   1 0 1 +   + 0 1 +   0 B B D G G 0 B B D G 0 D D G I W 1 B B D G 1 B B D G 1 D D G M M + G G + D D D + I I W  C  M S  F W  E E G  L L L G  P P

 0 1 0 1 +  C F  P

+ I M F F

 I S F F F

 C W F F

 0 1 +  0 1 +   E L P F

 W W W F Q

Some other attributes of the string a can also be considered to distinguish a particle, e.g. its particular functional role in the computation. Here we show some particles of the cellular B/U code conversion task. These are specified in Table 4, by a function A3  Q, where Q = {Q, B, D, L, S, G, I, W, F, E, P, M, C} is the set of identifiers of particles. The particles have been determined with respect to their roles in the conversion, which are as follows: Q - stabilisation of a background (quiescent state), B - stabilisation of the counter state, D - decrementation of the counter (moves of the symbol +), L - left edge of the counter, S - stop signal or final wave; its velocity is 1/1, G - generator of the counter (or 0 position bit), I - isolation between counter (at left) and waves (at right), W - front wave; it propagates to the right with velocity 1/2, F - final configuration, E - erasing of the counter after its 0 state, P - pushing of final wave, M - meeting of front and final waves, C - stabilisation of right edge of the unary code segment.

375

TABLE 5. Some particles of B/U code conversion; raw and recoded (partially) ST diagrams. L = (1011)2. \i -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

1 1 1 1 1 1 1                   

0 0 0 0 0 0 + 1 1 1                

1 1 1 0 0 + 1 0 0 + 1               

1 0 + 0 + 0 + 0 + 0 + 0              

 + +  +  +  +  +  + 1            

   + +          1           

     + +         1          

       + +        1         

         + +       1        

           + +      1       

             + +     1      

               + +    1     

                 + +   1    

                   + +  1   

                     + + 1  

                       + 0 

                         

1 1 1 1 1 1 1                   

0 0 0 0 0 0 + 1 1 1                

1 1 1 0 0 + 1 0 0 + 1               

1 G G G G G G G G G G G  P P F F F F F F F F F F F

 W W I I I I I I I I I I P S F F F F F F F F F F F

  W W W F F F F F F F F F S S F F F F F F F F F F

                                            W           W           WW          F W          F WW         F F W         F F WW        F F F W        F F F WW       F F F F W       F F F F WW      S F F F F W      S S F F F WW     F S S F F F W     F F S S F F WW    F F F S S F F W    F F F F S S F WW   F F F F F S M F W   F F F F F F S M WW  F F F F F F F MMW  F F F F F F F F MMW F F F F F F F F C C C

As it was mentioned, defining of particles by subsets of ER’s means the recoding of ST diagrams onto particle symbols. We illustrate such a recoding in Table 5. The positions (or behaviour) of some chosen particles (C, F. G, I, M, P and S) are clearly seen.

3.2. Particles as Subsets of Elementary Rules In order to extract particles from ST diagrams of classical CA a sequential filter has been proposed in (15). First, some preliminary analysis of the ST diagram is needed to determine the regular background domains. The domains permit us to construct an appropriate automaton the domain filter (H-C filter). The filter is then applied independently to each row of the ST diagram. This technique uses essentially a 2r-window scanning the diagram rows and results in automata defined on De Bruijn graphs G2r. Such transducers permit one to localise inter-domain walls or dislocations. The H-C filter was used in certain analysis of particle roles in cellular computations (10, 16). Let us note here that the same particle extraction can be obtained by applying the idea of subsets of ER’s. Recoding of ST diagram by means of some function  : Ak  Q (k  2r+1) permits us to distinguish all segments within Ak which represent dislocations. Notably, the condition for k allows us to treat the set Q of identifiers of particles as outputs of Mealy automata G2r = (A2r, A, Q, , , s0), such that  ((a1, ..., a2r), a2r+1) = (a2, ..., a2r+1), and  (a1, ..., a2r+1)  Q. This means that particles on ST diagrams are represented by outputs. Nevertheless, the graphs G2r are such that  operates like FIR filter: the values of  can be determined simultaneously over the entire string ...ai... , and sequential processing of diagram rows is not necessary. Let us illustrate our technique of ST diagrams recoding using the CA that performs the classification task (9). Example 2. Consider CA with so called GKL (9) local function  : A7  A which is such that  -1 (1) = {110, 11, 11}. ST diagram, presented below, has initial configuration a0 with 18 zeros and 17 ones. Let us assume the set Q = {0, 1, 2, 3, 4, 5, 6} with 6 particles, and define the recoding function  : A4  Q to be such that:  (0001) = 1,  (1110) = 2,  (1011) = 3,  (0100) = 4,  (1001) = 5,  (0110) = 6, and  (w) = 0 for all others w  A4. The results  (a1, a2, a3, a4) are placed on the position of a4. At left there is an original diagram, and at right its recoded version. The symbol 0 is printed as a dot on both diagrams.

376

                     

= = = = = = = = = = = = = = = = = = = = = =

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

111111.........1111111....11..11... 11111.1........111111.1...11..1.... 1111.1.1.......11111.1.1..11....... 111.1.1.1......1111.1.111.1........ 11.1.1.1.1.....111.11111.1.1....... 1...1.1.1.1....11111111.1.1.1...... .......1.1.1...1111111.1.1.1.1..... ..........1.1..111111.1.1.1.1.1.... ............11.11111.1.1.1.1.1.1... ............11.1111.1.1.1.1.1.1.1.. ............11.111.1.1.1.1.1.1.1.1. ............11.11.1.1.1.1.1.1.1.1.1 1...........11.1...1.1.1.1.1.1.1.1. .1..........1...1.....1.1.1.1.1.1.1 1.1......................1.1.1.1.1. .1.1........................1.1.1.1 1.1.1..........................1.1. .1.1.1............................1 ..1.1.1............................ .....1.1........................... ........1.......................... ...................................

1.....2........1......2...1.6.5.6.. 1....2..4......1.....2..4.1.6.5.4.. 1...2....4.....1....2....45.6...... 1..2......4....1...2...3.1..4...... 1.2........4...1..2.3...2....4..... 1...1.......4..1.......2......4.... .......1.....4.1......2........4... ..........1...45.....2..........4.. ............1.6.3...2............4. ............1.6.3..2..............4 4...........1.6.3.2................ .4..........1.6.36................. ..4.........1.6..4.1............... ...4........1.4.1.4...1............ ....4....................1......... .....4......................1...... ......4........................1... .......4..........................1 ..1.....4.......................... .....1...4......................... ........1.4........................ ...................................

3.3. Cellular Automaton Supporting the FPU Dynamics Let us consider a mechanical dynamical system shown in Fig. 12. Identical masses m, coupled with nonlinear springs, constitute a one-dimensional discrete Toda lattice (23). Periodic boundary conditions are assumed.

m

m

m

xj-1

xj

xj+1

  

  

FIGURE 12. Toda lattice, a starting point for CA that support the FPU dynamics.

By xj we denote the displacement of mass j from its equilibrium position. Then we have: m

d 2x j dt 2

= f (xj+1) + f (xj-1) - 2 f (xj),

j = 1, 2, ..., N,

where f (xj+1 - xj) = f (xj+1) - f (xj) is the force with which mass j+1 effects mass j. Assuming: d 2x j dt 2

t  ti =

x j (ti  1)  2 x j (ti )  x j (ti  1) ( t ) 2

for the second derivative, we obtain the difference equations and the following solution of equations of motion: xj(ti+1) = 2 xj(ti) +

ai-1

( t ) 2 [f (xj+1(ti)) + f (xj-1(ti)) - 2 f (xj(ti))] - xj(ti-1). m

i a4

ai-1 ai ai+1



ai+1

a1 a)

a2 a5

a3 b)

FIGURE 13. Space-time window of a cellular operator that exhibits the FPU dynamics.

377

Now, let us introduce the finite alphabet A = {0, 1, ..., n - 1} and the notation from Fig. 13a. Then the solution of equations of motion has the form: (1) ai  1 = 2 ai - ai  1 + f ( ai 1 ) - 2 f ( ai ) + f ( ai 1 ) (mod n) where the nonlinear function f is given by: f (a) = 1 for a = 0 and f (a) = a for all a  0. Using the variables from Fig. 13 b) we construct the Moore cell c = (S, X, Z, , , s0) to be such that: S = A2 = {(a4, a2)}, X = A2 = {( a1, a3)}, Z = {(a2)} and  ((a4, a2), (a1, a3) = (a2, a5) and  (a4, a2) = a2, where a5 = 2a2 - a4 + f (a3) - 2 f (a2) + f (a1) (mod n) according to the formula (1). Now, we can arrange experiments and show that the general CA with cells c support coherent periodic objects that resemble the FPU dynamics. Example 3. Assume the alphabet A = {0, 1, 2, 3}; n = 4. The cell c constructed above, is shown in Table 6 (at left). Let M4 = (S, X, Z, , , s0) be a reduced Moore form of this cell. Automaton M4 is shown at the right hand side of Table 6, and is such that now S = {0, 1, ..., F}, X = {2, 3, 4, 5, 6} and Z = A. The function  : {(zi-1, zi+1)}  X coupling the cells is such that  -1(2) = {00, 01, 10, 11},  -1(3) = {02, 20, 12, 21},  -1(4) = {03, 30, 13, 31, 22},  -1(5) = {23, 32} and  -1(6) = {33}. TABLE 6. Cell c of the general cellular automaton supporting FPU dynamics and the reduced form M4 of c.     a4a2 \ a1a3 00 01 02 03 10 11 12 13 20 21 22 23 30 31 32 33

00 00 12 22 32 03 11 21 31 02 10 20 30 01 13 23 33

01 00 12 22 32 03 11 21 31 02 10 20 30 01 13 23 33

02 01 13 23 33 00 12 22 32 03 11 21 31 02 10 20 30

03 02 10 20 30 01 13 23 33 00 12 22 32 03 11 21 31

10 00 12 22 32 03 11 21 31 02 10 20 30 01 13 23 33

11 00 12 22 32 03 11 21 31 02 10 20 30 01 13 23 33

12 01 13 23 33 00 13 22 32 03 11 21 31 02 10 20 30

13 02 10 20 30 01 13 23 33 00 12 22 32 03 11 21 31

20 01 13 23 33 00 12 22 32 03 11 21 31 02 10 20 30

21 01 13 23 33 00 12 22 32 03 11 21 31 02 10 20 30

22 02 10 20 30 01 13 23 33 00 12 22 32 03 11 21 31

23 03 11 21 31 02 10 20 30 01 13 23 33 00 12 22 32

30 02 10 20 30 01 13 23 33 00 12 22 32 03 11 21 31

31 02 10 20 30 01 13 23 33 00 12 22 32 03 11 21 31

32 03 11 21 31 02 10 20 30 01 13 23 33 00 12 22 32

33 00 12 22 32 03 11 21 31 02 10 20 30 01 13 23 33

a5 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3

s\x 0 1 2 3 4 5 6 7 8 9 A B C D E F

2 0 6 A E 3 5 9 D 2 4 8 C 1 7 B F

3 1 7 B F 0 6 A E 3 5 9 D 2 4 8 C

4 2 4 8 C 1 7 B F 0 6 A E 3 5 9 D

5 3 5 9 D 2 4 8 C 1 7 B F 0 6 A E

6 0 6 A E 3 5 9 D 2 4 8 C 1 7 B F

z 0 1 2 3 0 1 2 3 0 1 2 3 0 1 2 3

The ST diagram below illustrates an iterated computation performed by CA with cells M4. It shows the strings of the cell’s outputs instead of states. The symbol 0  Z is printed as a dot. To start a computation in this model the initial states of all cells (initial conditions) must be assumed. The chosen states are printed above the ST diagram in the row states. Outputs associated with these states form the configuration of row  = 0. A row  = -1 was added to the ST diagram to facilitate a verification of chosen states (represented by pairs (a4, a2) from Fig. 13 b). This model belongs to general CA, but it may be interpreted as a classical cellular automaton which computes the next configuration basing on the two preceding ones; a+1 =  (a, a-1). Such CA are called the second order CA.

378

STATES:

00000008700500642D000000000000D2000002E4000000870000002200000

                   

.......21..1..11.3............3.......31......21............. ........3..1..2.21............12.....22........3......22..... ........12.1.1112..............21...13.........12....1331.... .........211.2.3................3...............21....22..... ..........311121................12..31...........3........... ..........13212..................2122............12...22..... ..........1233.....................3..............21.1331.... ..........2133...................21................3..22..... .........113112.................1231...............12........ .........2211.21................322.................2122..... ........122.1..3...............223....................331.... ........311.1..12.............1321..................2122..... .......212..1...21.............12..................12........ ......1211..1....3............3....................3..22..... ......3.2...1....12..........2212.................21.1331.... .....2111...1.....21........13..21...............12...22..... ....12.2....1......3.............3...............3........... ....3.11....1......12.......31...12.............21....22..... ...21.2.....1.......21.....22.....21...........12....1331.... ..12.11.....1........3....13.......3...........3......22.....

= = = = = = = = = = = = = = = = = = = =

-1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

The collisions of coherent structures are solitonic: they are nondestructive and preserve the identity of colliders. One can note also two different signs of translational shifts (attraction and repelling), as well as bouncing of a particle. However, all these effects emerge for particular initial conditions. In general, when initial conditions are chosen in random, an expansion and dispersion of symbols is observed. This features of computational images are very similar to the dynamics known as FPU (Fermi-Pasta-Ulam) paradox (lack of equipartition of energy). Recent experiments and analysis (7) suggest that the FPU paradox is just connected with nongeneric initial conditions.

4. RECURSIVE FILTERS The paper (26) was the first that established a connection between the computational models and coherent, soliton-like structures well known in physics. It introduced special digital recursive filters (IIR), using the term filter cellular automata, however they were aimed at serial (and sequential) processing of strings. The model is interesting because of its capability of supporting coherent, periodic and moving substring particles. Since that time numerous similar models appeared in literature. All of them are described by recursive formulas, very inconvenient for analytical treatment. Here we present them using a unified description. Then, we show how these recursive filters can be replaced by their automata equivalents. Some of these automata belong to the special class of cyclic transducers, called here filter automata (FA) family.

4.1. Basic Model of Recursive Filtering We use the term PST filtering to refer to the model of Park, Steiglitz and Thurston (26). PST model belongs to the class of IIR filters. It operates over binary strings (A = {0, 1}), and is based on two notions. The first one is a special space-time window or field of 2r+1 arguments, shown in Fig. 14. It spreads over two rows of ST diagram. This type of window will be called here FCA window. The second notion is the Boolean parity function fPST : A2r+1  A, with a parameter r called the radius of window. Let us recall the definition of PST filtering.

t

            at i

ait1    ait r 1 ait  r   

t+1

   ait 1r ait 1r 1    ait 11 at 1 i

FIGURE 14 (33). FCA type window. In consecutive instants  of time it slides to the right.

Assume a configuration at time t, that is a string at = ... ait ... = ...0 a1t ... a tL 0... of elements from A = {0, 1}, such that: 0  t < , - < i < , 1  L <  and a1t , a tL  0. By definition the PST filter, denoted by (fPST, r), computes the next configuration at+1 (for fixed r) for all positions i (- < i < ) in such a way, that: 1 ait  1 = fPST ( ait , ait  1 , ..., ait  r , ait  r1 , ait  r1  1 , ..., ait 11 ) =  0

if Si , t is even but not zero otherwise

r r where Si,t =  ait  1j   ait  j . j 1 j0 It is seen that PST filters operate like sequential transducers. The FCA window moves to the right in discrete time instants . At each moment  a single new element of at+1 may be determined. It means that at each moment  the symbol ait  r is an input of the transducer, and the symbol ait  1 is its output. It is clear then, that the model operates with the range q = r. Zero boundary conditions are assumed which means that the segment a1t ... a tL is always preceded at left by enough zeros, and the computation may start from the zero content of the window.

379

The function fPST is also referred to as the parity update function. This function is totalistic, which means that it can be expressed as ait  1 = fPST (Si,t).

4.2. Other Models Based on FCA Window 4.2.1. AKT filters The filters (fAKT, r) were introduced in (1). We call them here AKT filters. This model uses the same FCA window as PST model, but the update function fAKT is different, and is given by: t   ait  1 = 1 if Si , t  0 is even or Si , t = ai = 1 .   0 otherwise Note, that fAKT is semitotalistic, thus can be expressed as ait  1 = fAKT ( ait , S i,t) where S i,t =

r

r

j 1

j 1

 ait1j   ait j .

From Table 7 one may verify that fAKT cannot be expressed using only S i,t. TABLE 7. Update function fAKT of the AKT filter. ait 0 0 0

S i,t 0 odd even

ait 1 0 0 1

ait 1 1 1

S i,t 0 odd even

ait 1 1 1 0

4.2.2. FPS filters A family of recursive filters was introduced in (11). Here, we call them FPS filters and denote by (fFPS, r). This model is a generalisation of PST filter. The working alphabet A has been extended (|A|  2) and is assumed to be any finite algebraic group G = {0, g1, ..., gn} with operation . Element 0 is the identity, thus 0  g = g  0 = g, and g r

g =g  g = 0 holds for any g  G whereg is the inverse of g. We will use also  j 1 gj = g1  ...  gr. For any initial configuration at = ...0 a1t ... a tL 0... of elements from G, the next configuration at+1 is computed for all positions i (-  i  ), sequentially from left to right, by a function fFPS:  0, if all factors ai of Si , t are 0, or  ait  1 = fFPS ( ait , ait  1 , ..., ait  r , ait  r1 , ait  r1  1 , ..., ait 11 ) =  S  c  ait  r , otherwise   i, t

  t r where Si, t =  j 1 (ait  1j  ait  r  j ) and c:= ai  r , if all factors of Si , t are 0, or .   c, otherwise Notice that an auxiliary (memory) variable denoted by c (carry) has been introduced in this model. 4.2.3. BSR-23 filters In (5) a family of recursive filters has been derived from a discrete Schrödinger equation. We present here a filter defined by formula 23 in (5), and call it BSR-23 filter; (fBSR-23, r). For r = 3 and |A| = 2 its update function is:

ait  1 = ait  ait  31 ait  21  ait  21 ait 11  ait  1 ait  2  ait  2 ait  3 .

380

4.2.4. Jiang’s filters Another model of binary string processing has been introduced in (20) and called a solitonic cellular automaton. Again this model, based on FCA type window, is essentially a sequential transducer or a kind of binary recursive filter. Here we call this model the J filter, and denote by (fJ, r). J filters apply extended FCA windows. The update function fJ : A2r+2  A is defined by:  0 if T  0 i ,t  t 1 t if T is odd ait 1 = fJ ( ait , ..., ait r 1 , ait1 a , ..., ) = , a  i r i 1 i ,t  t ai if Ti ,t  0 is even where Ti,t =

r

r 1

j 1

j 0

 ait1j   ait j , and ait is the complement of ait .

The function fJ is semitotalistic: it can be expressed by ait  1 = fJ ( ait , T i,t), where T i,t =

r

r 1

j 1

j 1

 ait1j   ait j .

The model has range q = r+1 and supports a superset of coherent structures comparing with the PST filters. 4.2.5. Fuchssteiner’s filters A model from (12) was aimed to generalise both the PST filters and FPS filters. Let us denote it by (fF, r) and refer to as F filters. As a matter of fact it generalises only the PST model. Similarly to FPS, the F filters assume an algebraic group as the working alphabet. However, apart from the group G, some associated maps fI, fU, fL and J are required, which fulfil the following compatibility condition: fL fI =fU and JfL J(0) = 0, where: the maps fI, fU, fL are all homomorphisms G  G, and J : G  G is any function such that J (0)  0. Heref denotes g  f ( g ) , G = {gi} is a group with operation , 0 is the identity of , andg is the inverse element to g  r

G;g  g = g g = 0. We will use also the notation  j 1 gj = g1  ...  gr. The configurations at =... ait ... (- < i < ) considered are such that ait  G and for each t there is some j  Z such that ait = 0 for all i < j. The F filters (fF, r) apply basic FCA windows. The function fF is defined by: 0, if all arguments are = 0, or  , ait  1 = fF ( ait , ait  1 , ..., ait  r , ait  r1 , ait  r1  1 , ..., ait 11 ) =  J ( Si , t )  f I (ait  r ), otherwise,   r where Si,t =  j 1 [ fU ( ait  r  j ) fL ( ait  1j )]. Function fU represents the upper part of FCA window, and fL the lower part. It is seen that the definition does not contain the carry variable c which is the case for FPS filters. Example 4. Consider F filter (fF, r) with r = 2, and the group (Z4, +) of congruence classes mod 4 with addition.

  conditions are fulfilled:f f =     =   =f , and Jf J (0) = 0;       =   . We have h = J(0) + f (a) = 2 + f (a) =   . Below, we show the ST diagram of iterations performed by filter (f , 2)  

Let us choose J = 0123 2301

L

I

 

 

0123 , and f = 0123 . The compatibility and the homomorphisms fL = 0123 , fU = 0132 I 0321 0312 0123 0123

I

I

0123 0312

0123 1203

0123 0312

U

L

0123 2301

0123 0123

0123 2301

0123 0123

F

over the initial configuration a0 =...02221110...023010...030...023310...022110...02310...02033010...; its range is q = 2. A dot replaces (external) zeros. One may easily notice that the cycle (h, fI, fI) of operations is performed over each configuration, starting from the first nonzero element until the segment 00 coincides with this cycle.

381

t t t t t t t t t t t

= 0 = 1 = 2 = 3 = 4 = 5 = 6 = 7 = 8 = 9 =10

................222111.......2301....3........2331..2211....231.....203301... ...............112331.......202....3.........222...132.....231......23031.... .............2313231........110003..........111002211.....231......203301.... ............233122........2301021.........2331010331.....231.......23031..... ...........222111........202012..........222031222......231.......203301..... ..........112331.........11311..........111230111......231........23031...... ........2313231........2322301........2330202331......231........203301...... .......233122.........210202.........2211..222.......231.........23031....... ......222111.........3...11.........132...111.......231.........203301....... .....112331........3...2301.......2211..2331.......231..........23031........ ...2313231.......3....202........132...222........231..........203301........

5. FILTER AUTOMATA AND FILTRONS 5.1. Family of Filter Automata Recursive filters based on FCA window are essentially sequential transducers of strings. To describe them we have proposed a special class of automata: the family of filter automata (FA). The idea of FA class was given in (30), and the definition in (27) and (32). Here, we present this class again in slightly extended form. The filter automaton is a sequential transducer F = (A, , , ), where: A = {0, 1, ..., m} is a finite set, called the alphabet of F, with m > 0,  : A  {0, 1} is a mapping, called the activating function of F,  : A  r+1  I is a partial mapping (r > 0) into a set of indexes; I = {0, 1, ..., m'},  = (h0, h1,..., hm’, f1,..., fr) is a sequence of mappings A  A, called the program of automaton F. Automaton F converts strings in serial and generates outputs in time instants  according to the following order: ) if  (a )  0  h (a - next [h0(a)] =  0  1 , and c:= a , f ( a ) if  (a )  0 1   1  ) if  (a ) is defined h (a - next [hi(a)] =  j  1 , where j = (a ) and 0 < i  m,  f1(a 1) otherwise ) if  (ai  ) is defined h (a - next [fi(a)] =  j  1 , where j = (ai) and 0 < i < r, f ( a otherwise  i 1  1) ) if  (ar  ) is defined h (a - next [fr(a)] =  j  1 , where j = (ar ). h ( a otherwise  c  1) In the above ai = (a-i, a-i+1, ..., a) denotes a (i+1)-segment which coincides with a current cycle of the automaton's activity, and A  r+1 is used instead of A  A2  ...  Ar+1. The cycles and operation of FA are illustrated in Fig. 15. By a_  A  r+1 we denote current segment ai  of a string.

382

j := c

j:=(a) 0

hj  a

c := a 0 T

U - undefined

h0  a  

f1

0

F 0

 a_  U

f2  a_

0

 

upholding

 

0

U

of activity cycle

extinction of activity cycle

fr  a_ 

0 c0

 

U

0 c0

FIGURE 15 (27, 32). Flow chart of processing performed by filter automaton F = (A, , , ).

The filter automaton operates in two modes, it is either inactive or active. The inactive filter automaton waits for the occurrence of an activating element (such as  (a) = 1) while the read symbols are output as h0(a). We assume 0  A to be the quiescent symbol, which means that h0(0) = 0. When the filter automaton is activated, successive operations of its program  are executed; we say that the automaton performs its cycle of activity. The possible cycles are: (hi, f1, ..., fL), where 0  L  r. Each cycle followed by mapping h0 is said to be an extinction cycle, and each cycle followed by hi for i  0 is said to be an upholding cycle. We say that the filter automaton performs an idle action at moment  if it performs operation h0 at the same time. The set of indexes for hi is chosen often as I = A. Any (L+1)-tuple a_ AL+1, 0  L  r, such that (a_) = 0 will be called the reset condition of automaton F or the extinguishing segment. Once activated, the filter automaton F remains active until some reset condition coincides with a cycle of its activity. From the above it is seen that filter automata feature the following properties. 1. The states are eliminated; instead two modes of operation are in use: a filter automaton is either inactive (extinguished or idle) or active. 2. The operation of filter automata is described by three notions ( , , ): - activation (conditions which force its activity), - extinction (conditions which cause the automaton to be idle or to start a new cycle), and - processing (cycles of operations from  which convert read symbols). 3. The activity of FA is a cyclic process; operations (program ) are performed one at each instant  of time. The cycle of operations can be shortened, and run again or extinguished. A number of distinct cycles is possible. 4. The outputs of FA are based on the same principle as in Mealy machine M from Fig. 1. At each moment   when the state s of the machine is fixed  each output symbol z depends on the input letter x which is read by the machine at this moment; so the responses are determined by the operation fs : X  Z (A  A). 5. The inactive mode is stable, which means that there is an input symbol 0  A (the so called quiescent or zero symbol) which rests the filter automaton F in inactive mode until an activating symbol is read. The output returned by the inactive automaton is also assumed to be quiescent (h0(0) = 0). The model of FA is a generalisation of some recursive filtering formulae in the following sense: a) any alphabet A = m+1 can be used, not only the binary one {0,1}, or a group type,

383

b) any k-tuple is allowed as the reset condition (0 < k  r+1), not only strings of the form 0r which is the case in PST filtering and FPS filtering, c) any (r+1)-tuple of mappings A  A may constitute the cycle of automaton's activity; note that in PST filtering and J filtering only two types of (r+1)-cycles are employed: either 0Ar or NAr where A denotes the accept operation (id.), and N the negate operation, d) the lengths of cycles of the automaton’s activity may be differentiated, not necessarily equal r + 1, Note also that the range q is now excluded from the definition of processing. Filters PST, AKT, FPS, BSR and F use actually q = r, and J filter uses q = r+1. It can be chosen arbitrarily to visualise computations on ST diagrams. To illustrate the notions introduced above we will show how the filter automata operate. Example 5. Let us consider automaton FS = (A, , , ) from (27), such that A = {0, 1, 2, 3}, (a) = 1  a  0, (0000) = 0. Also, we assume r = 3, I = A and program  = (h0, h1, h2, h3, f1, f2, f3) with functions:

 

 

 

 

 

 

0123 , h = 0123 , h = 0123 , h = 0123 , f = f = 0123 = id., f = 0123 . h0 = 0000 1 2 3 1 3 2 3022 2301 1230 0123 0000 0

We chose initial configuration a = ...0303013031312120333221203130... . Below, we show ST diagram of iterations of mapping FS for t = 0 up to t = 16. Range is q = 0. t t t t t t t t t t t t t t t t t

= = = = = = = = = = = = = = = = =

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

..30301303131212033322120313------.............................. ....202303231222030332220323001-----............................ ......332333323223031232233320102-----.......................... .......3330322023313120233033020301----......................... ........3200230332101303320030213011----........................ .........2003303021023030200003100111----....................... ............310200102102----.231021112-------................... .............102101031021----.310011100002----.................. ...............31310300313-----100211010021----................. ................121130001201----..2010130313------.............. .................2112----2013----...10330333002-----............ ..................1122----.132-----...23332330303-----.......... ...................1323----.3303----...323032010202----......... ....................3333----.3031----...220020112021----........ .....................3231----..211-----..200001100312----....... ......................2211----..1102----.....211023122-------... .......................2112----..1023----.....110031200002----..

We have used three different characters to denote symbol 0  A. A dot . denotes zeros read by the automaton which is inactive. A dash - represents tail zeros of a segment, that is all consecutive zeros preceding immediately the extinction of automaton F. All the rest symbols zero are printed as 0. Moreover, all those symbols that activate the automaton are printed in bold. Such a convention makes it easy to recognise at first glance whether two objects are distant, adjacent or even interact. Also, it is easy to determine the number of connected segments contained in a string. Note, that each connected segment begins with an activating symbol and extends up to extinction. Let us consider a row t = 6 to follow in details how the processing of configuration a6 was accomplished.

 :

1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 12345678901234567890123456789012345678

w1: w2: w3: w4:

00031020010210200000231021112000000000 h0h0h0h0f1f2f3h3f1f2f3h3f1f2f3h3f1f2f3h0h0f1f2f3h2f1f2f3h2f1f2f3h2f1f2f3h0h0 - - - ( # 1 )( # 2 )( # 3 )( # 4 )- ( # 5 )( # 6 )( # 7 )( # 8 )- iiiiaaaaaaaaaaaaaaaiiaaaaaaaaaaaaaaaii

The symbols should be read from left to right in all sequences for  = 1 to 38. There is input string a6 in row w1. The operations performed by automaton FS are shown in row w2. In row w3 we indicated scopes and labels of successive cycles of automaton’s activity. Row w4 shows the modes of automaton FS which is either idle (i) or active (a). Input string a6 implies the active mode of automaton FS twice: at moment  = 4 and  = 21 (there are two connected segments). Eight cycles of the automaton’s activity were involved. Those designated by #1, #2, #3 and #5, #6, #7 are upholding cycles. The cycles #4 and #8 are extinction cycles, since both coincide with 0000 which is the extinguishing segment. The segments of a6 are underlined in row w1. The first segment has four tail zeros, and the second has seven such zeros. The cycles #4 and #5 are separated by one symbol but by two idle actions. In general, idle actions may separate different objects or may form a hole in certain single complex object. Filter automata F arranged in a pipeline shown in Fig. 4 form a sort of automaton medium. During processing of strings ...ai... the successive symbols ai decide about activity and operations performed by automata: medium and signal effect one another. Thus the family of FA seems to simulate in a way the interactions between one-dimensional environment and propagating disturbance. Moreover, the parameters ,  and  of automaton medium can be easily tuned. One may also consider nonhomogeneous media by changing some automata in a pipeline.

384

5.2. Automaton Description of Recursive Filters 5.2.1. Automata of PST filters In (31) it was shown that PST filters belong to FA model. Actually, the family F = (A, , , ) is such that: A = {0, 1}, -1(1) = {1}, -1(0) = {0r} = {00r, 10r} (there are two reset conditions), and  = (h0, h1, f1, ..., fr), where h0 = 0, h1 = N (negate), f1 = ... = fr = A (accept). The possible cycles of processing (h0, f1, ..., fr) and (h1, f1, ..., fr) have the form NAr. In Fig. 16 we present the state diagram of Mealy automata MPSTr which are equivalent to PST filters (fPST, r). The automata are cyclic. Also, one can note the layers of states: s0 and s2r are in first layer N, s1 is in second layer A, and the pairs (s2, s3), (s4, s5), ..., and (s2r-2, s2r-1) constitute remaining layers A. 0/0

s0

0/0

s3

0/0

1/0

0/0

s5

0/0 0/0 s 2r-1

0/0 1/1

s1

1/1

0/1

1/1

1/1

1/1 1/0

s2r

1/1

s2

s4

0/0

1/1

1/1

0/0

0/0 1/1

1/1

s2r-2 0/0

0/0

1/1

FIGURE 16. Automata MPSTr  (fPST, r) with |S| = 2r + 1. Cycles of activity are of the form NAr.

5.2.2. Automata of AKT filters In the paper (33) certain Mealy automata were constructed which are equivalent to AKT filters (fAKT, r). This family is shown here in Fig. 17. The outputs (function ) of automata MAKTr are determined by means of boxes: input symbols in boxes are complimented by MAKTr while all others are rewritten. The initial state, denoted by 0, represents idle mode of the filter. 0 0 0 0

1 1

0

1

0

2r+1 0

1 0

1 2

0

5

0 1

1

1

3r

2r-1

3

1

0

1

0

1

2r+2

0 1

4

0

6

1 0 1 0

1

0 2r-3 1 1 0 1

3r-2

0 2r-2

0

0 1 1 0

1

3

0 3r-1

9

2r

5

7

8

4

6

1 0

2

1

r=3

FIGURE 17 (33). State diagram of automata MAKTr  (fAKT, r) and an example of state numbering for r = 3.

It seems that automata MAKTr do not belong to the class of FA. Note, that one could choose I = {0, 1, 2}, and a program  = (h0, h1, h2, f1, ..., fr) with h0 = 0, h1 = N, h2 = 1 and f1 = ... = fr = A. Then operation h0 is attached to state 0, h1 to state 3r and operation h2 to state 2r-1. However, even in this case the function , which determines the succession of activity cycles, cannot be defined on the set A  r+1. One may check this by verifying the succession of cycles and their forms read from the state diagram of automata MAKTr. There are the following transitions: (h0, f1, ..., fr-1) - from state 0 to state 2r-1, (h0, f1, ..., fr) - from state 0 to state 3r, (h1, f1, ..., fr-1) - from state 3r to state 2r-1, (h1, f1, ..., fr) - from state 3r to state either 3r or 0, (h2) - from state 2r-1 to state 3r, (h2, f1, ..., fr) - from state 2r-1 to state either 3r or 0.

385

5.2.3. Automata of FPS filters FPS filters belong to the class of filter automata F = (A, , , ). Set A is chosen to be a group {0, 1, ..., m}. Activation of F is such that  (a) = 1 for all a  0. For fixed r, all cycles of activity are (hi, f1, ..., fr) and have the same length r+1. The extinction conditions are given by -1(0) = {0r}. The functions of program  are: f1 = ... = fr = id, h0 = 0, and all remaining mappings hi, i  I, follow from group operation. Also, we have I = A. Let us illustrate the operation of this type of automaton F. We assume A = {0, 1, 2, 3} and r = 3. The cycles of

 

 

 

0123 , h = 0123 , h = 0123 . activity are (hi, f1, f2, f3) where h0 = 0, f1 = f2 = f3 = id (A) and h1 = 3012 2 3 2301 1230

t t t t t t t t t t

= = = = = = = = = =

0 1 2 3 4 5 6 7 8 9

··10231101----·············· ····2301013-----············ ·····30121302----··········· ·······1223021-----········· ········22332103----········ ·········23301032----······· ··········33030322----······ ···········30313221----····· ·············3102211-----··· ··············10231101----··

(h0AAA)(h1AAA)(h1AAA) (h0AAA)(h2AAA)(h2AAA) (h0AAA)(h3AAA)(h3AAA) (h0AAA)(h1AAA)(h1AAA) (h0AAA)(h2AAA)(h2AAA) (h0AAA)(h2AAA)(h2AAA) (h0AAA)(h3AAA)(h3AAA) (h0AAA)(h3AAA)(h3AAA) (h0AAA)(h3AAA)(h3AAA) (h0AAA)(h1AAA)(h1AAA)

The ST diagram above shows the evolution of configuration a0 = ...0102311010... and the cycles of operations involved. In all cases the extinction occurs in the third cycle according to condition  (0000) = 0. The boxes are used to show the role of the memory variable c. The symbol 1, when encountered at the beginning of second cycle, returns three different results under hi: h1 (1) = 0, h3 (1) = 2 and h2 (1) = 3 for t = 0, 2 and 5, respectively. At each t the operation hi of the second cycle is determined (indexed) by activating symbol: a10 = 1, a12 = 3 and a15 = 2. 5.2.4. Automata of BSR filters FCA window of filter (fBSR-23, 3) is shown in Fig. 18. There are three types of variables associated with the window: x is an input variable, y1 ... y6 are state variables and z is an output. Such a separation of window elements permits us to identify (33) the equivalent transducer. Function fBSR-23 is given by: z = y4  y1y2  y2y3  y5y6  xy6.

y4 y5 y6 x y1 y2 y3 z FIGURE 18. FCA window (r = 3) of BSR-23 filter; z = y4  y1y2  y2y3  y5y6  xy6.

We show the minimal state Mealy automaton MBSR-23 in Table 8. This transducer does not belong to FA family. TABLE 8. Automaton equivalent of the filter (fBSR-23, 3).



s\x 0 1 2 3 4 5 6

0 0 2 4 C 0 2 A



1 1 9 5 7 8 3 B

0 0 0 0 1 1 1 1



1 0 1 0 0 1 0 1

s\x 7 8 9 A B C D

0 6 2 0 C A 2 6

1 D 8 7 9 3 D B

 0 0 0 1 1 1 1 0

1 1 1 0 1 0 1 1

5.2.5. Automata of Jiang’s filters In Jiang’s filters the update function fJ : A2r+2  A is a Boolean function; |A| = 2. Its definition makes use of a parity property, thus it can be simply represented by an expression based on the operator  (XOR). Such an expression can be useful also if one is interested in deciding the amount of nonlinearity of a function. For the function fJ we have: z = fJ(y1, y2, ..., yr+1, x, yr+2, ..., y2r+1) =x y1 y2  ... y2r+1 x  y2  y3  ...  y2r+1, where input, state and output variables are situated as it is shown in Fig. 19.

386

y1 yr+2 yr+3 . . . y2r+1

. . . yr

yr+1

x

z

FIGURE 19 (33). FCA window and its variables in the case of Jiang’s filters.

Mealy equivalents of filters (fJ, r) have been identified in (33). We show minimal state automata MJr in Fig. 20.

0/0

0/0

0 0/0

0/0

r+2

1/0

r+1

0/1 1/0

1/1

0/0 1/1

2r+1

1/1

0/0

0/0

1/1

r-1 1/1 1/1

1

0/0 1/1

0/0

2r

1/1

0/0

0/0

r 1/1

1/1

FIGURE 20. Family of minimal state automata MJr  (fJ, r).

Automata MJr belong to the class of FA. All their cycles (hi, f1, ..., fr) have the length r+1 and are of the form NAr. The negate operation fs (a) = N(a) is executed in the state s = r+1 and also in state 0 when a = 1. It can be easily verified that the only current segment that leads to the initial state is (r+1)-tuple of zeros, thus  -1(0) = {0r+1}. 5.2.6. Automata of Fuchssteiner’s filters One can easily verify the consequences of compatibility conditions, fL fI =fU and JfL J(0) = 0, which were assumed for F filters. The model operates in cycles. All the cycles have the fixed length r+1 and all are such that h0 = h1 = ... = hn = J(0)  fI, and f1 = f2 = ... = fr = fI where A = G = {0, g1, ..., gn}. The (active) processing starts when a nonzero element enters the window, and is performed until the current segment 0r will be encountered (it can be seen in Example 4). This means that Fuchssteiner’s filters (fF, r) belong to the FA family.

5.3. Filtrons The idea of the filtron as a coherent object supported by automata, was inspired by the PST model (26), and first presented in (30, 31). Later, the term filtron and its more general definition have been introduced in (27, 32, 33). Any finite sequence a_ = a1a2 ... aL of symbols from A, such that a1  0 and L > 0, will be called an L-segment. Suppose that at = ...0at_0..., an initial configuration which contains an Lt-segment at_, is passed iteratively through an tp automaton M. If the string at is such that ai  d  ait holds for some integer p  1, for all -  i   and t  0, then it is said to be a periodic string. The smallest integer p with the above property is called the period of a string. The integer d is called the displacement of a periodic string. In (26) the ratio d/p was defined to be the speed of a moving, periodic string. Note, that in a pipeline of automata M it represents rather a delay of this string. Let us recall now the definition of filtron at_ of an automaton M (27, 32, 33) (in a slightly changed form). Any Lt-segment at_, which is a substring of the p-periodic string at = ...0at_0..., such that for each t = 0, 1, ..., p-1 the automaton M is activated, remains active up to the last symbol, and then is extinguished by at_ but only once, is said to be the p-periodic connected filtron of M. The sequence a0_, a1_, ..., ap-1_ is called the orbit (26) of a filtron, and each at_ is its orbital state. Note, that by this definition the tail zeros mentioned earlier (in Example 5) belong to a filtron. Nevertheless, sometimes we will specify the filtron symbols omitting last tail zeros. Periodic objects of period p, which  at least for one t  {0, 1, ..., p-1}  activate the associated automaton M more then once are said to be not connected. They imply internal idle actions of M. Such objects may have a very complicated internal structure and vary in many parameters, e.g. in their numbers of connected segments, distribution of internal idle actions, the numbers of cycles involved, etc.. Some classes of such objects were identified (30, 32). In

387

general they are referred to as complex filtrons. Here, we will use the term filtron as general one, that is for periodic connected objects as well as for complex ones. Let us emphasise that our definition of the filtron is not only restricted to the family FA. Notice, that any string converted by the arbitrary automaton M implies a unique path on its state diagram. For any M we say that M is activated if it leaves the initial state s0. In this case any symbol a  A such that  (s0, a)  s0 is an activating one. Also, M is being extinguished if it enters its initial state s0 from some s  s0. Using this interpretation, by the filtron of automaton M we understood any Lt-segment at_ = a1t a 2t ... a t which being iteratively converted by M is such that: 1) Lt

it has p different forms for t = 0, 1, ..., p-1 (at = ...0at_0... is p-periodic), 2) each path implied by at_ goes out of s0 (activates M) with symbol a1t and returns to s0 for the first time (extinguishes M) with symbol a t . Lt Now, we will illustrate some notions mentioned above and associated with the idea of filtron. Example 6. Let us consider the filter automaton F5 = (A, , , ) where A = {0, 1, 2, 3}, -1(1) = {1, 2, 3}, -1(0) =

 

 

 

0123 , f = f = id, f = 0123 . {30**, *000} and  = (h0, h1, h2, h3, f1, f2, f3) with: h0 = 0123 , h1 = h2 = h3 = 1031 1 3 2 0031 2301 5

The ST diagram given below (q = 0) shows a filtron of period p = 5 (a = a ). In each row the first a1t and last aLt symbols of Lt-segment are given. It is seen that the left edge symbols of the filtron are  = (a14, a13, a12, a11, a10) = (3,1,3,1,1). The filtron is characterised also by the row displacements  = (d4, d3, d2, d1, d0,) = (2,0,2,2,0). At the right hand side the numbers ct of cycles which were enforced on automaton F5 are listed, too. t t t t t t

= = = = = =

0 1 2 3 4 5

...103-----......... .....10102---....... .......303-2---..... .......1010302-..... .........301-....... .........103-----...

a10 a11 a12 a13 a14 a15

= = = = = =

1 1 3 1 3 1

a80 a81 a82 a83 a44 a85

0

= = = = = =

0 0 0 0 0 0

d0 d1 d2 d3 d4 d5

= = = = = =

0 2 2 0 2 0

c0 c1 c2 c3 c4 c5

= = = = = =

2 2 2 2 1 2

The presented filtron is a complex object. It involves the variable number of cycles of activity (e.g. c0  c4). Also, it is not connected. The orbital state a2_ activates twice automaton F5 and consists of two connected segments. Tail zeros have been denoted by a dash character and are easily seen. Two instances of p-periodic connected filtrons can be seen in the ST diagram of Example 5. Some other examples will be given further. Here we wanted to illustrate the definition of filtron and show some elements which describe this entity. Some parameters of filtrons are useful in their classification (30, 32). The most important parameter characterising of filtrons, introduced in (30) and explained in detail in (32), is its edge number (based on the sequence ). It permits us to analyse the filtrons and their supporting automata analytically. The main tool, a ring computation associated with given filtron, was also presented in (30) and (32).

6. SOME PHENOMENA OF INTERACTING OF FILTRONS Interacting filtrons exhibit remarkable richness of behaviour. Most phenomena depend on the automaton medium which supports them. Nevertheless, for a fixed automaton different events can be observed by changing the filtrons and their mutual positions in an initial configuration. An analysis of possible collisions of two filtron type objects (their determinants) was already given in (26) for PST filters. Later, in (35), the tables of collisions were even applied to arrange some computations. A series of papers written by Fokas and co-authors was also devoted to analysis of possible collisions of (binary) filtrons. In general the colliding filtrons demonstrate four classes of behaviour. These are: - transformation of colliders, including their dispersion, - annihilation, - nondemolition passage of one filtron throughout another, an event called solitonic collision, - fusion of colliders resulting in steady filtrons, complex filtrons or unstable coherent quasi-filtrons. Now, we will show some phenomena of interacting filtrons: multifiltron collisions (some of them solitonic), trapped filtrons and creation as well as a decay of quasi-filtrons.

388

6.1. Collisions We start by showing some interactions between a filtron and a bundle of filtrons. Some examples of filtron bundles were also given in (5, 35). Here, in Fig. 21, two identical filtrons 10111011011101 enter the bundle of the form 1010101010... and undergo a diffraction. In Fig. 21 a), one filtron is accelerated while the other is delayed, thus their distance have been decreased. Fig. 21 b) and c) show an interaction of filtrons within the bundle. All these collisions are supported by automaton MBSR-23.

a)

b)

c)

FIGURE 21. Interactions of filtrons with a bundle of filtrons; automaton MBSR-23  (fBSR-23, 3), q = 5.

Now, consider two ST diagrams of processing performed by automaton FS defined in Example 5.

FIGURE 22. Different results of collisions of two filtrons supported by automaton FS; range q = 5.

In Fig. 22, each initial configuration a0 contains two filtrons: 1 and 2323220020030202. This four images are typical, and were chosen from a huge set of similar images. The different outcomes have been caused by changes in initial distance between colliders. Second example with FS is shown in Fig. 23. ST diagram starts with the initial configuration a0 = ...02031200002019200200101130020933233320713030722110... which contains seven filtrons.

FIGURE 23. Solitonic collision of seven filtrons of automaton FS; ST diagram 48  87, range q = 2.

Their periods (starting from the left) are: 1, 4, 5, 4, 24, 18 and 6, respectively. The same ST diagram is shown again in text form with our convention according to tail zeros of filtrons (-) and zeros read by inactive automata (.). In particular, one may easily see on such ST diagram the nonlocality of interactions of filtrons. Let us take a look at step t = 25. The leftmost filtron (207) moved to the right and now lies close to a conglomerate of others. They are adjacent, but still do not interact. After a while, in step t = 26, an effect of interaction is seen: the filtron 20 7 jumped over a cluster and emerged as the rightmost object.

389

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47

--.............20020001----.......3002----........3323332-----..1303----...2 ----............220012------.......21------......33303301----..3033----...21 ---............20032002----.......1002----......32003011----...231-----..112 -----...........300022------.......23------....20000111----...3102----..1323 ------............32001-------....3002----.......21112-------1021----..33332-------.........20020001----......21------.....11100002----.313-----.3231-002----...........220012------....1002----.....11030023----.1201----.2211--22-------........20032002----......23------...10330333----.2013----.2112---0002------........300022------....3002----....2333233-----.132-----1122----. 22002-------........32001-------...21------..32303202----.3303----1323----.. 0000002----........20020001----...1002----..22002021----.3031----3333----... .20022-------.......220012------...23------20000312----..21100003231-----... ..200002------.....20032002----...3002----...23122000000110200303102-----... ....22002-------....300022----.....21------.312000020013030230330302----.... ...20000002----.......32001-------1002----.130100210131302002313021----..... .....20022-------....20020001----..2300000301303131212030322120312-----..... ......200002------....220012------30020032120112101301022013011202----...... ........22002-------.20032002----..210222201221023011230230122021------..... --.....20000002----...300022------10202303231222031332220323001002----...... ----.....20022-------...32001000003023032312220303222203230000023-------.... ------....200002-------20020001020330333123203133232033300100200001----..... 2-------....22002-------220012203102311330021133300231001203020012------.... ..2-------.20000002----20032301102111310023123100211003203220032002----..... ....2-------.20022000000303013031312120333221203130030022000300022-------... ......2-------200002003230110211131002312310021100320322003200200002------.. ........2-------220012203102311330021133300231001203020012------22002------..........200002003230110211131002312310021100320322003200200002------2----............220012203102311330021133300231001203020012------22002-------2--...........20032301102111310023123100211003203220032002----20000002----...2............303013031312120333221203230030022000300022------.20022-------... ............202303231222030332220323----.23------.32001-------200002------.. ............33233332322303123223332-----3002----.20020001----...22002------...........333032202331312023303301----..21------.220012------.20000002----. ..........320023033210130332003011----..1002----.20032002----....20022-----.........200330302102303020000111----....23------.300022------....200002---..........310200102102----.21112-------.3002----....32001-------....22002--.........102101031021----.11100002----...21------..20020001----....20000002.........31310300313-----11030023----...1002----....220012------.....20022-........121130001201----10330333----.....23------..20032002----.......200002 .......2112----2013----.2333233-----....3002----....300022------........2200 ......1122----.132-----32303202----......21------.....32001-------.....20000 .....1323----.3303----22002021----......1002----.....20020001----........200 ....3333----.3031----20000312----........23------.....220012------........20 ...3231----..211-----..23122-------.....3002----.....20032002----........... ..2211----..1102----..31200002----.......21------.....300022------.........2 .2112----..1023----..13010021----.......1002----........32001-------........ 1122----...333----..30130313----.........23------......20020001----......... 323----...3201----..1313131-----........3002----........220012------........

One of the most intriguing property of filtrons is their ability to multiobject solitonic collisions. The ST diagram of Fig. 24 a) (33), where q = 2, shows a solitonic collision of filtrons supported by automaton MJ4 (Jiang’s filter). Configuration a0 = ...01099102101038103120212031061103103810170212013102140210181201015120130120191301017150... contains ten filtrons. Appropriate segments are underlined to facilitate identification of filtrons.

a)

b)

FIGURE 24. a) Solitonic collision of ten filtrons (q = 2). b) Displacements of different signs (repelling and attraction) (q = 5).

Many other instances of solitonic collisions of n filtrons are known for n  10. Previously, in (32), the solitonic collisions were reported only for n  7. At the moment, no example of such a collision is known for n > 10. The existence of multifiltron solitonic collisions in automaton media suggests the relevant similarities between filtrons and solitons of nonlinear physics. Let us recall that solitons capability of colliding in nondestructive way within n-element sets for an arbitrary n is considered (25) to be one of the attributes which characterise these objects. Even solitonic collisions change some parameters of filtrons. E.g. in (35), the possible changes in orbital and translational phases of colliders were considered. Typically, the attraction of filtrons is observed, but in some rare

390

cases also repelling objects occur. The first observation of different signs of displacements was reported in (20). Here, we present this phenomenon in Fig. 24 b). The supporting automaton is FBSR-23. There are two collisions of three filtrons on ST diagram (q = 5). First, the leftmost filtron is repelled, which is shown by a long arrow, and then it is attracted, which is indicated by a short arrow.

6.2. Trapped Filtrons ST diagrams of Fig. 25 (q = 5) exhibit specific complex filtrons supported by automaton MBSR-23. Let us refer to such objects as bouncing filtrons. A bouncing filtron consists of three components. An internal filtron is cought and bounces between the two others, changing its identity. Among the discrete coherent structures, such an object could be called also the breather, but note that here arbitrary distances between components are possible. What is more important, is that such a triple may be viewed as an analogue of a resonance cavity. In optical fibers similar cavities are arranged by means of a mechanical intervention. Namely, the fiber line is cut in two places and half silvered mirrors are carried on the surface of cross-sections. Changing the slot of a cut and thus the distance between the mirrors one can tune such a cavity and its resonant frequency. In our model the bouncing filtrons represent a soft arrangement of such cavities. Here, only discrete values of periods are available; in examples from Fig. 25 a) we have p = 8, 18, 28, ... . They depend on the distance of external components. It is interesting that this distance can be changed by properly arranged collisions. It means that our soft cavity can be tuned without any intervention into medium. One may apply a stream of filtrons to control a cavity. We illustrate this possibility in Fig. 25 a) (33) where four collisions of filtrons are seen. An initial complex filtron with a period p = 8 is 1011110100010001110100111101, while four other filtrons used to control the complex one are copies of 111001 (p = 1). The collisions are scheduled in such a way that the complex filtron changes its period, at first from p = 8 into 18. At this moment it has the form 101111010 3110111010410111101. Then the period changes into 28, and then again into 18 and 8. It is an interesting, and open, question whether an analogous optical pulse consisting of three solitons could exists in an optical fiber line. The problem could be in designing a medium capable of supporting three components and simultaneously assuring the stability of the entire complex pulse.

a)

b)

c)

d)

FIGURE 25. Trapped bouncing filtrons: a) changes of period, b), c) solitonic collisions, d) creation (q = 5).

The bouncing filtrons have many interesting properties. They can collide solitonically, which is illustrated in Fig. 25 b) and c). Also, the creation of such a complex object is rather easy. They arise in some simple collisions; an example is seen in Fig. 25 d).

FIGURE 26. Trapped colliders (q = 5).

391

It is natural to ask how many bouncing filtrons can be trapped at the same time in a cavity. Such a case is presented in Fig. 26. Two trapped colliders do constitute a stable complex. But the trials to put inside three or more filtrons have failed. One may speak about specific saturation of the cavity in this case. In Fig. 27 a sequence of collisions of two filtrons is shown, an experiment of analysis of an active cross-section of the complex filtron. The bouncing filtron of period p = 8, as above, was bombarded by a simple fleeting filtron 1 (which is such that involves one cycle of automaton’s activity only). The initial distance between colliders was increased gradually by one. After 13 diagrams the images of collisions repeat. At that time the solitonic collision occurred four times (ST diagrams 1, 6, 8 and 12).

01

02

03

04

05

06

07

08

09

10

11

12

13

14

15

FIGURE 27. Scattering experiment: bouncing filtron (period p = 8) and a fleeting filtron (p = 1); q = 5.

6.3. Quasi-filtrons We want to present yet another vast and interesting family of coherent objects emerging during serial, iterated processing of strings by automata. These objects are very similar to filtrons, but are not stable and thus nonperiodic. As such they are not covered by the definition of filtrons. Let us call them quasi-filtrons (32). Distinguishing features seem to be their length, which is bounded during their lifetime. Many of them last coherently for a surprisingly large number of steps, and then they decay or undergo a transformation. ST diagrams shown in Fig. 28 start with: a0 = ...0202023232020200200120102048300202010... , and are generated by automaton FS. There are two filtrons in a0 which approach one another and come into fusion creating a coherent unstable object: a quasi-filtron. This quasi-filtron decays spontaneously after 561 iterations. Two other diagrams of Fig. 28 show a solitonic collision and bouncing of a filtron. It proves that quasi-filtrons are capable of interacting with other filtrons without losing their identity. The only effects of interactions are small changes in lifetime of a quasi-filtron and a translation.

392

FIGURE 28. Quasi-filtron of automaton FS. The lifetimes are: 561, 563 and 565. Range is q = 5.

7. FINAL REMARKS Generally speaking, the paper exhibits some properties of a computational model which has the form of linear nets of finite state automata. In particular, we consider the string processing that occurs in such nets. Our purpose was to introduce the concept of an iteron. We have shown that iteration of some automata mappings, which occurs in cellular automata models and in serial pipelined structures, gives rise to the emergence of characteristic coherent and periodic objects. They can be seen on ST diagrams of processing. These objects, very similarly to the fractal phenomena, seem to be the inherent and relevant components of iterations. They can be precisely identified and formally defined as separate entities of considered computational processes. That is the reason why we have proposed to distinguish them by using a new term: the iterons. In the one-dimensional case the iterons have the form of specific substrings of converted strings. We have discussed two classes of iterons: the particles as coherent objects of cellular automata (standard or FIR filters), and the filtrons as coherent objects specific to serial processing (recursive or IIR filters). For cellular automata, we have shown that particles can be defined as sets of elementary rules (ERs). Note, that each ER (as defined in the paper) specifies only one value of the entire local function of a cellular automaton. Such an approach permits us to identify the particles by recoding of ST diagrams. This technique is inherently combinational (not sequential). Iterations of sequential (automata) serial processing imply the filtrons. These objects emerge for some classes of automata, especially filter automata (FA), as it was discussed earlier in papers (30, 31, 32, 33, 27). Here, we have recalled (27, 32) a slightly extended definition of a filtron. Also we have shown that filtrons of the most of automata can be interpreted as paths on their state diagrams. These paths start from the initial state s0 and return again to s0 (which is assumed to be a quiescent state of processing). Many interesting classes of automata capable of supporting the iterons are already known. For particles, some classical CA have been found by various searching methods. Here, we have given two examples of such CA. One, known as GKL cellular automata, performs a classification task, and the other, performs a conversion of codes (13, 29). Both examples illustrate our recoding technique. We have shown also particles of a general cellular automaton derived from equations of motion. We have used FPU dynamics as an example. In the general model of CA the identification of particles is not difficult. The appropriate strings are clearly seen on ST diagrams of outputs of

393

automata. In this model the difficulty lies in determining initial conditions that guarantee the stable existence of localised moving coherent objects. For filtrons, the first classes of associated transducers have been established by defining various recursive filters (PST, AKT, etc.). Then the family of FA has been introduced in (30, 27, 32). This class generalises most filters based on FCA window, namely: PST, FPS, J and F filters. However, there are still other automata, capable of supporting the filtrons, which do not belong to FA. We have shown here such automata: they are equivalent to AKT or BSR-23 filters. This suggests that the problem of identifying sufficient conditions for supporting filtrons is very difficult, even on the ground of the finite automata approach. This difficulty is connected with the richness of forms and behaviour of filtrons as well as with the fact that they are emergent objects. Let us add that searching for automata M which may support some filtrons by completing the next state and output functions of M ( and ) seems to be technically and combinatorially very complex. Another serious problem lies in the physical interpretation of automata described by the functions  and , and their connection with parameters of specific transmitting media (or more generally of a field). We believe that our proposal of describing the automaton media by means of: 1) activation conditions, 2) extinguishing conditions, and 3) sequences of operations, is a correct step towards overcoming the above mentioned problem. Let us comment on some potential applications of iterated automata mappings. An explosive development of photonics is observed, thus a possibility of performing computations in so called solitonic processors becomes actual (35, 18, 19). Intensive research effort is devoted to photonic crystals (photonic-bandgap materials) and important properties of resonance microcavities and photonic nonlinear periodic microstructures have been recently discovered. All that might lead to a new technology of guiding light with light in nonlinear periodical media. On that background the periodicity which we postulate here (which occurs inside automata as well as in linear nets of identical automata supporting the filtrons) seems to be an important property of computational automata media. The applications of solitons in telecommunications are well advanced (21), and probably optical nets will be able to perform some computational tasks. Also solitons are extensively studied in physics. Despite interesting new discoveries, e.g. (34), it seems that still the methods of nonlinear physics do not permit us to describe and characterise the complex phenomena of solitonic waves. We believe that computational discrete models in the form of automata media will be useful for technical applications as well as for a description of some physical nonlinear phenomena. The iterons of automata, similarly to fractals, seem to be a generic and fundamental component of dynamics of discrete complex systems. The author acknowledges a support of The Polish Committee for Scientific Researches (KBN 8T11 F 029 16).

REFERENCES 1. Ablowitz M. J., J. M. Keiser, L. A. Takhtajan. Class of stable multistate time-reversible cellular automata with rich particle content. Physical Review A, v. 44, No. 10 (15 Nov.), 1991, pp. 6909-6912. 2. Andre D., F. H. Bennett III, J. R. Koza. Evolution of intricate long-distance communication signals in cellular automata using genetic programming. Artificial Life V Conference in Nara, Japan, May 16-18, 1996. 3. Boccara N., J. Nasser, M. Roger. Particlelike structures and their interactions in spatiotemporal patterns generated by onedimensional deterministic cellular-automaton rules. Physical Review A, v. 44, No. 2 (15 July), 1991, pp. 866-875. 4. Bruschi M., P. M. Santini. Cellular automata in 1+1, 2+1 and 3+1 dimensions, constants of motion and coherent structures. Physica D, 70, 1994, pp. 185-209. 5. Bruschi M., P. M. Santini, O. Ragnisco. Integrable cellular automata. Physics Letters A, v. 169, 1992, pp. 151-160. 6. Buning H. K., L. Priese. Universal asynchronous iterative arrays of Mealy automata. Acta Informatica, v. 13, 1980, pp. 269285. 7. Casetti L., M. Ceruti-Sola, M. Pettini, E. G. D. Cohen (1998). The Fermi-Pasta-Ulam problem revisited. April 21, 1998, chaodyn/9609017 v3. 8. Crutchfield J. P., J. E. Hanson. Turbulent pattern bases for cellular automata. Physica D, 69, 1993, pp. 279-301. 9. Crutchfield J. P., M. Mitchell. The evolution of emergent computation. Proceedings of the National Academy of Sciences, USA, 92, 1995, pp. 10742-10746. 10. Das R., J.P. Crutchfield, M. Mitchell, J.E. Hanson. Evolving Globally Synchronized Cellular Automata. Proceedings of the Sixth International Conference on Genetic Algorithms (L. J. Eshelman, ed.), San Francisco, CA, Morgan Kaufmann Publishers, 1995, pp. 336-343. 11. Fokas A. S., E. P. Papadopoulou, Y. G. Saridakis. Coherent structures in cellular automata. Physics Letters A, v. 147, No. 7, 23 July, 1990, pp. 369-379. 12. Fuchssteiner B. Filter automata admitting oscillating carrier waves. Appl. Mathematics Letters, v. 4, 1991, No. 6, pp. 23-26. 13. Giorgadze A. H., P. W. Mandzgaladze, A. A. Matevosjan. Odin sposob porozdienija cepoczki zadannoj dliny. (In Russian) Izv. Akademii Nauk SSSR. Techniczeskaja Kibernetika, No. 1, 1985, pp. 135-138. 14. Grassberger P. Chaos and diffusion in deterministic cellular automata. Physica D, 10, 1984, pp. 52-58.

394

15. Hanson J. E., J. P. Crutchfield. The attractor-basin portrait of a cellular automaton. Journal of Statistical Physics, vol. 66, Nos. 5/6, 1992, pp. 1415-1462. 16. Hordijk W., J. P. Crutchfield, M. Mitchell. Embedded-particle computation in evolved cellular automata. In: Fourth Workshop in Physics and Computation: PhysCom96, Boston, 22-24 Nov. 1996, ed. by T. Toffoli, M. Biafore, J. Leao. New England Complex Systems Institute, Cambridge, MA, 1996. 6 pages. 17. Ibarra O. H., T. Jiang, H. Wang. String editing on a one-way linear array of finite-state machines. IEEE Tr. on Computers, v. 41, No.1, 1992, pp. 112-118. 18. Jakubowski M. H., K. Steiglitz, R. K. Squier. When can solitons compute? Complex Systems, vol. 10, 1996, pp. 1-21. 19. Jakubowski M. H., K. Steiglitz, R. K. Squier. Information transfer between solitary waves in saturable Schrödinger equation. Physical Review E, vol. 56, No. 6, Dec. 1997, pp. 7267-7272. 20. Jiang Z. An energy-conserved solitonic cellular automaton. Journal of Physics A - Mathematical and General, v. 25, No. 11, 1992, pp. 3369-3381. 21. Kath B., B.Kath. Making waves: solitons and their optical applications. SIAM News, v.31, No. 2, March 1998, pp. 1, 12, 13. 22. Marin J. L., J. C. Eilbeck, F. M. Russell. Localized moving breathers in a 2-D hexagonal lattice. patt-sol/9709002 (Edinburgh, May 16, 1998), 6 pages. 23. Matsukidaira J., J. Satsuma, D. Takahashi, T. Tokihiro, M. Torii. Toda-type cellular automaton and its n-soliton solution. Phys.Letters A, v.225, 1997, pp.287-295 24. Mazoyer J. A six-state minimal time solution to the firing squad synchronization problem. Theoretical Computer Science, v. 50, 1987, pp. 183-238. 25. Newell A. Solitons in Mathematics and Physics. Soc. for Industrial and Applied Mathematics, Philadelphia, 1985. 26. Park J. K., K. Steiglitz, W. P. Thurston. Soliton-like behavior in automata. Physica D, 19, 1986, pp. 423-432. 27. Puchalka T., P. Siwak. Automata and languages. Proc. of the Second International Symposium on Methods and Models in Automation and Robotics (MMAR’95), 30 August - 2 September 1995, Miedzyzdroje, Poland. Eds. S. Bańka, S. Domek, Z. Emirsajlow. Printed by Politechnika Szczecinska, 1995, pp. 467-480. 28. Serizawa T. Three-state Neumann neighbor cellular automata capable of constructing self-reproducing machines. Systems and Computers in Japan., v. 18, No. 4, 1987, pp. 33-40. 29. Siwak P. Minimal state cellular segment generation. 13th Word Congress on Computation and Applied Mathematics, July 22-26, 1991, Dublin. IMACS’91 Proceedings, v. 2, pp. 714-715. 30. Siwak P. Introduction to filter automata theory. Studia z Automatyki, v. 18, 1993, pp. 87-110. 31. Siwak P. Filter automata and PRR filtering. Journal of Technical Physics, v. 36, 2, 1995, pp. 153-163. 32. Siwak P. Filtrons and their associated ring computations. To appear in: International Journal of General Systems. Special Issue on General Physical Systems and the Emergence of Physical Structure from Information Theory, v. 27, No. 1/2/3, 1998, 48 pages. 33. Siwak P. On automata of some discrete recursive filters that support the filtrons. Proc. of the Fifth International Symposium on Methods and Models in Automation and Robotics (MMAR’98), 25-29 August 1998, Miedzyzdroje, Poland. Eds. S. Domek, R. Kaszynski, L. Tarasiejski. Printed by Polit. Szczecinska. Vol. 3 (Discrete Processes), pp. 1069-1074. 34. Snyder W., D. J. Mitchell. Accessible Solitons. Science, v. 276, 1997, pp.1538-1541. 35. Steiglitz, K., I. Kamal, A. Watson. Embedding computation in one-dimensional automata by phase coding solitons. IEEE Transactions on Computers, C-37, No. 2, 1988, pp. 138-145. 36. Umeo H. A design of real-time systolic convolvers. Systems and Computers in Japan, v. 17, No. 9, 1986, pp. 58-66. 37. Wilson S. J. Growth rates and fractional dimensions in cellular automata. Physica D, 10, 1984, pp. 69-74.

395