ISRN AlgebraVolume 2012 (2012), Article ID 742310, 14 pagesdoi:10.5402/2012/742310

Research Article

An Application of Iterative Pushdown Automata to Contour Words of Balls and Truncated Balls in Hyperbolic Tessellations

Maurice Margenstern

Laboratoire d’Informatique Théorique et Appliquée, EA 3097, Département d’Informatique, Université de Lorraine, Campus du Saulcy, 57045 METZ Cédex 01, France

Received 13 October 2011; Accepted 17 November 2011

Academic Editor: A. V. Kelarev

Copyright © 2012 Maurice Margenstern. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

Abstract.

We give an application of iterated pushdown automata to contour words of balls and two other domains in infinitely many tilings of the hyperbolic plane. We also give a similar application for the tiling of the hyperbolic 3D space and for the tiling of the hyperbolic 4D space as well.

1. Introduction

Iterated pushdown automata were introduced in [1, 2] and we refer the reader to [3] for references and for the connection of this topic with sequences of rational numbers. By their definition, iterated pushdown automata are more powerful than standard pushdown automata, but they are far less powerful than Turing machines. As Turing machines can be simulated by a finite automaton with two independent stacks, iterated pushdown automata can be viewed as an intermediate device, see also [4] for other connections of automata with graph algebras.

In this paper, we show an application of this device to the characterization of contour words of a family of bounded domains in many tilings of the hyperbolic plane. We do the same kind of application for a tiling of the hyperbolic 3D space and for another one in the hyperbolic 4D space. These two latter applications cannot be generalized to any dimension as, starting from dimension 5, there is no tiling of the hyperbolic space which would be a tessellation generated by a regular polytope.

In Section 2, we remember the definition of iterated pushdown automata with an application to the computation of the recognition of words of the form , where is the Fibonacci sequence with . This sequence will always be denoted by in all the paper.

In Section 3, we remind the reader about several features and properties on tilings of the hyperbolic plane.

In Section 4, we define the contour words which we are interested in and we construct iterated pushdown automata which recognize them for the case of the pentagrid and the heptagrid, that is, the tilings and of the hyperbolic plane. In the same section, we extend these results to infinitely many tilings of the hyperbolic plane.

In Section 5, we extend the result to two tilings of the 3D and 4D hyperbolic spaces.

2. Iterated Pushdown Automata

In this section, we fix the notations which will be used in the paper. We follow the notations of [3].

2.1. Iterated Pushdown Stores

This data structure is defined by induction, as follows:

The elements of a -pds() structure are -pds structures, and each element is labelled by a letter of . A -pds structure will often be called a -level store, for short. When is fixed, we speak of outer stores and of inner stores in a relative way: an -level store is outer than a -one if and only if . In the same situation, the -level store is inner than the -one.

We define functions and operations on -level stores, by induction on .

From the above definition, we get that a -level store can be uniquely represented in the form: where , is a -level store, and rest is +1-store. Moreover, if is the number of elements of rest, the number of elements of is +1.

A first operation consists in defining the generalization of the standard notion of top symbol in an ordinary pushdown structure. This is performed by the function defined by

It is important to remark that is the single direct access to all inner stores of a -level store. In other words, for any inner store, only its topmost symbol can be accessed and when this inner store is in the top of the outmost store.

Also note that the function performs a reading. There are two families of writing operations, also concerning the elements visible from the function only.

The first one consists of the pop operations defined by the following induction:,.

The second family consists of the push operations defined by the following induction:, is undefined for ,, where , with for .

2.2. Iterated Pushdown Automata

Intuitively, the definition is very close to the traditional one of standard nondeterministic standard automata. A -iterated pushdown automaton is defined by giving the following data:(i)a finite set of states, ,(ii)an input finite alphabet , (iii)a store finite alphabet ,(iv)a transition function from into a finite set of instructions of the form ,op), where is a state and op is a pop or a push operation as described in the previous subsection.

We also assume that there is an initial state denoted by and that the initial state of the store is , where is a fixed in-advance symbol of . Note that we allow -transition which plays a key role.

A configuration is a word of the form , where is the current state of the automaton, is the current word, and is the current -level store of the automaton. A computational step of the automaton allows to go from one configuration to another by the application of one transition. In order to apply a transition, the current state of the automaton must be that of the transition, the first letter of must be the symbol of in the transition if any, and must be the word of in the transition if any. A word is accepted if and only if there is a sequence of computational steps starting from to a first configuration of the form . The language recognized by a -iterated pushdown automaton is the set of words in which are accepted by the automaton.

2.3. An Example: The Fibonacci Sequence

