Generation of Celtic Key Patterns with Tree

Transcription

Generation of Celtic Key Patterns with Tree
Electronic Communications of the EASST
Volume 26 (2010)
Manipulation of Graphs, Algebras and Pictures
Essays Dedicated to Hans-Jörg Kreowski
on the Occasion of His 60th Birthday
Generation of Celtic Key Patterns with Tree-based Collage Grammars
Renate Klempien-Hinrichs, Caroline von Totth
16 pages
Guest Editors: Frank Drewes, Annegret Habel, Berthold Hoffmann, Detlef Plump
Managing Editors: Tiziana Margaria, Julia Padberg, Gabriele Taentzer
ECEASST Home Page: http://www.easst.org/eceasst/
ISSN 1863-2122
ECEASST
Generation of Celtic Key Patterns with Tree-based Collage
Grammars
Renate Klempien-Hinrichs1 , Caroline von Totth2∗
1
[email protected]
[email protected]
Department of Computer Science
University of Bremen, Germany
2
Abstract: Tree-based collage grammars are a syntactic device for modelling visual
languages. Celtic art provides such languages, which follow precise rules of construction, for instance key patterns and knotwork. In this paper, we study the syntactic generation of Celtic key patterns using tree-based collage grammars. Moreover,
the regulation mechanisms we employ to ensure that only consistent key patterns are
generated are compared with the mechanisms used in a previous study for knotwork.
Keywords: collage grammar, celtic key patterns, rule-based picture generation
1
Modelling with Collage Grammars
Collage grammars are a device to generate sets of pictures in a syntactic manner [HK91, HKT93,
DK99]. They were developed by equipping hyperedge replacement graph grammars with spatial
information: nonterminals come with a location and an extension in some Euclidean space, and
the role of terminals is played by collages, where a collage is a union of parts and a part is a
set of points. Equivalently, collage grammars may be seen as a combination of a tree grammar
and an algebra interpreting the generated trees as collages [Dre00, Dre06], so-called tree-based
collage grammars.
The initially proposed collage grammars were context-free. More powerful grammar types include the table-driven (or T0L) grammars, where nonterminals are replaced in parallel with rules
from one of finitely many tables [KRS97] (for T0L collage grammars see [DKK03]). In the following, we will refer to all these types simply as collage grammars, regardless of their generative
power. The behaviour of a table-driven tree grammar may be emulated by a regular tree grammar
generating monadic trees as input for a top-down tree transducer; such a monadic tree basically
states the sequence of the applied tables in the T0L grammar [Dre06, Lemma 2.5.7].
For any picture-generating mechanism, it is of particular interest to find out whether a certain
class of pictures can be generated. For table-driven collage grammars, the case study in [DK00]
(see also [Dre06, Sect. 3.5]) shows a way to produce Celtic knotwork. The idea is to identify a
small pattern that is repeated in a tiling-like manner to form the whole design (see [Bai90, Slo95]
for distinct ways to divide a design).
∗
The authors would like to acknowledge that their research is partially supported by the Collaborative Research
Centre 637 (Autonomous Cooperating Logistic Processes – A Paradigm Shift and Its Limitations) funded by the
German Research Foundation (DFG).
1 / 16
Volume 26 (2010)
Generation of Celtic Key Patterns with Tree-based Collage Grammars
Figure 1: Celtic designs: a knot (left) and a key pattern (right)
In addition to knotwork, there are three other major design types in Celtic art: key patterns,
spirals, and interlacings with animal or human forms (see [All93, Bai51] for overviews). Historically, the designs were drawn in medieval manuscripts, carved on standing stones, or forged in
precious metalwork.
In this paper, we present a case study modelling Celtic key patterns, sometimes also called
maze patterns, by means of collage grammars. Where a Celtic knot consists of continuous cords
that interweave, key patterns have continuous paths that follow straight lines, usually at 45◦
angles, and meet at crossings (see Figure 1 for examples).
Methods for the construction of key patterns by hand, that may have been used by the original
Celtic artists, are described in [Bai90, Bai93, Mee02]; these methods are mainly oriented at
which straight long lines may be drawn. On the other hand, small patterns or tiles may be
identified that are repeated throughout the whole design. For this, Sloss [Slo97] overlays a key
pattern with a grid whose axes run parallel to the pattern border, obtaining rectangles of various
sizes. In contrast (and more in line with [Bai93]), we propose to use triangles and squares with
a 45◦ slope as tiles. We then use tree-based collage
grammars to show how these tiles can be
1
structurally combined to yield well-formed key patterns. Moreover, we discuss the structural
differences between knotwork [DK00] and key patterns. All collage grammars for key patterns
that we developed were implemented using Frank Drewes’ system T REEBAG [Dre06, Sect. 8].
The paper is organised as follows: In Section 2, basic notions of tree-based collage grammars
are recalled. Section 3 contains a structural analysis of basic key patterns and a description of
the collage grammar that we used to generate them. In Section 4, variations of the first model
are proposed. The paper concludes with a brief summary and ideas for various lines of future
research.
2
Tree-based Collage Grammars
The basic notions for tree-based collage grammars collected in this section follow presentations
given in [DKL03, DEKK03, Dre06]. Please consult these, [Dre06] in particular, for more detail,
including examples.
Let N = {0, 1, 2, 3, . . . } denote the set of natural numbers, and [n] = {1, . . . , n} for n ∈ N.
Moreover, R denotes the set of real numbers, and R2 the Euclidean plane, which contains points
(x, y) ∈ R2 .
We will use expressions to represent collages and call such an expression a term (or tree) over
Festschrift H.-J. Kreowski
2 / 16
ECEASST
a certain signature. In general, a signature is a finite set Σ of symbols, each symbol f ∈ Σ being
assigned a unique rank rankΣ ( f ) ∈ N. The set TΣ of terms over Σ is the smallest set such that for
n ∈ N, f [t1 , . . . ,tn ] ∈ TΣ for all f ∈ Σ with rankΣ ( f ) = n and all t1 , . . . ,tn ∈ TΣ . For n = 0, we may
omit the parentheses in f [ ], writing just f instead.
It is now possible to define collages and the relationship between collages and terms in TΣ
formally. A part p ⊆ R2 is a bounded subset of the Euclidean plane; intuitively, p is a set of
black points. A collage C is a finite set of parts, and the set of all collages is denoted by C .
Transformations f : R2 → R2 on R2 are canonically extended from points to parts and collages,
i.e., f (p) = { f (x, y) | (x, y) ∈ p} for a part p, and f (C) = { f (p) | p ∈ C} for a collage C. For
affine transformations f1 , . . . , fn on R2 , hh f1 · · · fn ii denotes the operation f : C n → C given by
S
f (C1 , . . . ,Cn ) =
fi (Ci ) for all C1 , . . . ,Cn ∈ C . A collage operation is either an operation of the
i∈[n]
form hh f1 · · · fn ii for affine transformations f1 , . . . , fn (n ≥ 1) or a constant collage, viewed as an
operation of arity 0. A collage signature is a finite signature Σ consisting of collage operations,
where ranks coincide with arities. For a term t ∈ TΣ , its value is val(t), i.e., the collage val(t) =
f (val(t1 ), . . . , val(tn )) if t = f [t1 , . . . ,tn ].
By such an interpretation of ranked symbols as collage operations, appropriate grammatical
devices for generating sets of terms allow us to generate sets of collages. Among such devices,
we consider the regular tree grammar and the top-down tree transducer, and we call the combination of a tree generator and a collage algebra a tree-based collage grammar. Since we deal
exclusively with tree-based collage grammars in this paper, in the following we will refer to them
simply as collage grammars.
A regular tree grammar works analogously to a regular string grammar, but by replacing nonterminals in terms and having nonterminals occur only without subterms. Formally, a regular
tree grammar is a system G = (N, Σ, P, S) consisting of
• a finite set N of nonterminals, which are considered to be symbols of rank 0,
• a signature Σ disjoint with N,
• a finite set P ⊆ N × TΣ∪N of productions, and
• an initial nonterminal S ∈ N.
A term t ∈ TΣ∪N directly derives a term t 0 ∈ TΣ∪N , denoted by t −→P t 0 , if there is a production
A ::= s in P such that t 0 is obtained from t by replacing an occurrence of A in t with s. The
language generated by G is L(G) = {t ∈ TΣ | S −→∗P t}, where −→∗P denotes the reflexive and
transitive closure of −→P ; such a language is called a regular tree language.
A tree transducer transforms some input tree into an output tree by traversing the input tree
symbol by symbol, possibly storing some information in one of finitely many states. Formally, a
top-down tree transducer is a system td = (Σ, Σ0 , Γ, R, γ0 ) consisting of
• finite input and output signatures Σ and Σ0 ,
• a finite signature Γ of states of rank 1, where Γ ∩ (Σ ∪ Σ0 ) = 0,
/
• a finite set R of rules, and
3 / 16
Volume 26 (2010)
Generation of Celtic Key Patterns with Tree-based Collage Grammars
• an initial state γ0 ∈ Γ.
Each rule in R has the form
γ[ f [x1 , . . . , xn ]] → t[[γ1 [xi1 ], . . . , γm [xim ]]],
where γ, γ1 , . . . , γm ∈ Γ are states, n is the rank of symbol f ∈ Σ and x1 , . . . , xn are pairwise distinct
variables (of rank 0 and not occurring in Σ ∪ Σ0 ∪ Γ); and t is a term with symbols from Σ0 and
m ∈ N subterms of the form γ j [xi j ] with i j ∈ [n], i.e., xi j ∈ {x1 , . . . , xn }.
There is a computation step of td from a term s to a term s0 , denoted by s ⇒R s0 , if R contains a rule γ[ f [x1 , . . . , xn ]] → t[[γ1 [xi1 ], . . . , γm [xim ]]], s has a subterm of the form γ[ f [t1 , . . . ,tn ]],
and replacing this subterm in s with t[[γ1 [ti1 ], . . . , γm [tim ]]] (which is formed as in the rule, but with
corresponding subtrees ti1 , . . . ,tim from s instead of variables xi1 , . . . , xim ) yields s0 . The tree transformation computed by td is given by td(s) = {s0 ∈ TΣ0 | γ0 [s] ⇒∗R s0 } for every tree s ∈ TΣ , where
⇒∗R denotes the reflexive and transitive closure of ⇒R .
3
The Structure of Celtic Key Patterns
In this section, we show a way to structure Celtic key patterns so that they can be easily generated
by collage grammars. We first identify a small set of tiles – the constant collages – that allows
us to put together a whole pattern, and then describe the syntactic synthesis.
Following [Bai93], a typical key pattern will often be a coherent composition of isosceles
right-angled triangles to which a border line needs to be added, see Figure 2 left.
Moreover, note that the smooth borders must be produced by triangle hypotenuses. In particular, the top and bottom border triangles have horizontal hypotenuses, whereas the hypotenuses of
all other triangles are vertical. This suggests a division into square tiles as indicated in Figure 2
Figure 2: Division of a key pattern into triangles (left) and squares (right)
Festschrift H.-J. Kreowski
4 / 16
ECEASST
right, which also takes care of drawing the border lines. The resulting set of basic tiles (modulo
reflections and 90◦ rotations) is shown in Figure 3.
At first glance, the last two of the five tiles appear to be identical to the preceding two. There
are, however, subtle differences, for two reasons. First, key patterns have two different types of
corners since a corner is obtained by so-called mitring, which means reflecting a basic triangle
at one of its shorter sides; compare, e.g., the two right corners of a pattern in Figure 2. Secondly,
a line always comes with a thickness, and where a hand-drawn line lies on the connecting sides
of two tiles, each of the graphic tiles gets a line of half the thickness. Thus, the two middle tiles
d1 and d2 in Figure 3 have a short line at a 135◦ angle that is not present in the last two tiles, and
in tile d10 the left corner of its left black triangle is pointed.
sq
d1
d2
d1
d2
Fig. 3. The set of basic tiles
Figure 3: The set of basic tiles
which also takes care of drawing the border lines. The resulting set of basic tiles
(modulo reflections and 90◦ rotations) is shown in Figure 3. At first glance, the
last two of the five tiles appear to be identical to the preceding two. There are,
however, subtle... differences, for two .reasons. First,.key patterns have two differ.
..
ent types of corners since a corner is. obtained by so-called
mitring, which means
.
.. sides; compare,
..
reflecting a basic
e.g., the two right
a1 triangle at ..one of its shorter
.
.
corners of a pattern in Figure 2. Secondly, a line always comes with a thickness,
and where a hand-drawn line lies on the connecting sides of two tiles, then each
a2 a line
b2 the bthickness.
b2 Thus,
b1 of half
b1 the two middle tiles
of the graphic tiles
1
sq gets
that is not present in the
d1 and d2 in Figure 3 have a shortsqline at a 135◦rangle
1
mvtriangle is pointed.
last two tiles, and in tile d1mv
the left cornermv
of its left black
Now let us come to the
of these
sqmsyntactic arrangement
sqm
r2 tiles in a rectangular
key pattern. The task is to overlay the pattern with a tree whose interpretation
mv
mvpattern. In mv
through collage operations
yields the
order to find the tree, we reuse
sq for rectangular
sq knotwork,r1namely to develop the pattern
the idea from [DK00]
from its centre. One can immediately observe from Figure 2 that the left half
2
d1 from the right
d1 half by a rrotation
of the pattern may be obtained
of 180◦ about
the centre. The right half in turn may be seen as having a horizontal backbone
through the centre, where each vertical line of square tiles above the backbone
d2
d2
d2
may be obtained from the same line below the backbone by a rotation of 180◦
about the crossing point of the vertical line with the backbone. (The border,
however, will need special treatment, which we will discuss at the end of the
section.) Thus, we can concentrate on the lower right section as sketched in
Fig.Figure
4. A sketch
of aantree
over
collage
operations
generates the lower right section
4 to get
idea
of the
required
collagethat
signature.
Figure 4: A sketch
a pattern
tree over
operations
that
lower3. right section of the
of theof
key
in Figure
and2d2 are
interpreted by
the generates
tiles as giventhe
in Figure
Constants
sq,
d1collage
and
r
result
from
mitring
d
and
d
,
respectively,
as
described
Constants
r
1
2
1
2
key pattern in Figure 2
above. Constant sqm results also from a reflection of sq, but this time in the
– bvertical
as b1 , but
in addition
collage
C1 which
is put
horizontal)
axishas
through
the middle
of the
tile. This
2 (C1 , C(or,
2 , Cequivalently,
3 , C4 ) behaves
reflection
is necessary
because two adjoining tiles need to agree in the path
at
the current
position;
Now let us come
to the
syntactic
arrangement
of
tilesin
in
them
(this isCunlike
knotwork
tilesthese
considered
[DK00],
where
diagonal
length
downward
and
Ca2 rectangular
half
the the
lengthkey pattern. The
– alinking
2 (C1 , C
2 ) moves
1 one the
cord
always
leaves
through
the
centre
of
a
tile
side).
to the
right; and
task is to overlay the
pattern
with a tree whose interpretation through collage operations yields
, C3 , C4 : and rotates C
The
work
follows.
For all
C1 , C2position
, Coperations
, C ) puts
C asand
C both
at collages
the current
– a (C
1
2
3
1
2
3
the pattern. In order
to1 find
thethat
tree,
we reuse
the idea from [DK00] for rectangular
knotwork,
◦
by– 180
about
Cposition.
mv(C
1 , C2 ) puts
1 at the current position, and translates C2 downward for
namely to develop thethepattern
from
its
centre.
One
can
immediately
observe
from
Figure
2 that
diagonal length of a tile;
Now
have to be organised in order to yield well-formed key
(C2 , Coperations
– b1these
◦
3 , C4 ) moves C2 half this length downward, C3 half the length to the
the left half of the
pattern
may
be
obtained
the
right
halfprocess,
byofa180
rotation
of 180 about the
◦
patterns.
Let and
us
first
take
look at
afrom
successful
generation
like
the one
right,
C3 half
thealength
downward
followed
by a rotation
about
current
shown
where
representations
of terms arebackbone
given for easier
centre. The right
halfinitsinFigure
turn 5,position;
may
bepictorial
seen as
having a horizontal
through the centre,
understanding. Starting from some initial item, the idea is to specify the width
where each column
of square tiles above the backbone may be obtained from the same column
of the pattern before the height.
◦ about 5the crossing point of the column’s vertical centre
below the backbone
a rotation
of 180
In by
order
to get uniform
growth
both horizontally and vertically, some regulation mechanism
has to be
employed.will
For this,
use a regular
tree grammar
line with the backbone.
(The border,
however,
needwespecial
treatment,
which we will discuss
5 / 16
producing unary terms over the symbols w1 , w2 , h1 of rank 1 and h2 , wh2 of
rank 0 such that the terms without parentheses belong to the string language
of the regular expression w1∗ (w2 h1 h∗1 h2 |wh2 ). Symbols wi specify the width and
Volume
symbols hj the height of the pattern, symbols x1 the internal growth and symbols y2 the border construction, with symbol wh2 for the special case that no
vertical growth is to take place. These control terms are then used as input for
a top-down tree transducer that consumes in each step the first symbol of the
term and copies the rest of the term identically to all newly introduced states.
The rules of the transducer are shown in Figures 6–10, in the same pictorial representation as above, and with grey squares representing the named transducer
26 (2010)
Generation of Celtic Key Patterns with Tree-based Collage Grammars
at the end of the section.) Thus, we can concentrate on the lower right section as sketched in
Figure 4 to get an idea of the required collage signature.
As proposed earlier, the figure displays a portion of the tree for the key pattern in Figure 2
overlaying the pattern structure. The constant symbols sq, d1 and d2 refer to the tiles given
in Figure 3; their placement results from the translation operations above them in the tree and
reflects the layout of the tiles in the pattern. The additional constants r1 , r2 and sqm can be seen as
abbreviations for applying a unary collage operation to d1 , d2 and sq respectively. More precisely,
constants r1 and r2 result from mitring d1 and d2 , respectively, as described above. Constant sqm
results also from a reflection of sq, but this time in the vertical (or, equivalently, horizontal) axis
through the middle of the tile. This reflection is necessary because two adjoining tiles need to
agree in the path linking them (this is unlike the knotwork tiles considered in [DK00], where the
cord always leaves through the centre of a tile side).
The operations work as follows. For all collages C1 ,C2 ,C3 ,C4 :
• mv(C1 ,C2 ) puts C1 at the current position (meaning the affine transformation applied to C1
is the identity), and translates C2 downward for the diagonal length of a tile;
• b1 (C2 ,C3 ,C4 ) moves C2 half this length downward, C3 half the length to the right, and C4
half the length downward followed by a rotation of 180◦ about its current position;
• b2 (C1 ,C2 ,C3 ,C4 ) behaves as b1 , but has in addition collage C1 which is put at the current
position;
• a2 (C1 ,C2 ) moves C1 one diagonal length downward and C2 half the length to the right; and
• a1 (C1 ,C2 ,C3 ) puts C1 and C2 both at the current position and rotates C3 by 180◦ about that
position.
Now these operations have to be organised in order to yield well-formed key patterns. Let
us first take a look at a successful generation process, like the one shown in Figure 5, where
pictorial representations of terms are given for easier understanding. Starting from some initial
item, the idea is to specify the width of the pattern before the height.
In order to get uniform growth both horizontally and vertically, some regulation mechanism
has to be employed. For this, we use a regular tree grammar producing monadic terms over the
symbols w1 , w2 , h1 of rank 1 and h2 , wh2 of rank 0 such that the terms without parentheses belong
to the string language of the regular expression w∗1 (w2 h1 h∗1 h2 |wh2 ). Symbols wi specify the width
and symbols h j the height of the pattern, symbols σ1 (i.e., symbols with the index 1) the internal
growth and symbols σ2 the border construction, with symbol wh2 for the special case that no
vertical growth is to take place. These control terms are then used as input for a top-down tree
transducer that consumes in each step the first symbol of the term and copies the rest of the term
identically to all newly introduced states. The rules of the transducer are shown in Figures 6–
10, in the same pictorial representation as above, and with grey squares representing the named
transducer states: this is achieved by expanding the algebra in such a way that it interprets the
states as constants. This approach yields a full visual interpretation of nonterminal trees and
therefore also a pictorial representation of derivations. For rules, an additional point of reference
is needed to relate the position of the left-hand-side to the position of the right-hand-side; in
Figures 6–10 this point is represented by a magenta plus symbol.
Festschrift H.-J. Kreowski
6 / 16
ECEASST
⇓
⇓∗
⇓∗
⇓∗
Fig.
5. 5:
Typical
derivation
Figure
Typical
derivationsequence
sequencefor
fora akey
keypattern
pattern
7 / 16
Volume 26 (2010)
7
Generation of Celtic Key Patterns with Tree-based Collage Grammars
w1
+
w1
+
::=
+
encounters
symbols
w1, w2, wh2
w2
w2
+ initial state
Transducer rules to+ start a computation from the
Fig. 6.
wh
– State S is the initial state and may encounter
symbols w1 wh2
column in Figure 6).
+ symbols w1
– State R::=executes horizontal+ growth and may encounter
::=
(Figure 7).
2
2
2
(left
2
2
Fig. 6.
rules to start aw computation from
the::=
initial
statestate
::=6:Transducer
w
wh
Figure
the
initial
::= Transducer rules to start a computation from ::=
1
2
2
+
+
+
+
::=
Fig.
8.
Transducer
rules
to
grow
a
design
vertically
– State
S initial
is thestate
initial state
and may symbols
encounter
w1 26). As2 the
(leftcentre
• State
S is the
may encounter
w1 ,symbols
w2vertically
, wh2 (Figure
encounters
Fig. 8. and
Transducer
rules to grow a design
w
column
in
Figure
6). lie inside a tile sq
symbols
of a key
pattern
may either
or inbetween two suchw tiles, there are two
w , w , wh
–
State
R
executes
horizontal
growth
and
may
encounter
symbols nondeterministic.
w1 2
2
options for processing each of the three symbols,
making
the transducer
h1 +, but7).on
encountering
h
,
i.e.,
for
the
corner,
it
has
to
be
tile
d1 instead,
2
Fig.
7.
Transducer
rules
to
grow
a
design
horizontally
+
+
(Figure
::=
The right-hand-sides
in
the
first
row
of
Figure
6
are
created
when
w
is
consumed
h1 , butison
encountering
h2 ,with
i.e., tile
for the
1 d1 instead, by
which
suitably
combined
d2 . corner, it has to be tile
is
combinedhresult
with
tile
dstate
encounters
S. The
next
two
right-hand-sides
S encounters
immediately symbol w2 ,
2 . right
– which
Lastly,
thesuitably
threew transducer
ruleswhen
in hthe
column
E,
O and OM of Figure 6 serve to
symbols
Lastly,
the
three
transducer
rules
in
the
right
column
of
6 serve
to work
i.e.,–when
no
horizontal
growth
takes
place.
In
this
case,
state
OM
iswintroduced
to
encounter
w , w , wh key patterns whose centre is inbetween two tiles Figure
produce
sq.
When
nolines
hori+
w
– State
E ignores
symbols
wi and
produces
the even-numbered
vertical
symbols
0
produce
key
patterns
whose
centre
is
inbetween
two
tiles
sq.
When
no
horianalogously
state O
by producing
sqstate
d1 instead ofsymbol
d1 for the
+ zontal
m , but Sproducing
+
w , h , h tileimmediately
growth
takes
place,state
i.e., tiles
when
encounters
::=to
using
tile
sq;+ analogously,
O
produces
odd-numbered
verticalsymbol
lines
zontal
growth
takes
place,8 i.e.,
when
state
Sthe
encounters
immediately
top and
bottom
border
(Figure
on
the
right).
A
key
pattern
where
the
vertical
centre
w
,
state
OM
is
introduced
to
work
analogously
to
state
O
by
producing
2Fig. tile
using
sq
(left
side
of
Figure
8).
+
+
m
6. Transducer
rules to startto
a computation
from theto
initial
stateO by producing
::=
w
,
state
OM
is
introduced
work
analogously
state
2
w
line
of
tiles
is
capped
with
half-tile
triangles
at
both
ends,
like
the
one
shown
in
Figure
1,
tiles sq
butD3
producing
tile
d1 symbols
instead
of
the topthey
andgrow
bottom
border
h
h
h
h
m ,and
1 for which
– States
D2
encounter
only
hi d
, from
the lower
tiles
sq
,
but
producing
tile
d
instead
of
d
for
the
top
and
bottom
border
m
1
1
(Figure
8 on
the
right).
We leave
itoftotransducer
the
why
cannot
beofgenerated
by
the resulting
setupper
rules.
We
leave
it to out
the interested
+ (and
+ to find
half
the
right
border
the
halfinterested
of the
leftreader
border).
(Figure
8 on
the
right).
We leave
it tointhe
interested
reader
to find out
why
+ nevertheless
+how
+ be remedied.
+ 1 cannot
+ by the
the
key
pattern
shown
Figure
be
generated
reader
to
find
out
this
problem
may
::=
::=
wh
wh
–– State
S is the
initial
may (and
encounter
symbols
w1the
(left
The
upper
halfthe
of key
thestate
rightand
border
the lower
half of
2 left 2border)
nevertheless
pattern
shown
in
Figure
1
cannot
be
generated
by
the
resulting
set 7.
of 6).
transducer
rules,toand
how
to remedy
the problem.
Fig.
Transducer
rules
grow
a design
horizontally
column
inthrough
Figure
is
grown
states
U1,
U2
and
U3
from
symbols
h
(Figure
10).
These
i
resulting
set
of
transducer
rules,
and
how
to
remedy
the
problem.
• State R executes horizontal growth
and may encounter symbols w1 , w2 , wh2 (Figure 7).
++
::=executesthe
+ symbols
– State
horizontal
growth
andwith
maytiles
encounter
w
statesRproduce
alternative
corner
d1 and
d2 as follows:
2 As may
2
The first
right-hand-side
is
the
result
of processing
w
second
results1 from
consuming
::=
1 , the vertically
Fig.
8.
Transducer
rules
to
grow
a
design
(Figure
be seen7).in Figure 5, state
U2
is
one
step
behind
the
other
two
states,
with
the
h
h
h
h
w2–, and
the Elast
from consuming
2 , respectively.
State
ignores
symbols
wwh
produces
even-numbered
vertical
retardation
provided
by state
X on
the firstthe
occurrence
of symbol
h1 . lines
This
i and
+
+
using
tile sq;
analogously,
state
produces
vertical
lines
is
because
U2
has to produce
(aO rotation
of)the
tileodd-numbered
d1 while reading
symbol
+
+
+
::=
::=
h
,
but
on
encountering
h
,
i.e.,
for
the
corner,
it
has
to be
tile
d1 instead,
1 Fig. tile
2
6.
rules
to
start
a
computation
from
the
initial
state
::= Transducer
::=
w
w
wh
using
sq::=
(left
side
of
Figure
8).
::= ::=
m
::= suitably
which
combined with tile d2 .
encountersissymbols
– States
and D3 encounter only symbols
hi , from which they grow the lower
h ,D2
h
– Lastly, the
three transducer rules in8 the right column of Figure 6 serve to
+
half of the
right::=border+ (and the upper +half of the left+ border).
Fig.
9. Transducer
Transducer
rules
grow
vertical
produce
patterns
whose
centre
is
inbetween
twoborders
tilesw1sq. When
no
Fig.
8.
rules
totogrow
a the
design
vertically
– State
S iskey
the
state
and
may
encounter
symbols
(lefthoriFig.initial
9.
Transducer
rules
to(and
growathe
the
vertical
borders
– The upper
half
of the
right border
lower
half
of the2 left 2border)
encounters
Fig.
8.
Transducer
rules
to
grow
design
vertically
zontal growth
takes
place,
i.e.,
when
state
S
encounters
immediately
symbol
column
in
Figure
6).
is grownwsymbols
states U1, U2 and U3 from symbols hi (Figure 10). These
, through
w ,OM
wh
w
,
state
is
introduced
to
work
analogously
to
state
O
by
producing
2
– State
Rproduce
executesthe
horizontal
growth
andwith
maytiles
encounter
w1 2 As may
2
states
alternative
corner
andsymbols
d2 astile
follows:
h1 , but
encountering
, i.e.,
theacorner,
itd1has
d1 instead,
2rules
tiles
sq7).
,Fig.
but
d1tofor
instead
of d1 for
the to
topbe
and bottom
border
7.producing
Transducerhtile
grow
design
horizontally
mon
(Figure
h
, but
on
encountering
i.e.,
forstep
the . corner,
has
to be
tilestates,
d instead,
be
seen
in
Figure
5,
state hU2
is one
behind itthe
other
two
with the
2 ,with
U 1and
X encounter
which
is8
suitably
combined
tile
(Figure
on the right).
We leave
it tod2the
interested reader to
find1 outh why
h provided
symbolsish ,suitably
h state
hon the
h
which
combined
with
tile
d
.
retardation
by
X
first
occurrence
of
symbol
h1 .toThis
2
Figure
7:
Transducer
rules
to
grow
a
design
horizontally
h rules
– nevertheless
Lastly, the three
in hthe
right E,
column
Figure
6 serve
OM of be
thew transducer
key pattern
shown
in Figure
1O and
cannot
generated
by
– isLastly,
the
three
transducer
rules
in
the
right
column
of
Figure
6
serve
to the
+
+ to produce
encounter
because
U2
has
(a
rotation
of)
tile
d
while
reading
1
produce key
centre
is inbetween
two
When no symbol
hori::= tiles
+ whoserules,
resulting
set::=patterns
of transducer
and
how to remedy
thesq.
problem.
1
1
2
1
i
1
2
1
2
2
2
2
2
i
i
1
1
2
2
1
2
1
1
2
2
1
1
2
2
2
2
2
1
2
2
i
1
2
1
2
1
i
1
2
2
– State
E ignores
symbols
wi and
produces
the even-numbered
vertical
lines
symbols
+
+
+
+ no horiproduce
key
whose
isstate
inbetween
two
sq. When
::=patterns
::= tilesimmediately
+ zontal
+
+
w, h , h
takes place,
i.e.,centre
when
Sthe
encounters
symbol
::=growth
using
tile
sq;
analogously,
state
O
produces
odd-numbered
vertical
lines
zontal
growth
takes
place, i.e.,towhen
state
S encounters
immediately
symbol
w2 , state
OM
is introduced
work
analogously
to state
O by producing
using
tile
sq
(left
side
of
Figure
8).
m
8
::=
Festschrift H.-J.
Kreowski
8 / 16
w2 , state
OM producing
isw introduced
to instead
work analogously
to top
state
h by producing
h
tiles
sq
but
tile
d
of
the
andO
bottom
border
h
h
h
m ,and
1 for which
1 symbols
h
h h
– States
D2
D3
encounter
only
hi d
, from
they
grow
the lower
tiles
sq
,
but
producing
tile
d
instead
of
d
for
the
top
and
bottom
border
m
1
1 it to the interested reader
+ + to find out
+
(Figure
8 on
right).
We leave
why
+ (and
::=the
::=reader
half
of
the
right
border
the
upper
halfinterested
of the left
border).
(Figure
8 on
the
right).
We leave
it tointhe
to find out
why
+
+
+
+ + 1 cannot
::=
::=
+ nevertheless
+
+
+
the
key
pattern
shown
Figure
be
generated
by
the
::= half
::= of the left border)
::=the
::=half
– The
upper
of key
the pattern
right border
(and
the lower
nevertheless
shown
in
Figure
1
cannot
be
generated
by
the
resulting Fig.
set 7.
of transducer
rules,
and
how
to
remedy
the
problem.
Transducer
toand
grow
a design
horizontally
isresulting
grown through
states U1, rules
U2 and
U3how
from
hi (Figure
10). These
set of transducer
rules,
to symbols
remedy
the
problem.
+
Fig. 10. the
Transducer
rules
to produce
the second
corner As may
states produce
alternative
corner
with tiles
d1 and type
d2 asoffollows:
i
i
Fig. 8.
1
1
2
1
2
2
Transducer rules to grow a design vertically
1
1
2
2
+ symbols w1
– State R::=executes horizontal+ growth and may encounter
w
w
::=
(Figure 7).
w
w
1
1
1
1
2
2
2
(left
+
+
+
+
::=
+
+
::=
Fig.encounters
6.
initial statewh2
::= Transducer rules to start aw1 computation from
w2 the::=
::=
::=
symbols
encounters
, w2, wh2
wsymbols
1
w2, wh2
w1 , +
w2
w2
2
2
+
+w
+
w
::=
Fig.initial
8. Transducer
rules
to grow
a design
vertically w1 2
– State S is the
state and
may
encounter
symbols
encounters
Fig. 8. Transducer
rules to grow a design vertically
+ initial state
Fig.
6.Figure
Transducer
column
in
6). rules to+ start a computation from the
symbols
+ initial state
Fig.
6. Transducer rules to+ start a computation from the
w , w , wh
ECEASST
– State R executes horizontal growth and may encounter symbols w1 2
2
h1 , but7).on
encountering
, i.e.,tofor
theacorner,
it has to be tile d1 instead,
Fig.
7. Transducerh2rules
grow
design horizontally
(Figure
h1State
, butisSon
h2 ,with
i.e., tile
for
corner, itsymbols
has to bewtile
wh
wh d1 instead,
–which
isencountering
the initial
state
and
maythe
suitably
combined
dencounter
1 wh
2
2 (left
2 .wh
–which
State
S
is
the
initial
state
and
may
encounter
symbols
w
is
suitably
combined
with
tile
d
.
1
2 (left
2 right column of Figure 26 serve
column
Figure
6).
h rules in hthe
w transducer
– Lastly,
theinthree
to
E, O and OM
column
in
Figure
6).
– –Lastly,
the
three
transducer
rules
in
the
right
column
of
Figure
6
serve
to
encounter
+ growth
::=
+tiles
State
R
executes
horizontal
and
may
encounter
symbols
w
produce
key
patterns
whose
centre
is
inbetween
two
sq.
When
no
hori1
2
2
+
– State
E ignores
symbols
wi +and
produces
theencounter
even-numbered
vertical
lines
symbols
::=
+tiles
–
State
R
executes
horizontal
growth
and
may
symbols
w
produce
key
patterns
whose
centre
is
inbetween
two
sq.
When
no
hori1
2
2
(Figure
7).
+ zontal
+
+
w
,
h
,
h
growth
takes
place,
i.e.,
when
state
S
encounters
immediately
symbol
::= ::=
using
tile
sq;
state
O produces
the
odd-numbered
verticalsymbol
lines
(Figure
7). analogously,
zontal
growth
takes
place,
i.e.,
when
state
S
encounters
immediately
w2 , state
is introduced
to work
to state O by producing
using
tile sqOM
side of Figure
8). analogously
m (left
::=
w2 , state
OM
isw introduced
to instead
work
analogously
to top
state
by producing
tiles
sq
,
but
producing
tile
d
of
d
for
the
andO
bottom
border
h
h
h
h
m
1
1
– States
D2
and
D3
encounter
only
symbols
h
,
from
which
they
grow
the lower
i
tiles
sqm86.
, on
but
producing
tile
d1 instead
ofinterested
d1 for
thethe
top
and
bottom
border
Fig.
Transducer
rules
to
start
aw to
computation
from
initial
state
::=
::=
w
wh out why
(Figure
the
right).
We
leave
it
the
reader
to
find
+
+
::=
6.on
Transducer
startupper
computation
from
the
initialtostate
half
ofFig.
the
right
borderrules
(and
the
halfinterested
of the
border).
w left
wh out why
(Figure
8::=
We to
leave
itaw to
reader
find
::= + the
::=be generated
+ nevertheless
+
+ by the
the right).
key pattern
shown
inthe
Figure+ 1 cannot
::=
::=
– The
upper +halfthe
of key
the
right
border
(and
the
lower
half
of
the
left
border)
nevertheless
pattern
shown
in
Figure
1
cannot
be
generated
by the
+
+
+
::=
resulting Fig.
set
of
transducer
rules,
and
how
to
remedy
the
problem.
7.
Transducer
toand
grow
a design
horizontally
+
+ rules
+to symbols
is–resulting
grown
states
U1,
U2
and
U3
from
hi +(Figure
These
::=
set
ofFig.
transducer
rules,
remedy
the
problem.
8. Transducer
rules
tohow
grow
a design
vertically
State Sthrough
is the
initial
state
and
may
encounter
symbols
w1 10).
2
2 (left
Fig.initial
8.
Transducer
rules
to
grow
a design
vertically
– column
State
Sencounters
is Figure
the
state corner
and
may
encounter
symbols
w
(left
1
2
2 may
states
produce
the
alternative
with
tiles
d
and
d
as
follows:
As
in
6).
1
2
symbolsFig. 8.
encounters
Transducer
rules
to
grow
a design
vertically
Fig.
8.
Transducer
rules
to
grow
a
design
vertically
column
in
Figure
6).
, w , wh 5, state U2 is one step behind the other two states, with the
symbols
be
seen in
Figure
8:horizontal
Transducer
rules
to grow
design vertically
– State
R wFigure
executes
growth
and
may aencounter
symbols
w1 h2
2
h
h
h
w , w , wh
– (Figure
State
R 7).
executes
horizontal
growth
and
may
encounter
symbols
w1dh1 1instead,
– retardation
State
ignores
symbols
wi hand
produces
the
even-numbered
vertical
h1 E, but
on
encountering
,Xi.e.,
for
the
corner,
it has to
tile
provided
by state
on
the
first
occurrence
ofbe
symbol
.2 lines
This2
2rules
Fig.
7.
Transducer
to
grow
a
design
horizontally
+
h1tile
, butsq;
on
encountering
h2rules
,with
i.e.,
for
the
corner,
it has to be tilevertical
d1 instead,
Fig.
7.+ to
Transducer
to
grow
design
horizontally
(Figure
7).
using
analogously,
state
O rotation
produces
the
lines
which
isU2
suitably
combined
tile
d2+a. of)
is
because
has
produce
tileodd-numbered
dhas
symbol
1 while
h
encountering
i.e.,
for
the
corner,
ithas
tobebereading
tile+ dd1instead,
instead,
+h 2 , (a
+ 1 , but on
::=
::=
which
is
suitably
combined
with
tile
d
.
h
,
but
on
encountering
h
,
i.e.,
for
the
corner,
it
to
tile
1
2
2 right column of Figure 6 1serve to
h
h
w
–
Lastly,
the
three
transducer
rules
in
the
using
tile
sq
(left
side
of
Figure
8).
::=
::=
msymbolscombined
E, O and
OM
which
is
d2them
. rightand
• State
ignores
wi (i.e.,with
itwith
consumes
proceeds
to their
subtree
h rules
– ELastly,
thesuitably
three
indishthe
column
of Figure
6 serve
to without
wtransducer
which
issymbols
suitably
combined
tiletile
encounters
encounter
Otwo
and OM
2 .inbetween
produce
key
patterns
centre
tiles
sq.
When
no
hori+ whose
–anyStates
D2
and
D3
encounter
only
symbols
hiright
, the
fromE,
which
they
grow
the
lower
– –further
State
E
ignores
symbols
w
and
produces
even-numbered
vertical
lines
Lastly,
the
three
transducer
rules
in
the
column
of
Figure
6
serve
to
symbols
i
h
,
h
action)
and
produces
the
even-numbered
vertical
lines
using
tile
encounter
produce
key
patterns
centre
isstate
inbetween
two of
tiles
sq. When
no
hori8 the
– –Lastly,
the
three
transducer
rules
rightthe
column
Figure
6 serve
tosq; analo+whose
E::=growth
ignores
symbols
wstate
and
produces
even-numbered
vertical
lines
+ State
+ border
+in
wleft
, h , h border).
zontal
takes
place,
i.e.,
when
Sthe
encounters
immediately
symbol
symbols
ithe
half
of
the
right
(and
upper
half
of
the
using
tile
sq;
analogously,
O
produces
odd-numbered
vertical
lines
produce
key
patterns
whose
centre
is
inbetween
two
tiles
sq.
When
no
horigously,
statetile
O
produces
the
odd-numbered
vertical
lines
tile When
sqm
. Finally,
state OM
+ zontal
+ 9. takes
+toisgrow
growth
place,
i.e.,
state
encounters
w , h using
, htiles immediately
Fig.
Transducer
rules
theSthe
vertical
borders
::=
produce
key
patterns
whose
centre
inbetween
two
sq.
nosymbol
horiusing
sq;
analogously,
state
O
produces
odd-numbered
vertical
lines
w
OM
isthe
introduced
towhen
work
analogously
to
state
by
producing
2 , state
tilegrowth
sq
(left
side
ofwith
Figure
8).
zontal
takes
place,
i.e.,
when
state
encounters
immediately
symbol
Fig.
Transducer
rules
to
grow
theSthat
vertical
borders
0left
–behaves
Theusing
upper
half
of
right
border
(and
the
lower
half
oftile
theO
border)
m 9.
::=
w
,
state
OM
is
introduced
to
work
analogously
to
state
O
by
producing
nearly
the
same
as
O
,
the
difference
it
places
d
instead
of
d
2
1 for the
zontal
growth
takes
place,
when
S dencounters
immediately
symbol
using
tilem ,sq
(left
side ofi.e.,
Figure
8).state
tiles
sq
but
producing
tile
dto
instead
of
the
andgrow
border
m
h
h analogously
h
h
::=
1 for which
1 symbols
w2 , state
OM
iswwencounter
introduced
work
tohtop
state
O1bottom
by
producing
–
States
D2
and
D3
only
h
,
from
they
the
lower
is
grown
through
states
U1,
U2
and
U3
from
symbols
(Figure
10).
These
i
i
tiles
sq
,
but
producing
tile
d
instead
of
d
for
the
top
and
bottom
border
h
h
h
h
border
(Figure
m
1 symbols
, (Figure
stateD2
OM
isthe
introduced
to
work
to reader
state
O by
88).
on
right).
Wetile
leave
it with
toanalogously
the
findproducing
out
why
–w2half
States
and
D3
encounter
only
hinterested
, 1from
which
they
the
+ (and
+ togrow
id
tiles
but
producing
d1 upper
instead
of
for
the
bottom
border
ofsq
the
right
border
the
half
of
the
leftreader
border).
m
1d
states
produce
the
alternative
corner
tiles
and
dtop
asand
follows:
As lower
may
(Figure
8 , on
the
right).
We dleave
it tointhe
interested
tobottom
find out
why
1the
2 and
+
+generated
tiles
sq
,
but
producing
tile
instead
of
d
for
top
border
+ half
+
+
+
+
m
1
nevertheless
the
key
pattern
shown
Figure
1
cannot
be
by
the
of
the
right
border
(and
the
upper
half
of
the
left
border).
1
::=Figure
::= two
(Figure
8D3on
the
right).
Weisleave
it to
the
interested
reader
to
find
out
why
be
seen
in
5,
state
U2
one
step
behind
the
other
states,
with
the
–U+ and
The
upper
half
of
the
right
border
(and
the
lower
half
of
the
left
border)
• States
D2
and
encounter
only
symbols
h
,
from
which
they
grow
the
lower
half
nevertheless
the
key
pattern
shown
in
Figure
1
cannot
be
generated
by
the of the
+
+
+
+
X
encounter
i
::=
::=
(Figure
8
on
the
right).
We
leave
it
to
the
interested
reader
to
find
out
why
resulting
set
of
transducer
rules,
and
how
to
remedy
the
problem.
– symbols
The
upper
half7.
ofTransducer
the
right
border
(and
lower
halfh of
of
the
left
nevertheless
the
key
pattern
shown
inhow
Figure
1 horizontally
cannot
beproblem.
the
h , h through
hon
hgenerated
h. by
Fig.
rules
to
grow
a the
design
is
grown
states
U1,
U2
and
U3
from
symbols
10).hborder)
retardation
provided
byh half
state
Xthe
the
first
occurrence
symbol
This
i (Figure
resulting
set
of
transducer
rules,
and
to
remedy
the
1These
right
border
(and
the
upper
of
left
border).
nevertheless
the7.
key
pattern
shown
in
Figure
1symbols
cannot
be
generated
by the
Fig.
Transducer
rules
toand
grow
a design
horizontally
is
grown
through
states
U1,
U2
and
U3
from
h
(Figure
10).
These
i
resulting
set
of
transducer
rules,
how
to
remedy
the
problem.
+ d as reading
+ toalternative
states produce
corner
with of)
tilestiled::=
and
follows: As
may
is because
U2 hasthe
produce (a
rotation
symbol
1 while
1 d
resulting
set::=ofFig.
transducer
rules,
andtohow
toa design
remedy
thed22problem.
states
produce
the
corner
with
d::=
as follows:
As may
8.5, alternative
Transducer
grow
vertically
+ seen
+ tiles
+ isrules
+
1 and
be
in::=Figure
state
U2
one
step
behind
the
other
two
states,
with
the
Fig. 8.5, Transducer
h
h to grow a design vertically h
h
be seen
Figure
state
U2i and
isrules
one
step
the other of
twosymbol
states,
with
the
– retardation
State
E in
ignores
symbols
w
produces
even-numbered
vertical
provided
byh state
X
thebehind
firstthe
occurrence
h
This
hon
h
1 h. lines
+ of symbol
+
– using
State tile
E ignores
symbols
w
and
produces
the
even-numbered
vertical
lines
8
retardation
provided
by
state
X
on
the
first
occurrence
h
.
This
i
1
sq;
analogously,
state
produces
vertical
h reading
h lines
is because
U2
has+ to produce
(aO rotation
of)the
tileodd-numbered
d1 while
symbol
+
+
+
+
::=analogously,
::=has
h(a
using
tileonsq;
Ofor
produces
lines
h1because
, +but
encountering
hstate
the corner,
itodd-numbered
to be reading
tile vertical
d instead,
is
U2
has side
toh produce
rotation
of)the
tile
d1 while
symbol
2+, i.e.,
using
(left
of
Figure
8).
+ 1
+ tile sq::=
+
::=
m
+
+
h1 , but
on
hFigure
i.e., tile
for
the
corner, ::=
it has to be tile d1 instead,
2 ,with
::=
using
tile
sqencountering
side
of
8).
which
issymbols
suitably
combined
d
.
encounters
::=
::=
m (left
2
+ encounter
+ only
+
– States
and D3
symbols
hi , from
::=
::=which they grow the lower
which
suitably
combined
with
tile
d2+. right
h ,D2
hissymbols
encounters
Lastly,
the
three
transducer
rulessymbols
in8 the
column
ofthey
Figure
6 serve
to
::=
::= which
–– half
States
and
D3border
encounter
only
hi of
, from
grow
the lower
h ,D2
h
of
the
right
(and
the
upper
half
the
left border).
– produce
Lastly, the three
transducer
rules
in
the
right
column
of Figure
6 serve
to
Fig.
9.border
Transducer
rulesupper
to8isgrow
the
vertical
borders
patterns
whose
centre
inbetween
two
tiles
sq. When
no horihalf of thekey
right
(and
the
half
of
the
left
border).
Fig.
9.
Transducer
rules to(and
grow
the lower
vertical
borders
– The
upperkey
half
of the
right border
the
half
of sq.
theWhen
left border)
produce
patterns
whose
centre
is
inbetween
two
tiles
no
horizontal
takes
place,
i.e.,
when
state
Ssecond
encounters
immediately
symbol
Fig.growth
10.
Transducer
rules
to
produce
the
type
of
corner
Fig.
9.
Transducer
rules
to(and
grow
the
vertical
borders
– is
The
upper
half
of
the
right
border
the
lower
half
of
the left
Figure
9:states
Transducer
grow
vertical
grown
through
U1,i.e.,
U2rules
andto
U3
from
symbols
hborders
(Figure
10).border)
These
zontal
growth
takes
place,
when
state
Sthe
encounters
symbol
i immediately
w
,
state
OM
is
introduced
to
work
analogously
to
state
O
by
producing
2
is grown
through
states
U1, U2
and with
U3 from
h
10).As
These
states
produce
the
alternative
corner
tilessymbols
d1 and
d2i (Figure
as follows:
may
w
,
state
OM
is
introduced
to
work
analogously
to
state
O
by
producing
2
tiles sq
tile dcorner
oftiles
d1 for
top
and
bottomAsborder
m , but producing
1 instead
states
produce
the5, alternative
with
d1the
and
d2two
as follows:
may
be
seen
in, Figure
state U2
isdone
step
behind
the
other
states,
with
the
tiles
sq
but
producing
tile
instead
of
d
for
the
top
and
bottom
border
U
and
X
encounter
m
1
1 it to the interested reader to find out why
(Figure
8
on
the right).
We
leave
be
seen
in
Figure
5,
state
U2
is
one
step
behind
the
other
two
states,
with
the
,
h
symbols
h
h
h
h
h
U
and
X
encounter
retardation
provided
by We
state
X on
the
first
occurrence
of to
symbol
h1 . why
This
(Figure
8
on
the
right).
leave
it
to
the
interested
reader
find
out
nevertheless
the key by
pattern
Figure
1 cannot be
generated
by
the
symbols h , h provided
h state shown
hon in
h
h. This
retardation
X
the
first
occurrence
of
symbol
h
1
+
+
isnevertheless
because U2
haskey
to pattern
produceshown
(a rotation
of) tile
while
reading symbol
the
inhow
Figure
1 cannot
beproblem.
generated
by the
::=of
::= d1 the
resulting
set
transducer
rules,
and
to
remedy
+
+
is because
U2 has to produce
(a rotation+ of) tile::= d1 while reading
symbol
+
+
+
resulting
set::=of transducer rules,
and how+ to remedy the problem.
+
+
+
::=
::=
1
2
2
1
i
2
2
2
2
2
i
i
1
1
2
2
1
2
2
1
1
2
2
1
1
2
1
2
2
1
2
2
2
1
i
1
2
i
1
2
2
2
i
1
2
i
1
2
i
1
2
1
2
i
1
2
1
2
i
1
2
1
2
1
2
1
2
1
1
2
1
2
2
1
1
1
2
1
2
2
2
i
i
+
+
1
2
1
2
1
2
1
2
1
2
1
2
h1
h1
h2
h2
h1
h1
h2
h2
::=
::=
::=
::=
::=
Fig. 10.
Fig. 10.
+
+
+
+
8
8
+
+
::=
::=
::=
::=
::=
+
+
+
+
Transducer rules to produce the second type of corner
Transducer rules to produce the second type of corner
Figure 10: Transducer rules to produce the second type of corner
• The upper half of the right border (and the lower half of the left border) is grown through
states U1, U2 and U3 from symbols hi (Figure 10). These states produce the alternative
corner with tiles d10 and d20 as follows: As may be seen in Figure 5, state U2 is one step
9 / 16
Volume 26 (2010)
Generation of Celtic Key Patterns with Tree-based Collage Grammars
behind the other two states, with the retardation provided by state X on the first occurrence
of symbol h1 . This is because U2 has to produce (a rotation of) tile d1 while reading
symbol h1 , but on encountering h2 , i.e., for the corner, it has to be tile d10 instead, which is
suitably combined with tile d20 .
Reconsidering the complete model, one may ask why one should start growing key patterns
from their centre, and not rather from the centre of one of their sides, or indeed a corner. These
are, in fact, viable and sometimes even preferable alternatives. The question will be discussed
with the variations of key patterns studied in the next section.
4
Variations of Celtic Key Patterns
In Celtic key patterns, both the basic tiles and their structural arrangements offer many possiblities for distinctive designs. A small collection of alternatives is presented in this section.
The considerations of the preceding section started with identifying a basic triangle tile in a
complete
the original
many
variations
of this
very typical,
sides,key
or pattern.
indeed aIn
corner.
These Celtic
are, inartwork,
fact, viable
and
sometimes
evenfirst,
preferable
alternatives.
TheAquestion
will be discussed
the variations
key
triangle
may be found.
small collection
of triangleswith
is shown
in the firstof
row
of patterns
Figure 11.
studied
next section.
Note
that ininallthe
triangles,
the path enters at the same position close to the right angle, continues
along the hypotenuse with half the original width, and leaves again at the acute angle opposite of
the entrance.
Any triangleof
complying
geometric constraints can be used instead of the
4 Variations
Celticwith
keythese
patterns
basic triangle of the previous section to produce a well-formed pattern with continuous paths.
The smallest
entirely
of border
triangles,
areand
shown
the second row
In Celticsuch
key patterns,
patterns,consisting
both the basic
patterns
(i.e.,
the tiles)
theirinstructural
many
possiblities
for distincive
designs.
A small collection
of needs
of thearrangements
figure. In orderoffer
to grow
larger
patterns with
the method
of the preceding
section, one
alternatives
is presented
in ◦this
section.
to compose
a triangle
with its 180
rotation
about the centre of the hypotenuse to form a square
tile. The The
derived
square tiles are
in the lastsection
two rows
of Figure
The thirdarow
contains
considerations
of shown
the preceding
started
with11:
identifying
basic
triangle
pattern
in centre
a complete
keyused
pattern.
the original
Celticand
artwork,
many
the squares
with
vertical
path (as
in theInpreceding
section),
the fourth
row the
variations
of this first,
triangle
may
be found.
of small
squares
with horizontal
centrevery
path,typical,
obtained
from the
upper
squaresAbysmall
a 90◦collection
rotation. A
triangles
shown using
in thethese
firstsquares
row ofisFigure
Note that
selection
of keyispatterns
shown 11.
in Figure
12. in all triangles, the
Fig.
Various
basic
triangles,
smallest
corresponding
key patterns,
and derived
Figure
11:11.
Various
basic
triangles,
smallest
corresponding
key patterns,
and derived
square tiles
square
tiles
for
larger
key
patterns
for larger key patterns
path enters at the same position close to the right angle, continues along the
10 / 16
hypotenuse with half the original width, and leaves again at the acute angle opposite of the entrance. Any triangle complying with these geometric constraints
can be used instead of the basic triangle of the previous section to produce a
well-formed pattern with continuous paths. The smallest such patterns, consisting entirely of border triangles, are shown in the second row of the figure. In order
Festschrift H.-J. Kreowski
ECEASST
The geometric constraints for triangles imply similar constraints for squares: A path enters at
a fixed position on each side of a square, and the paths within a square are connected in some
way. In Celtic art, many such squares have been used (see Figure 13 for a small sample). Since
these squares cannot be divided satisfyingly into triangles, they have to be combined with border
triangles so that full key patterns may be generated. Some samples are shown in Figure 14.
Fig. 12. Key patterns based uniformly on a triangle
a square are connected in some way. In Celtic art, many such squares have been
used (see Figure 13 for a small sample). Since these squares cannot be divided
satisfyingly into triangles, they have to be combined with border triangles so
that full key patterns may be generated. Some samples are shown in Figure 14.
Fig.12:
12. Key
Key
patterns
based
uniformly
onin
a triangle
One can also
combine
more
than one
square
type
aakey
pattern. To avoid
Figure
patterns
based
uniformly
on
triangle
disorderly arrangements, suitable syntactic rules may be employed. One such
rule is to distinguish between constants sq and sqm (rather than having sqm as
Onea can
also combine
morethus
than
oneway.
square
type art,
in amany
keydifferent
pattern.
To avoid
disorderly
arreflection
of sq)
and
admit
interpretations
by
squares;
key
a square
are
connected
in
some
In Celtic
such squares
have the
been
rangements,
suitable
syntactic
rules
may
be
employed.
One
such
rule
is
to
distinguish
between
used
(see
Figure
13
for
a
small
sample).
Since
these
squares
cannot
be
divided
patterns in Figure 15 are of this kind. This rule may be refined by requiring
triangles,
they
toabe
combined
border
thatsatisfyingly
squares
used have
alternately
to interpret
which
leadsinterpretations
tosokey
constants
sqtwo
anddistinct
sqm into
(rather
thanbe
having
sq
reflection
of with
sq) sq,
and
thus triangles
admit
m as
that
full
key
patterns
may
be
generated.
Some
samples
are
shown
in
Figure
14.
patterns
as shown
in Figure
by different
squares;
the key
patterns16.in Figure 15 are of this kind. This rule may be refined by
One
can
also
combine
more
than
one square
a key
pattern.
To avoid
requiring that
two
distinct
squares
be for
used
alternately
to type
interpret
sq,pattern
which
leads
to key patterns
Further distribution rules
different
squares
in in
a key
include:
arrangements, suitable syntactic rules may be employed. One such
as shown disorderly
in Figure 16.
rule is to distinguish between constants sq and sqm (rather than having sqm as
a reflection of sq) and thus admit interpretations by different squares; the key
patterns in Figure 15 are of this kind. This rule may be refined by requiring
that two distinct squares be used alternately to interpret sq, which leads to key
patterns as shown in Figure 16.
Further distribution rules for different squares in a key pattern include:
Fig. 13.
of of
square
tiles
Figure
13:Sample
Samplecollection
collection
square
tiles
11 in a key pattern include:
Further distribution rules for different squares
• Using different squares for the lower half and the upper half; this may be implemented in
Fig. 13. Sample collection of square tiles
11 / 16
Volume 26 (2010)
11
Generation of Celtic Key Patterns with Tree-based Collage Grammars
Fig.14:
14. Key
Key patterns
with
a triangle
border
Figure
patternsbased
basedonona asquare
square
with
a triangle
border
our model by doubling the states of the transducer so that the two halves may be treated
independently, but to the same vertical extension as given by the input term.
• Using different squares for each row of squares, but having the choice for the upper half
reflected in the lower half; this may be implemented in the input term of the transducer by
replacing the symbols h1 with references to the squares that shall be used.
• Finally, one may use branching synchronization to achieve a more general symmetric distribution of synchronized squares. The method used to generate breaklines within the
rectangular Celtic knot designs in [Dre06] is well suited for this. A nesting depth of 2
for the resulting branching collage grammar is sufficient to ensure that the overall design
maintains horizontal and vertical symmetry, even though blocks of different squares may
alternate in a nondeterministic fashion.
Coming back to the question at the end of Section 3, the two pattern variation approaches
above are good reasons
toKey
startpatterns
the growth
keysq
pattern
from the centre at least of the vertical
Fig. 15.
whereofsqa and
m are interpreted differently
direction. A further reason lies in the last four tiles shown in Figure 13, i.e., the dead-end spiral,
the only type of tile given in that figure that does not have (at least) 180◦ rotational symmetry.
Our model admits rotation of this tile between 12
the lower and the upper half of a key pattern; see,
e.g., the last pattern in Figure 15. If, however, it is desired that all occurrences of this tile have
the same orientation, then it is preferable to start vertical growth from the top (or the bottom) of
the pattern.
Festschrift H.-J. Kreowski
12 / 16
ECEASST
Fig. 14. Key patterns based on a square with a triangle border
Fig.15:
15. Key
Key patterns
patterns where
interpreted differently
m are
Figure
wheresqsqand
andsqsq
m are interpreted differently
12
Fig.
16.Key
Keypatterns
patterns where
where sq
by by
twotwo
distinct
squares
Figure
16:
sqisisinterpreted
interpretedalternately
alternately
distinct
squares
13 / 16
– Using different squares for the lower half and the upper half; this may be implemented in our model by doubling the states of the transducer so that the
two halves may be treated independently, but to the same vertical extension
Volume 26 (2010)
as given by the input term.
– Using different squares for each row of squares, but having the choice for the
upper half reflected in the lower half; this may be implemented in the input
term of the transducer by replacing the symbols h1 with references to the
squares that shall be used.
Generation of Celtic Key Patterns with Tree-based Collage Grammars
5
Conclusion
In this paper we have shown how rectangular key patterns with interior and border variations can
be modelled using (tree-based) collage grammars to interpret the generated terms. All considered key pattern variations are covered by a class of tree generators that combine a regular tree
grammar for monadic terms with a top-down tree transducer.
The model for rectangular knotwork as proposed in [DK00, Dre06] is also based on square
tiles, but uses branching tree grammars to encode a horizontally and vertically symmetric distribution of so-called breaklines over a knot. Consequently, the syntactic structure of rectangular
knotwork with breaklines may be assumed to be one level more complex than the structure of
rectangular key patterns with regular distribution of tiles.
For both knotwork and key patterns, it is interesting to study how evenly placed holes of
varying sizes and shapes can be added to the base pattern. These holes can either be left plain, or
they can be filled with any type of Celtic tiling. The designs so produced are called carpet-page
designs. We note that for an authentic look, the holes will have to be distributed in a symmetric
fashion across the expanse of the base design.
While the basic shape of such a hole is rectangular, holes in Celtic art also come in L, cross
or crosslet shapes. The boundary of the hole itself needs to be sealed off with specific border
tiles. Of course, holes need not be restricted to the interior of the key pattern boundary, but may
also lie directly on it, breaking up the rectangular border. If these border cutouts are regularly
distributed as well, the resulting key pattern designs display a multitude of interesting shapes, of
which the cross is the most basic.
In [DK00, Dre06], a way to include such holes is proposed for square knotwork panels that are
grown diagonally from the centre to the corners and thus come with a natural vertical/horizontal
synchronisation. It would be nice to have a generalised method that works for rectangular patterns (and therefore needs additional synchronisation), in any kind of tiling with defined border
tiles.
In Celtic art, it is often customary to fill such holes with some contrasting decorative pattern.
This presents a modelling problem, since whatever pattern is created may not grow beyond the
boundaries of the hole, and collage grammars do not offer context-sensitive queries. No matter
whether the new pattern is created by subdivision or growth, information about the shape and
size of the hole is required in order to create a correct pattern with a border that seamlessly joins
the boundary of its parent hole. Then, a formalism is required that can deal with the multitude
of possible shapes and sizes and create matching patterns. Additionally, some synchronisation
between the scale of the tiles in the base panel (which inform the dimensions of possible holes)
and the scale of hole-filling tiles must take place.
The creation of round key pattern (or knotwork) panels with a circular tesselation pattern calls
for another type of construction method altogether. Collage grammars as they are used here rely
on local replacement, which cannot be used to recompute the scaling and placement operations
necessary to evenly place tiles along a growing circle. A suitable construction method for circular
tesselation patterns might also shed some light on how to generate Celtic spiral patterns. It may
be interesting to note that in [Dre06], a method is suggested for generating a tiling of concentric
rings of triangles, and from there spiral tilings, including the Frazer spiral. It might also work
for circular Celtic patterns, as the basic idea is growing concentric rings of tiles outward from an
Festschrift H.-J. Kreowski
14 / 16
potenuse. Consequently, these tiles do not have rotational symmetry with respect
to path entry points at their sides, so that they have to be arranged differently
to form entire patterns. The second class uses hook-like squares such as the four
last squares in Figure 13, but some of the path entries may be sealed off. The
reason for this can be seen in Figure 17: There are many long straight black lines
that do not finish off by properly meeting with other black lines at each end.
Of course, lengthening these lines at their ends requires the two neighbouring
tiles which form the line end to agree. Moreover, the orientation of the tiles in
hook patterns is not so uniform as in the key patterns considered in this paper.
Next steps for future work may include implementing collage grammars for these
ECEASST
classes of key patterns, too.
Fig. 17.
Figure
17:Pseudo
Pseudohook
hookpattern
pattern
inner circle which is subdivided in a fan-like arrangement of triangles. This approach, however,
cannotReferences
be used to generate a truly circular outer border by further subdivision.
In the illuminated pages of Celtic manuscripts, key patterns come with colour. Often, this just
[All93]
J. Romilly Allen. Celtic Art in Pagan and Christian Times. Bracken Books,
entails giving a different
London, colour
1993. to the paths than to the background, which can be achieved just
like having
white
paths
on
a black
background.
Just asofoften,
however, aConstable,
sophisticated
colouring
[Bai51]
George Bain.
Celtic
Art. The Methods
Construction.
London,
1951.
scheme is used based on colour blocks in rectangular or lozenge shapes. How to add colour to
[Bai90]in such
IainaBain.
Knotwork.
Constable,
London,
1990. as presented in [Dre06]
key patterns
way isCeltic
an open
problem,
though colour
operations
[Bai93]
Iain Bain. Celtic Key Patterns. Constable, London, 1993.
might [DEKK03]
allow simulating
at least a simplified version of the original Celtic colour schemes.
Frank Drewes, Sigrid Ewert, Renate Klempien-Hinrichs, and Hans-Jörg
Finally, there are
two classes
of Celticraster
key patterns
for which
we havegrammars.
not yet devised
Kreowski.
Computing
images from
grid picture
Jour- a collage grammar-based
generation
technique.
The
first
class
uses
square
tiles
that
are
obtained
from
nal of Automata, Languages and Combinatorics, 8(3):499–519, 2003.
basic triangles by reflection at the hypotenuse. Consequently, these tiles do not have rotational
symmetry with respect to path entry points at their sides, so that they have to be arranged dif15
ferently to form entire patterns. The second class uses hook-like squares such as the four last
squares in Figure 13, but some of the path entries may be sealed off. The reason for this can
be seen in Figure 17: There are many long straight black lines that do not finish off by properly
meeting with other black lines at each end. Of course, lengthening these lines at their ends requires the two neighbouring tiles which form the line end to agree. Moreover, the orientation of
the tiles in hook patterns is not so uniform as in the key patterns considered in this paper. Further
steps for future work may include designing collage grammars for these classes of key patterns
as well.
Bibliography
[All93]
J. R. Allen. Celtic Art in Pagan and Christian Times. Bracken Books, London, 1993.
[Bai51]
G. Bain. Celtic Art. The Methods of Construction. Constable, London, 1951.
[Bai90]
I. Bain. Celtic Knotwork. Constable, London, 1990.
[Bai93]
I. Bain. Celtic Key Patterns. Constable, London, 1993.
15 / 16
Volume 26 (2010)
Generation of Celtic Key Patterns with Tree-based Collage Grammars
[DEKK03] F. Drewes, S. Ewert, R. Klempien-Hinrichs, H.-J. Kreowski. Computing Raster Images from Grid Picture Grammars. Journal of Automata, Languages and Combinatorics 8(3):499–519, 2003.
[DK99]
F. Drewes, H.-J. Kreowski. Picture generation by collage grammars. In Ehrig et al.
(eds.), Handbook of Graph Grammars and Computing by Graph Transformation,
Vol. 2: Applications, Languages, and Tools. Chapter 11, pp. 397–457. World Scientific, 1999.
[DK00]
F. Drewes, R. Klempien-Hinrichs. Picking Knots from Trees – The Syntactic Structure of Celtic Knotwork. In Proc. 1st Intl. Conference on Theory and Application of
Diagrams 2000. Lecture Notes in Artificial Intelligence 1889, pp. 89–104. Springer,
2000.
[DKK03]
F. Drewes, R. Klempien-Hinrichs, H.-J. Kreowski. Table-driven and contextsensitive collage languages. Journal of Automata, Languages and Combinatorics
8(1):5–24, 2003.
[DKL03]
F. Drewes, H.-J. Kreowski, D. Lapoire. Criteria to disprove context freeness of collage languages. Theoretical Computer Science 290:1445–1458, 2003.
[Dre00]
F. Drewes. Tree-Based Picture Generation. Theoretical Computer Science 246:1–51,
2000.
[Dre06]
F. Drewes. Grammatical Picture Generation – A Tree-Based Approach. Texts in
Theoretical Computer Science. An EATCS Series. Springer, 2006.
[HK91]
A. Habel, H.-J. Kreowski. Collage Grammars. In Ehrig et al. (eds.), Proc. 4th Intl.
Workshop on Graph Grammars and Their Application to Computer Science. Lecture
Notes in Computer Science 532, pp. 411–429. 1991.
[HKT93]
A. Habel, H.-J. Kreowski, S. Taubenberger. Collages and Patterns Generated by
Hyperedge Replacement. Languages of Design 1:125–145, 1993.
[KRS97]
L. Kari, G. Rozenberg, A. Salomaa. L Systems. In Rozenberg and Salomaa (eds.),
Handbook of Formal Languages. Vol. I: Word, Language, Grammar. Chapter 5,
pp. 253–328. Springer, 1997.
[Mee02]
A. Meehan. Maze Patterns. Thames & Hudson, London, 2002.
[Slo95]
A. Sloss. How to Draw Celtic Knotwork: A Practical Handbook. Blandford Press,
1995.
[Slo97]
A. Sloss. How to Draw Celtic Key Patterns: A Practical Handbook. Blandford Press,
1997.
Festschrift H.-J. Kreowski
16 / 16