As an illustrative example of the working of such an automaton, we take the set of words of the form , where is the Fibonacci sequence. This language is recognized by a 2-iterated pushdown automaton as proved in [3]. Here, we give the automaton and a proof of its correctness.

The proof is based on the following lemma.

Lemma 2.1. One has the following relations, for any nonnegative :

Proof. It is performed by induction whose basic case is easy. If we start from , we have the following derivation: by induction hypothesis as . And, again by induction hypothesis. Similarly, by induction hypothesis.Let be the initial word. With the first two transitions, we guess an integer such that if any. Then we arrive at the configuration . Next, we have And by the lemma, we proved that and so the word is accepted.We can see that if and if we guessed a wrong , then either the word is not empty when the store vanishes, and we cannot restore it, or the word is empty as the store is not. This also shows that if , as there is in this case a unique such that , we always have either an empty word an a nonempty store or an empty store with a nonempty word, whatever the guess.

3. The Tilings of the Hyperbolic Plane

We assume that the reader is a bit familiar with hyperbolic geometry, at least with its most popular models, Poincarés’s half-plane and disc.

We remember the reader that in the hyperbolic plane, thanks to a well-known theorem of Poincaré, there are infinitely many tilings which are generated by tessellation starting from a regular polygon. This means that, starting from the polygon, we recursively copy it by reflections in its sides and of the images in their sides. This family of tilings is defined by two parameters: , the number of sides of the polygon, and , the number of polygons which can be put around a vertex without overlapping and covering any small enough neighbourhood of the vertex.

In order to represent the tilings which we will consider and the regions whose contour word will be under study, we will make use of Poincaré’s disc model. Our illustrations will take place in the pentagrid and the heptagrid, that is, the tilings and , respectively, of the hyperbolic plane. Figures 1 and 2 will illustrate these tilings.

(a)

(b)

Figure 1: (a) the pentagrid. (b) the heptagrid.

(a)

(b)

Figure 2: (a) the pentagrid. (b) the heptagrid. Note that in both cases, the sectors are spanned by the same tree.

From Figure 1,the pentagrid and the heptagrid seem rather different. However, there is a tight connection between these tilings which can be seen from Figure 2. In both pictures of the latter figure, we represent the tiling by selecting a central tile and then by displaying as many sectors as the number of sides of the central tile. In each case, these sectors do not overlap and their union together with the central cell gives the tiling of the whole hyperbolic plane. Now, there is a deeper common point: in both cases, each sector is spanned by a tree which we call a Fibonacci tree for a reason which will soon be explained.

As proved in [5, 6], the corresponding tree can be defined as follows. We distinguish two kinds of nodes, say black nodes, labelled by , and white nodes, labelled by . Now, we get the sons of a node by the following rules: and , the root of the tree being a white node, see Figure 3. It is not difficult to see that if the root is on level 0 of the tree, the number of nodes on the level of the tree is , where is the Fibonacci sequence with .

Figure 3: The standard Fibonacci tree. The nodes are numbered from the root, from left to right on each level and level after level. For each node, the figure displays the representation of the number of the node with respect to the Fibonacci sequence, the representation avoiding consecutive 1s.

The Fibonacci tree has a lot of nice properties which we cannot discuss here. In particular, there is a way to locate the tiles of the pentagrid or the heptagrid very easily thanks to coordinates devised from the properties of the Fibonacci tree, see [5–7].

4. The Contour Words

Now, we have the tools to define the regions from which we define contour words, and we also have the tools to define the iterated pushdown automata which recognize them.

4.1. Balls

Consider a ball of radius in the penta- or the heptagrid. This ball is the union of the central cell and truncated sectors, for the pentagrid and for the heptagrid, each truncated sector being spanned by a Fibonacci tree up to the level . Accordingly, the number of tiles which are exactly at the distance from the central cell is . Denote the set of these tiles by . Figure 4 illustrates in the pentagrid and in the heptagrid.

(a)

(b)

Figure 4: The representation of . (a) the pentagrid. (b) the heptagrid. In both cases, .

The sectors around the central cell can be numbered from 1 to by fixing sector 1 once for all and by counterclockwise turning around the central cell. We call contour word the word obtained by taking the labels of the tiles which are on , starting from the left-hand side border of sector 1 and by counter clockwise running along , until the tile which is on the right-hand side border of the sector . It is easy to remark that the contour work can be written as , where is obtained by taking the word which is on from the left-hand side of the sector to its right-hand side.

Already by the length of the contour words, we can see that the set of all contour words is not algebraic: it is enough to apply Ogden’s pumping lemma.

Now we have the following theorem.

Theorem 4.1. The contour words of the pentagrid and those of the heptagrid can be recognized by a 2-level pushdown automaton.

Proof. Indeed, we can transform Automaton 1 in order to do the job. The new automaton is represented in Automaton 2For the proof, it is enough to prove that for any nonnegative where is the word obtained on the level of a Fibonacci tree whose root is a black node, starting from the left-hand side border to the right-hand side one.The rest of the easy proof is left to the reader.However, we can give an idea of the automaton which will better convince the reader.In fact, the automaton can be seen as a device which traverses the tree in a depth first way. To this purpose, starting from the root whose height is , the automaton puts on the outer store the nodes it takes, always going to left first. For each node, the automaton puts the labels of the son of the node together with the height of each sons which is stored as an inner store. As the height of the sons is reduced by 1 with respect to that of the father, this is obtained by a simple popping of the inner store. This explains both the construction of the automaton and its correctness.Of course, the figure of Automaton 2 provides us with two automata: one for the pentagrid and one for the heptagrid.

three states: , and ; input word in ; ;

initial state: ; initial stack: ; transition function :

Automaton 1: The 2-pushdown automaton recognizing the Fibonacci sequence.

two states: and ; input word in ; ;

initial state: ; initial stack: ; transition function :

Automaton 2: The 2-pushdown automaton recognizing the contour word of a ball in the pentagrid or in the heptagrid.

We remark from the proof that the result can be extended to any tree with a finite branching, where the degree of the nodes can be defined by a fixed set of rules. A similar automaton can then be easily deduced. We refer the reader to [3] for more information on the connection between iterated pushdown automata and trees.

As proved in [6, 8], for each , the tilings and of the hyperbolic plane are spanned by the same tree, which can be seen as a generalization of the Fibonacci tree for this couple of tilings. The tree has two kinds of nodes, again black and white, labelled by and , respectively. The tree is now generated by the following rules:

We can define balls in the tilings and as in the case of the pentagrid or the heptagrid: it is in fact a general definition. Now, we can define also the border of a ball and the contour word which is defined as in the case of the pentagrid and of the heptagrid.

Now, considering the transitions of Automaton 2, it is easy to change them in order to obtain a 2-pushdown automaton which exactly recognizes the contour words of the balls of the tilings and . Taking a copy of Automaton 2, replace in it by for a tiling , by +2 for a tiling , and replace by in the last four rules of the new automaton.

And so, we can state the following theorem.

Theorem 4.2. For each integer , , there is a 2-pushdown automaton which recognizes exactly the contour words of the balls of the tilings and .

4.2. Sectors

Now, we can also consider truncated sectors as a region. We can define two kinds of truncated sectors which were already studied in [6] as quarters and bars in the case of the pentagrid.

A truncated sector of the first kind, we will say a white -sector, consists of the tiles which belong to a Fibonacci tree rooted at a white tile up to the level , this level being included. Similarly, we define a black -sector using a Fibonacci tree rooted at a black node. It is plain that a white and a black -sector can be defined indifferently in the pentagrid or in the heptagrid. Moreover, these notions can be extended to the tilings and , replacing the Fibonacci tree by the tree defined by the rules (R).

The contour word of a -sector is defined by its border, as in the case of a ball. Let be a white -sector. Then, its border, , is defined as the set of tiles which are on the leftmost branch of the tree spanning the sector, on its rightmost branch or on the level of the tree, see Figure 5.

(a)

(b)

Figure 5: The representation of . (a) the pentagrid. (b) the heptagrid. In both cases, the contour word is .

Similarly, if is black -sector, its border, , is defined as the set of tiles which are on the leftmost branch of the tree spanning the sector, on its rightmost branch, or on the level of the tree, see Figure 6.

(a)

(b)

Figure 6: The representation of . (a) the pentagrid. (b) the heptagrid. In both cases, the contour word is .

Now that we defined the contour words attached to and , we can prove the following result.

Theorem 4.3. There is a 2-iterated pushdown automaton which recognizes the contour word of all ’s as well as another one to recognize the contour words of all ’s.

Proof. There is no problem to recognize the leftmost branch of the tree, as it is always on the top of the store. For the rightmost branch, the idea of the proof consists in introducing new rules which will leave on the end of the external store a witness of each node on the rightmost branch. The rules can be defined as follows: Note that the second line contains the rules already used in Automaton 2. The interpretation of the new rules is straightforward: stands for the root, for the tiles on the leftmost branch below the root, which are black nodes, and for the tiles on the rightmost branch below the root. Now, is a witness left by in order to remember the tile on the rightmost branch of the tree, look at the corresponding instructions in Automaton 3.Note that Automaton 3 recognizes the contour word of truncated white sectors. For truncated black sectors, it is enough to replace the rule by a rule and to replace the transitions by the transitions and to change accordingly the transitions involving by transitions involving . The proof of the correctness of Automaton 3 and the modified automaton for the truncated black sectors is straightforward, and it is left to the reader.

        two states: and ; input word in ;

        ;

        initial state: ; initial stack: ; transition function :

Automaton 3: The 2-pushdown automaton recognizing the contour word of a truncated white sector in the pentagrid or in the heptagrid.

What has been said for the contour word of a ball can be said for contour words of sectors also in the case of the tilings and of the hyperbolic plane. There are also two kinds of sectors and the transformations are very similar to the one which we performed in order to prove Theorem 4.2. We leave this as an exercise for the reader.

5. Dimensions 3 and 4

We take advantage of the remark we formulated after the proof of Theorem 4.1 in order to mention that the results of the previous section can be extended to the hyperbolic 3D and 4D spaces. As already mentioned in the introduction, there are only a few tessellations in the hyperbolic 3D and 4D spaces, and, starting from dimension 5, there is no such tiling in the hyperbolic space.

We will briefly indicate the reason why the result of Theorem 4.1 can be extended to two tilings of the hyperbolic 3D and 4D spaces. We will first see the 3D case and then the 4D one.

5.1. Dimension 3

There are four tessellations in the hyperbolic 3D space. We will consider only one of them, namely, the tiling , which we will call the dodecagrid, as it is built by tessellation starting from the regular dodecahedral with right angles. The numbers in the signature say that the faces have sides, that, on a tile, faces meet at a vertex, and that any edge of a tile is shared by exactly four tiles. Such a dodecahedron is unique up to isometries of the hyperbolic 3D space. In [6, 9], it is proved that the dodecagrid can be split into eight sectors exactly, the eight sectors being defined by a leading dodecahedron. The eight leading dodecahedron share a common vertex called the central point and each one is in contact with exactly three of them through three of its faces. These faces of contact define three planes of the hyperbolic 3D space which have a common point and which are pairwise perpendicular. Now, each sector is spanned by a tree whose root is associated with its leading dodecahedron.

Now, the tree is a 3D one which can also be represented as a planar one as its generation can be given by finitely many rules looking very much to those used in the case of the pentagrid or the heptagrid. Without entering in further details about the justification of this property, it is known from [6, 9] that, for this purpose, we can indicate a set of four rules which generate on the basis of the labelling of each node with one of the letters , , or , the leading dodecahedron being labelled with .

As we proved in [10], it is possible to reduce the previous set of rules to three of them, keeping only the nodes labelled with , , and . The labelling with four rules is based on a splitting of the dodecagrid involving four regions also labelled , , , and , see Figure 7, from which we deduce the rules (). Considering the splitting defined by Figure 8, we get the following rules:

Figure 7: From left to right: a corner, a half-octant, a corridor, a tunnel. Note that the faces are numbered in the same way in all the figures.

Figure 8: The new splitting of a corner of the dodecagrid. In the left-hand side, the splitting of a corner. On the middle, the splitting of a half-octant. On the right-hand side, the splitting of a tunnel.

From this, using the already applied technique of the previous paragraph, it is possible to devise a 2-iterated pushdown automaton which recognizes the contour words of a region whose definition is a bit changed with respect to what was given in the previous section. Here, a ball of radius is the set of tiles which are within a distance , in tiles, from the central point. Define the border of , denoted by , as the tiles which are at a distance exactly from the central point. The contour word is defined by traversing in the way induced by the maps very similar in principle to those defined in [6, 9]. Indeed, there is a way to injectively enumerate the tiles of the different level of which allow to lift up a planar representation of as defined by the rules () up to the actual 3D tree. This can be obtained by maps of level 1, and there is a way, described in [6, 9] to generate the map of the level from the maps of level 1 of the different trees defined by the rules (), considering the trees rooted at each possible kind of nodes.

The sectors themselves do generate a contour word. The just indicated maps can be used to identify the sides of the tree in the maps and the considered nodes of the tree can be given an appropriate sign. Then, the traversal defined by the extension of Automaton 2 to this case will generate a contour word in which we have first the signs corresponding to the nodes which are on the sides of the sector and then the nodes which are at distance , using the traversal defined by the maps. As we have three possible labels for the nodes, the rules () define three kinds of sectors. We will call -truncated -sector, with , the set of tiles which belong to a tree generated by the rules () which is rooted at a tile labelled .

Then we have the following.

Theorem 5.1. There is a 2-iterated pushdown automaton which recognizes the contour words of the balls in the hyperbolic 3D space. Also, for each , there is a 2-iterated pushdown automaton which recognizes the contour words of any -truncated -sector.

5.2. Dimension 4

In the hyperbolic 4D space, there are five tessellations based on a regular polytope. We will take the one which extends the dodecagrid. From the regular dodecahedron with right angles, it is possible to construct a regular polytope called the 120-cell, whose faces are regular dodecahedra with right angles. From this regular polytope, we can generate a tiling by tessellation which we call the 120-cell grid. The signature of this grid is which means that four 120-cells share a common pentagon, that three dodecahedra share a common edge, and that three pentagons share a common point, remembering that the 2-dimensional structure is a pentagon.

The common point with the dodecagrid is that the technique used for the dodecagrid also applies here. The space is the union of 16 sectors, each one having a leading 120-cell sharing a common vertex which is the central point. Each sector is spanned by a tree whose root is associated with the leading 120-cell. This tree is also generated by a finite set of rules of the same type as that of the rules (). Now, this time the set of rules is much more complex as it involves 11 labels. For this reason, we will use the matricial representation of the previous subsection with a slight modification. In Table 1, the leftmost column indicates the labels. The labels are not repeated on the first line: it is assumed that the coefficients of the matrix apply to the type of node whose label is on the row whose index is the same as the column index of the coefficient, the indices starting from 1, and the leftmost column receiving index 0. We refer the reader to [11] for the justification of these rules and for further explanations.

Table 1: The matrix of the generating rules of the 120-cell grid.

9
6
10
21
35
3
19
14
5
1
1
1

8
5
10
21
35
3
19
14
5
1
1
1

7
4
10
21
35
3
19
14
5
1
1
1

6 a
3
11
20
35
3
19
14
5
1
1
1

6 b
2
12
20
35
3
19
14
5
1
1
1

5
2
11
20
35
3
19
14
5
1
1
1

4
2
10
20
35
3
19
14
5
1
1
1

3
1
11
19
35
3
19
14
5
1
1
1

2
1
10
19
35
3
19
14
5
1
1
1

1
1
10
18
35
3
19
14
5
1
1
1

0
1
10
18
34
3
19
14
5
1
1
1

Defining the balls by the distance from a central point as in the 3D case, and the sectors from Table 1, we can devise the instructions of a 2-iterated pushdown automaton which will recognize the contour word of a ball. We also can do the same for the -truncated -sectors with .

Acknowledgment

The author wishes to express special thanks to Géraud Sénizergues for drawing this attention on iterated pushdown automata and for Sénizergues’ interest in the results of this paper.

References

S. A. Greibach, “Full AFL’s and nested iterated substitution,” Information and Computation, vol. 16, pp. 7–35, 1970.

A. N. Maslov, “The hierarchy of indexed languages,” Soviet Mathematics, Doklady, vol. 15, pp. 1170–1174, 1974.

S. Fratani and G. Sénizergues, “Iterated pushdown automata and sequences of rational numbers,” Annals of Pure and Applied Logic, vol. 141, no. 3, pp. 363–411, 2006.

A. Kelarev, Graph Algebras and Automata, vol. 257 of Monographs and Textbooks in Pure and Applied Mathematics, Marcel Dekker, New York, NY, USA, 2003.

M. Margenstern, “New tools for cellular automata in the hyperbolic plane,” The Journal of Universal Computer Science, vol. 6, no. 12, pp. 1226–1252, 2000.

M. Margenstern, Cellular Automata in Hyperbolic Spaces, Volume 1, Theory, OCP, Philadelphia, Pa, USA, 2007.

M. Margenstern, Cellular Automata in Hyperbolic Spaces, Volume 2, Implementation and Computations, OCP, Philadelphia, Pa, USA, 2003.

M. Margenstern and G. Skordev, “Fibonacci type coding for the regular rectangular tilings of the hyperbolic plane,” Journal of Universal Computer Science, vol. 9, no. 5, pp. 398–422, 2003.

M. Margenstern and G. Skordev, “Tools for devising cellular automata in the hyperbolic 3D space,” Fundamenta Informaticae, vol. 58, no. 3-4, pp. 369–398, 2003.

M. Margenstern, “A weakly universal cellular automaton in the hyperbolic 3D space with three states,” http://arxiv.org/PS_cache/arxiv/pdf/1002/1002.4290v1.pdf

M. Margenstern, “The tiling of the hyperbolic 4D space by the 120-cell is combinatoric,” Journal of Universal Computer Science, vol. 10, no. 9, pp. 1212–1238, 2004.