SEMIGROUPS AND AUTOMATA ON INFINITE ... - Semantic Scholar

4 downloads 0 Views 257KB Size Report
Bull Research and Development, rue Jean Jaur es,. 78340 Les Clayes-sous-Bois, FRANCE. 1. Introduction. This paper is an introduction to the algebraic theory ...
SEMIGROUPS AND AUTOMATA ON INFINITE WORDS

Dominique Perrin

Institut Gaspard Monge, Universite de Marne la Vallee, 93166 Noisy-le-Grand, FRANCE. Jean-Eric Pin ()

Bull Research and Development, rue Jean Jaures, 78340 Les Clayes-sous-Bois, FRANCE.

1. Introduction This paper is an introduction to the algebraic theory of in nite words. In nite words are widely used in computer science, in particular to model the behaviour of programs or circuits. From a mathematical point of view, they have a rich structure, at the cross-roads of logic, topology and algebra. This paper emphasizes the combinatorial and algebraic aspects of this theory but the interested reader is referred to the survey articles [32,43] or to the report [30] for more information on the other aspects. In particular, the important topic of the complexity of the algorithms on in nite words is not treated in this paper. The paper is written with the perspective of generalizing the results on recognizable sets of nite words to in nite words. This does not exactly follow the historical development of the theory, but it gives a good idea of the type of problems that occur in this eld. Some of these problems are still open, or have been solved quite recently so that the de nitions and results presented below may not be as yet nalized. The rst result to be generalized is the equivalence between nite automata, nite deterministic automata and rational expressions. If one adds in nite iteration (\omega" operation) to the standard rational operations, union, product and star, one gets a natural de nition of the !-rational sets of in nite words that extends the de nition of rational sets of nite words. Buchi [5] was the rst to propose a de nition of nite automata acting on in nite words. This de nition suces to extend Kleene's theorem to in nite words: the sets of in nite words recognized by nite Buchi automata are exactly the !-rational sets. This result is now known as Buchi's theorem.  From 1st Sept 1993, LITP, Universite Paris VI, Tour 55-65, 4 Place Jussieu, 75252 Paris Cedex 05, FRANCE. E-mail: [email protected]

( )

2 However, Buchi's de nition is not totally satisfying since deterministic Buchi automata are not equivalent to non deterministic ones. The connection between deterministic and non deterministic Buchi automata was enlightened by a deep theorem of McNaughton: a set of in nite words is recognized by a non deterministic Buchi automaton if and only if it is a nite boolean combination of sets recognized by deterministic Buchi automata. This result was prepared by a suitable de nition for automata on in nite words given by Muller [22]. These automata have the same power as the Buchi automata, but this time, non deterministic automata are equivalent to deterministic ones. It is a well known fact that nite semigroups can be viewed as a two-sided algebraic counterpart of nite automata that recognize nite words. Several attempts have been made to nd an algebraic counterpart of nite automata that recognize in nite words. Since the notion of in nite word is asymmetrical, nite semigroups are not suitable any more. They can be replaced by !-semigroups, which are, roughly speaking, semigroups equipped with an in nite product. The basic de nitions are quite promising, but a technical diculty arises almost immediately. Indeed, in order to design algorithms on nite !-semigroups one needs a nite representation for them, but the de nition of the in nite product apparently requires an in nite table, even for a 2-element !-semigroup. However, a Ramsey-type argument shows that the structure of a nite !-semigroup is totally determined by three operations of nite signature. That is, nite !-semigroups are equivalent to certain nite algebras of nite signature, the Wilke algebras. Now, the de nitions of a recognizable set, of a syntactic congruence, etc., become natural and most results valid for nite words can be adapted to in nite words. Carrying on the work of Arnold [1], Pecuchet [23,24] and the rst author [25,26,27], Wilke [44,45] has pushed the analogy with the theory for nite words suciently far to obtain a counterpart of Eilenberg's variety theorem for nite or in nite words. This is approximatively the point reached by the algebraic approach today, although current research may already have passed beyond. In any case, this is the place where our article nishes. The paper is organized as follows: the basic de nitions on words and !-rational sets are given in sections 2 and 3. Buchi automata are de ned in section 4, deterministic Buchi automata in section 5 and Muller automata in section 6. The equivalence between nite !-semigroups and nite Wilke algebras is established in section 7 and their connections with automata are presented in sections 8, 9 and 10. Syntactic !semigroups are introduced in section 11 and the variety theorem and its consequences are discussed in section 12. Section 13 presents the conclusion of the article.

3

2. Words

Let A be a nite set called an alphabet , whose elements are letters . A nite word is a nite sequence of letters, that is, a function u from a nite set of the form f0; 1; 2; : : : ; ng into A. If one puts u(i) = ai for 0  i  n, the word u is usually denoted by a0 a1    an , and the integer juj = n + 1 is the length of u. The unique word of length 0 is the empty word, denoted by 1. An in nite word is a function u from N into A, usually denoted by a0 a1 a2    , where u(i) = ai for all i 2 N. A word is either a nite word or an in nite word. Intuitively, the concatenation or product of two words u and v is the word uv obtained by writing u followed by v. More precisely, if u is nite and v is nite or in nite, then uv is the word de ned by 

juj (uv)(i) = vu((ii)? juj) ifif ii <  juj We denote respectively by A , A+ , AN the set of all nite words, nite non-empty words, and in nite words, respectively. We also denote by A1 = A+ [ AN the set of all non empty words. A word x is a factor of a word w if there exist two words u and v (possibly empty) such that w = uxv.

3. Rational sets The rational operations are the four operations union, product, plus and star, de ned on the set of subsets of A as follows (1) Union : L1 [ L2 = fu j u 2 L1 or u 2 L2 g (2) Product : L1 L2 = fu1 u2 j u1 2 L1 and u2 2 L2 g (3) Plus : L+ = fu1    un j n > 0 and u1 ; : : : ; un 2 Lg (3) Star : L = fu1    un j n  0 and u1 ; : : : ; un 2 Lg Thus we have the relations

L+ = LL = L L and L = L+ [ f1g The set of rational subsets of A is the smallest set of subsets of A containing the nite sets and closed under nite union, product and star. For instance, (a [ ab) ab [ (ba b) denotes a rational set. Similarly, the set of rational subsets of A+ is the smallest set of subsets of A+

containing the nite sets and closed under nite union, product and plus. It is not dicult to verify that the rational subsets of A+ are exactly the rational subsets of A that do not contain the empty word. It is possible to generalize the concept of rational sets to in nite words as follows. First, the product can be extended, by setting, for X  A and Y  AN ,

XY = fxy j x 2 X and y 2 Y g:

4 Next, we de ne an in nite iteration ! by setting, for every subset X of A+ X ! = fx0 x1    j for all i  0; xi 2 X g Equivalently, X ! is the set of in nite words obtained by concatenating an in nite sequence of words of X . In particular, if u = a0 a1    an , we set u! = a0 a1    an a0 a1    an a0 a1    an a0 a1    The set Rat(A1 ) of !-rational subsets of A1 is the smallest set R of subsets of A1 such that (a) ; 2 R and for all a 2 A, fag 2 R, (b) R is closed under nite union, (c) For every subset X of A+ and for every subset Y of A1 , X 2 R and Y 2 R imply XY 2 R, (d) For every subset X of A+ , X 2 R implies X + 2 R and X ! 2 R. In other words, the set of !-rational subsets of A1 is the smallest set of subsets of A1 containing the nite sets of A+ and closed under nite union, nite product, plus and omega. The !-rational sets which are contained in AN are called, by abuse of language, the !-rational subsets of AN . There is a very simple characterization of these sets, which is often used as a de nition.

Proposition 3.1. A subset of AN is !-rational if and only if it is a nite union of subsets of the form XY ! where X and Y are non-empty rational subsets of A+ . Example 3.1. The set of in nite words on the alphabet fa; bg having only a nite number of b's is given by the expression fa; bg a! . 4. Automata

A nite (non deterministic) automaton is a triple A = (Q; A; E ) where Q is a nite set (the set of states ), A is an alphabet, and E is a subset of Q  A  Q, called the set of transitions . Two transitions (p; a; q) and (p0 ; a0 ; q0 ) are consecutive if q = p0 . A path in A is a nite sequence of consecutive transitions e 0 = ( q 0 ; a 0 ; q 1 ) ; e 1 = ( q 1 ; a 1 ; q 2 ) ; : : : ; e n ? 1 = ( q n? 1 ; a n? 1 ; q n ) also denoted a ?1 a a

0 q ?! 1 q  q q0 ?! 1 n?1 ?! qn 2 The state q0 is the origin of the path, the state qn+1 is its end , and the word x = a0 a1    an is its label . An in nite path in A is a sequence p of consecutive transitions indexed by N. e0 = (q0 ; a 0 ; q 1 ) ; e 1 = (q1 ; a 1 ; q 2 ) ; : : : n

also denoted

a0 a1 q0 ?! q1 ?! q2   

The state q0 is the origin of the in nite path and the in nite word a0 a1    is its label . A state q occurs in nitely often in p if qn = q for in nitely many n.

5

Example 4.1. Let A = (Q; A; E ) be the automaton represented in gure 4.1. Then Q = f1; 2g, A = fa; bg and E = f(1; a; 1); (2; b; 1); (1; a; 2); (2; b; 2)g and (1; a; 2)(2; b; 2)(2; b; 1)(1; a; 2)(2; b; 2)(2; b; 1)(1; a; 2)(2; b; 2)(2; b; 1)(1; a; 2)    is an in nite path of A. a a

1

2

b

b

Figure 4.1. A nite automaton. A nite Buchi automaton is a quintuple A = (Q; A; E; I; F ) where (1) (Q; A; E ) is a nite automaton, (2) I and F are subsets of Q, called the set of initial and nal states, respectively. A nite path in A is successful if its origin is in I and its end is in F . An in nite path p is successful if its origin is in I and if some state of F occurs in nitely often in p. The set of nite (respectively in nite) words recognized by A is the set, denoted L+ (A) (respectively L! (A)), of the labels of all successful nite (respectively in nite) paths of A. A set of nite (respectively in nite) words X is recognizable if there exists a nite Buchi automaton A such that X = L+ (A) (respectively X = L! (A)).

Example 4.2. Let A be the Buchi automaton obtained from example 4.1 by taking I = f1g and F = f2g. Initial states are represented by an incoming arrow and nal states by an arrow going out.

a a

1

2

b

b

Figure 4.2. A Buchi automaton. Then L+ (A) = afa; bg is the set of all nite words whose rst letter is an a, L! (A) = a(a b)! is the set of in nite words whose rst letter is an a and containing an in nite number of b's.

Example 4.3. Let A be the Buchi automaton represented below. Then L! (A) = A a! is the set of all in nite words containing a nite number of b's.

6 a b

1

2

a

b

Figure 4.3. The automaton A recognizing A a! . Let A0 be the automaton obtained from A by taking only 1 as initial state. Then L! (A0 ) = A ba! . Example 4.4. Let A be the Buchi automaton represented below a a, b

1

2

b, c

b, c

Figure 4.4. Then L! (A) = (afb; cg [ fbg)! . The relationship between rational and recognizable sets of nite words is given by the famous theorem of Kleene.

Theorem 4.1. A subset of A is rational if and only if it is recognizable. The counterpart of Kleene's theorem for in nite words is due to Buchi [4].

Theorem 4.2. A subset of AN is !-rational if and only if it is recognizable. Sketch of the proof. (1) Let A = (Q; A; E; I; F ) be a nite Buchi automaton. For p; q 2 Q, denote

by L+ (E; p; q) the set of non empty nite words recognized by the automaton (Q; A; E; fpg; fqg). By Theorem 4.1, all these sets are rational. Furthermore, it is not dicult to see that

X = L! (A) =

[ [

i2I f 2F

?

L+ (E; i; f ) L+ (E; f; f )

!

It follows that L! (A) is !-rational. (2) It is easy to see that recognizable sets are closed under nite union. Indeed, the disjoint union of two automata A1 and A2 recognizes exactly the union of the sets

7 recognized respectively by A1 and A2 . In order to prove that every !-rational set is recognizable, it remains to show that every set of the form XX 0! , where X and X 0 are non-empty rational subsets of A+ , is recognizable. A small combinatorial argument shows that every rational set can be recognized by a normal automaton, that is, an automaton with exactly one initial state i, exactly one nal state f and no transition starting from f or ending in i. Now, if A and A0 are normal automata recognizing X and X 0 , then the automaton obtained by identifying f , i0 and f 0 , as indicated in the gure below, recognizes XX 0! : i

A

A'

f = i' = f'

Figure 4.5. An automaton recognizing X (X 0 )! . 5. Deterministic Buchi automata A Buchi automaton A = (Q; A; E; I; F ) is said to be deterministic if I is a singleton and if E contains no pair of transitions of the form (q; a; q ); (q; a; q ) with q = 6 q. 1

2

1

2

In other words, given a state q and a letter a, there is at most one state q0 such that (q; a; q0 ) 2 E . In particular, each word u is the label of at most one path starting from the initial state. A nite word u is accepted if the end of this unique path is a nal state. And an in nite word is accepted if the unique path visits in nitely often a nal state. It follows that an in nite word is accepted by A if and only if it has in nitely many pre xes accepted by A. This leads to the following de nition: for any subset L of A , put

?! L = fu 2 AN j u has in nitely many pre xes in Lg:

Then one can state

Proposition 5.1. If A is a nite deterministic Buchi automaton, then L! (A) = ????! L (A). Example 5.1. If A = fa; bg and L = a b, then ?! L = ;. +

a b

1

2

Figure 5.1. L (A) = a b and L! (A) = ;. +

Consider now the set L of all nite words of the form an b. Then ?! L = (a b)! , the set of in nite words containing in nitely many b's.

8 b a

1

2

b

a

Figure 5.2. L (A) = (a b) = fa; bg b and L! (A) = (a b)! . +

+

A set of in nite words is deterministic if it is recognized by a nite Buchi automaton. Landweber [14] has shown the existence of non deterministic recognizable sets.

Proposition 5.2. The set fa; bg a! is not deterministic. Proof. Let X = fa; bg a! and suppose that X = ?! L for some subset L of A . Then

ba! has a pre x u1 = ban1 in L and similarly, ban1 ba! has a pre x u2 = ban1 ban2 in L, etc. so that the in nite word u = ban1 ban2 ban3    has in nitely many pre xes in L. Thus u 2 ?! L , a contradiction, since u has an in nite number of b's.

6. Muller automata We have seen that non deterministic Buchi automata are not equivalent to deterministic ones. This lead Muller [22] to introduce a more satisfying de nition. A nite Muller automaton is a quintuple A = (Q; A; E; I; T ) where (1) (Q; A; E ) is a nite automaton, (2) I is a subset of Q, called the set of initial states. (3) T = fT1 ; : : : ; Tn g (the state table) is a set of subsets T1 ; : : : ; Tn of Q. A path p is successful in A if In nite(p) 2 T , where In nite(p) is the set of states that are visited in nitely often by p. The set L! (A) (also denoted L! (E; i; T )) of in nite words accepted by A is the set of labels of all successful paths.

Example 6.1. Let A = fa; bg. The automaton below, with the state table T = ff2gg, recognizes the set A b! of all in nite words containing a nite number of a's. b a

1

2

b

a

Figure 6.1. A Muller automaton.

9 The automaton A0 obtained by taking as state table T 0 = ff1g; f2gg, recognizes the set A a! [ A b! . A nite Muller automaton A = (Q; A; E; I; T ) is deterministic if I is a singleton and if E contains no pair of transitions of the form (q; a; q1 ); (q; a; q2 ) with q1 6= q2 . This time, deterministic automata are equivalent to non deterministic ones. The following result, mainly due to McNaughton [19], summarizes several equivalences.

Theorem 6.1. Let X be a subset of AN . The following conditions are equivalent:

(1) X is !-rational, (2) X is recognized by a nite Muller automaton, (3) X is recognized by a nite deterministic Muller automaton, (4) X is recognized by a nite Buchi automaton, (5) X is a boolean combination of sets recognized by a nite deterministic Buchi automaton.

Sketch of the proof. (3) implies (2) is clear. (2) implies (1). Let A = (Q; A; E; I; T ) be a deterministic Muller automaton with T = fT ; : : : ; Tn g. Then, it is easy to see that 1

[

L! (A) = 1

j n

L! (E; i; fTj g)

In other words, we may assume that the table T contains only one set of states

T = ft0 ; : : : ; tk?1 g. Let X = L+ (E; i; t0 ) and, for 0  i  k ? 1, let Xi be the set of labels of all nite paths from ti to ti+1 visiting only states of T (where the indices i are calculated modulo k). Now a path p is successful if and only if it starts in i and In nite(p) = T . In this case, p can be factorized as follows: a ( nite) path from i to t0 , one from t0 to t1 , one from t1 to t2 , : : : , one from tk?2 to tk?1 , one from tk?1 to t0 , one from t0 to t1 , etc. Therefore L! (E; i; fT g) = X (X0 X1    Xk?1 )! and thus L! (E; i; fT g) is !-rational. (1) implies (4) follows from Theorem 4.2. (4) implies (3) is the more dicult part of the proof. We shall present in section 10 a semigroup theoretic proof of this result. The best known algorithm to convert a Buchi automaton into a deterministic Muller automaton is Safra's construction, which, given a n-state Buchi automaton, produces an equivalent deterministic Muller automaton with at most nn states. The reader is referred to the original article of Safra [36] or to [30] for a presentation of this dicult algorithm. Thus conditions (1) to (4) are equivalent. We conclude by showing that (2) implies (5) and (5) implies (1).

10 (2) implies (5). Let A = (Q; A; E; I; T ) be a deterministic Muller automaton. As above, we may assume that T = fT g. Then, for an in nite path p, the condition In nite(p) = T is equivalent to the conjunction of the two conditions (1) p visits every t 2 T in nitely often, (2) p visits every t 2= T nitely often. This can be converted into the following formula, which gives (5)

L! (E; i; fT g) =

\

t2T

L! (E; i; t) n

\

t= 2T

L! (E; i; t)

(5) implies (1). By Theorem 4.2, every set recognized by a nite deterministic Buchi automaton is !-rational. Furthermore, since (1) and (3) are equivalent, !-rational sets are closed under boolean operations.

Corollary 6.2. The recognizable sets of AN are closed under nite boolean operations, morphisms and inverse morphisms between free semigroups. 7. !-semigroups As it is shown elsewhere in this volume [33], one can use nite semigroups in place of automata to de ne the recognizable sets of nite words. It is possible to extend this idea to in nite words by replacing semigroups by !-semigroups, which are, basically, algebras in which in nite products are de ned. Although these algebras do not have a nitary signature, standard results on algebras still hold. In particular, A1 appears to be the free algebra on the set A and recognizable sets can be de ned, as before, as the sets recognized by nite algebras. However, a problem arises since these nite algebras have an in nitary signature and thus are not nite objects. This problem can be solved by a Ramsey type argument showing that the structure of these nite algebras is totally determined by only three operations of nite signature. This de nes a new type of algebras of nite signature, the Wilke algebras, that suce to deal with in nite products. () We now come to the precise de nitions. An !-semigroup is a two-sorted algebra S = (Sf ; S! ) equipped with the following operations: (a) A binary operation de ned on Sf and denoted multiplicatively, (b) A mapping Sf  S! ! S! , called mixed product , that associates to each pair (s; t) 2 Sf  S! an element of S! denoted st, (c) A mapping  : SfN ! S! , called in nite product  Actually, the chronology is a little bit di erent. Ramsey type arguments have been used for a long time in semigroup theory [18,39,10], the Wilke algebras were introduced by Wilke in [44] under the name of binoids to clarify the approach of Arnold [1], Pecuchet [24] and Perrin [25] and the idea of using in nite products on semigroups came last [30].

( )

11 These three operations satisfy the following properties : (1) Sf , equipped with the binary operation, is a semigroup, (2) for every s; t 2 Sf and for every u 2 S! , s(tu) = (st)u, (3) for every increasing sequence (kn )n>0 and for all (sn )n2N 2 SfN ,

(s0 s1    sk1 ?1 ; sk1 sk1 +1    sk2 ?1 ; : : :) = (s0 ; s1 ; s2 ; : : :) (4) for every s 2 Sf and for every (sn )n2N 2 SfN

s(s0 ; s1 ; s2 ; : : :) = (s; s0 ; s1 ; s2 ; : : :) Conditions (1) and (2) can be thought of as an extension of associativity. Conditions (3) and (4) show that one can replace the notation (s0 ; s1 ; s2 ; : : :) by the notation s0 s1 s2    without ambiguity . We shall use this simpli ed notation in the sequel. Intuitively, an !-semigroup is a sort of semigroup in which in nite products are de ned. A !-semigroup S = (Sf ; S! ) is complete if every element of S! can be written as an in nite product of elements of Sf . It is a harmless hypothesis to assume that all the !-semigroups considered in this paper are complete.

Example 7.1. We denote by A1 the !-semigroup (A ; AN ) equipped with the +

usual concatenation product.

Given two !-semigroups S = (Sf ; S! ) and T = (Tf ; T! ), a morphism of !-semigroups S is a pair ' = ('f ; '! ) consisting of a semigroup morphism 'f : Sf ! Tf and of a mapping '! : S! ! T! preserving the mixed product and the in nite product: for every sequence (sn )n2N of elements of Sf ,

'! (s0 s1 s2   ) = 'f (s0 )'f (s1 )'f (s2 )    and for every s 2 Sf , t 2 S! ,

'f (s)'! (t) = '! (st) In the sequel, we shall often omit the subscripts, and use the simpli ed notation ' instead of 'f and '! . Algebraic concepts like !-subsemigroup, quotient and division are easily adapted to !-semigroups. The semigroup A+ is called the free semigroup on the set A because it satis es the following property (which de nes free objects in the general setting of category theory): every map from A into a semigroup S can be extended in a unique way into a semigroup morphism from A+ into S . Similarly, it is not dicult to see that the free !-semigroup on (A; ;) is the !-semigroup A1 . A key result is that when S is nite, the in nite product is totally determined by the elements of the form s! = sss   , according to the following result of Wilke [45].

12

Theorem 7.1. Let Sf be a nite semigroup and let S! be a nite set. Suppose that there exists a mixed product Sf  S! ! S! and a map from Sf into S! , denoted s ! s! , satisfying, for every s; t 2 Sf , the equations s(ts)! = (st)! (sn )! = s! for every n > 0

Then the pair S = (Sf ; S! ) can be equipped, in a unique way, with a structure of !-semigroup such that for every s 2 S , the product sss    is equal to s! . This is a non trivial result, based on a consequence of Ramsey's theorem which is worth mentioning:

Theorem 7.2. Let ' : A ! S be a morphism from A into a nite semigroup S . For every in nite word u 2 AN , there exist a pair (s; e) of elements of S such that se = s, e = e, and a factorization u = u u    of u as a product of words of +

2

+

0 1

A such that '(u0 ) = s and '(un ) = e for every n > 0. +

This motivates the following de nition: a linked pair in a nite semigroup S is a pair (s; e) 2 S  S such that e is idempotent and se = s. Two linked pairs (s; e) and (s0 ; e0 ) are conjugate (notation (s; e)  (s0 ; e0 )) if there exist x; y 2 S 1 such that e = xy, e0 = yx and s0 = sx. Note that these conditions also imply s = s0 y, since s0 y = sxy = se = s. A Wilke algebra is a two-sorted algebra (Sf ; S! ) equipped with three operations: an associative product on Sf , a mixed product Sf  S! ! S! and a map from Sf into S! , denoted s ! s! , satisfying, for every s; t 2 Sf , the equations s(ts)! = (st)! (sn )! = s! for every n > 0 A Wilke algebra is complete if every element of S! can be written as st! for some s; t 2 Sf . Theorem 7.1 states that every nite !-semigroup is equivalent with a nite Wilke algebra. One can attach to every nite semigroup S a nite complete !-semigroup S = (S; S! ), constructed as follows. Denote by  the exponent of S , that is, the smallest positive integer n such that sn is idempotent for all s 2 S . Let [s; e] be the conjugacy class of a linked pair (s; e). One de nes S! as the set of conjugacy classes of linked pairs of S . The pair S is equipped with a structure of Wilke algebra by setting, for all [s; e] 2 S! and t 2 S , t[s; e] = [ts; e] and t! = [t ; t ] The de nition is coherent, since if (s0 ; e0 ) and (s; e) are conjugate linked pairs, then (ts0 ; e0 ) and (ts; e) are conjugate linked pairs. One can prove that S is a complete Wilke algebra such that every semigroup morphism ' : A+ ! S can be extended into a morphism of !-semigroups ' : A1 ! S de ned by 'f = ' and '! (u) = [s; e], where (s; e) is a linked pair associated with u. The !-semigroup S has the following universal property.

13

Proposition 7.3. Let T = (Tf ; T! ) be a nite !-semigroup and let S be a

nite semigroup. For every semigroup morphism ' from S into Tf , there exists a unique morphism of !-semigroups ' : S ! T that extends '. Furthermore, if '(S ) generates T as an !-semigroup, then ' is onto.

In particular, every nite !-semigroup is a quotient of an !-semigroup of the form

S.

Corollary 7.4. Every nite complete !-semigroup S = (Sf ; S! ) is a quotient of

Sf .

Example 7.2. Let S = fa; bg be the nite semigroup given by the multiplication

table aa = a, ab = a, ba = b and bb = b. There are four linked pairs and two conjugacy classes: (a; a)  (a; b) and (b; a)  (b; b). Thus, S! = f[a; a]; [b; b]g and the !-power and the mixed product are given in the following tables

a! = [a; a] a[a; a] = a[b; b] = [a; a]

b! = [b; b] b[a; a] = b[b; b] = [b; b]

Example 7.3. Let S be the ve element Brandt semigroup: S is the semigroup with zero presented on the set fa; bg by the relations a2 = 0, b2 = 0, aba = a and bab = b. Thus S = fa; b; ab; ba; 0g and the D-class structure of S is represented in the gure below: 

ab a b  ba 

0

Figure 7.1. There are seven linked pairs and four conjugacy classes: (0; ab)  (0; ba), (a; ba)  (ab; ab), (b; ab)  (ba; ba) and (0; 0). Thus, S! = f[ab; ab]; [ba; ba]; [0; ab]; [0; 0]g and the !-power and the mixed product are given in the following tables (ab)! = [ab; ab]

(ba)! = [ba; ba]

a[ab; ab] = [0; ab] a[ba; ba] = [ab; ab] b[ab; ab] = [ba; ba] b[ba; ba] = [0; ab] ab[ab; ab] = [ab; ab] ab[ba; ba] = [0; ab] ba[ab; ab] = [0; ab] ba[ba; ba] = [ba; ba] 0[ab; ab] = [0; ab] 0[ba; ba] = [0; ab]

a! = b! = [0; 0]

a[0; ab] = [0; ab] b[0; ab] = [0; ab] ab[0; ab] = [0; ab] ba[0; ab] = [0; ab] 0[0; ab] = [0; ab]

a[0; 0] = [0; 0] b[0; 0] = [0; 0] ab[0; 0] = [0; 0] ba[0; 0] = [0; 0] 0[0; 0] = [0; 0]

14 A surjective morphism of !-semigroups ' : A1 ! S recognizes a subset X of AN if there exists a subset P of S! such that X = '?1 (P ). By extension, an !-semigroup S recognizes X if there exists a surjective morphism of !-semigroups ' : A1 ! S that recognizes X . This de nition can be extended to subsets of A1 as follows. A morphism of !-semigroups ' : A1 ! S recognizes a subset X of A1 if and only if '?1 '(X ) = X , that is, if there exists a subset P = (Pf ; P! ) of (Sf ; S! ) such that X \ A+ = '?f 1 (Pf ) and X \ A1 = '?! 1 (P! ). A consequence of Corollary 7.4 is that every subset of A1 recognized by a nite !-semigroup is recognized by an !-semigroup of the form S.

Proposition 7.5. Let S = (Sf ; S! ) be a nite !-semigroup recognizing a subset X of A1 . Then Sf also recognizes X .

Example 7.4. Let S = (fa; bg; fa! ; b! g), where the nite product is given by the

equalities aa = a, ab = a, ba = b, bb = b and the in nite product is given by the rules ax1 x2    = a! and bx1 x2    = b! . One recognizes here the !-semigroup of Example 7.2. Let ' : A1 ! S be the morphism of !-semigroups de ned by '(a) = a and '(b) = b. Then '?1 (a! ) = aA! . As for nite words, the following theorem holds.

Theorem 7.6. A subset of AN is recognizable if and only if it is recognized by a nite !-semigroup.

In other words, nite !-semigroups can be converted into automata and vice versa. It is not dicult to see that a subset of AN recognized by a nite !-semigroup is !rational and thus, by Theorem 4.2, recognizable. Indeed, if ' : A1 ! S recognizes X , then X is a nite union of sets of the form '?1 (s)'?1 (e)! . The algorithm to pass from a nite !-semigroup to a Buchi automaton presented in section 9 gives a direct proof of this result, without using Theorem 4.2. In the opposite direction, an algorithm to pass from Buchi automata to !-semigroups is presented in section 8. Finally, the algorithm to pass from a nite !-semigroup to a Muller automaton given in section 10 gives a proof of McNaughton's theorem.

15

8. From Buchi automata to !-semigroups

We give in this section the construction to pass from a nite (Buchi) automaton to a nite !-semigroup. This construction is much more involved than the corresponding construction for nite words. Given a nite Buchi automaton A = (Q; A; E; I; F ) recognizing a subset of X of AN , we would like to obtain a nite !-semigroup recognizing X . Our construction makes use of the semiring k = f?1; 0; 1g in which addition is the maximum for the ordering ?1 < 0 < 1 and multiplication, which extends the boolean addition, is given in the following table

?1 ?1 ?1 ?1

?1 0 1

0

?1 0 1

1

?1 1 1

To each letter a 2 A is associated a matrix (a) with entries in k de ned by 8 =E < ?1 if (p; a; q ) 2 (a)p;q = : 0 if (p; a; q) 2 E and p 2= F and q 2= F 1 if (p; a; q) 2 E and (p 2 F or q 2 F ) We have already used a similar technique to encode automata, but now we want to keep track of the visits of nal states. We would like to extend  into a morphism of !-semigroups. It is easy to extend  to a semigroup morphism from A+ to the multiplicative semigroup of Q  Q-matrices over k. If u is a nite word, one gets 8 ?1 if there exists no path of label u from p to q, > > > if there exists a path from p to q with label u going through a nal state, > if there exists a path from p to q with label u > :0 but no such path goes through a nal state However, trouble arises when one tries to equip kQQ with a structure of !-semigroup. The solution consists in coding in nite paths not by square matrices, but by column matrices, in such a way that each coecient (u)p codes the existence of an in nite path of label u starting at p. Let S = (Sf ; S! ) where Sf = kQQ is the set of square matrices of size Card Q with entries in k and S! = kQ is the set of column matrices with entries in f?1; 1g. In order to de ne the operation ! on square matrices, we need the following definition. If s is a matrix of Sf , we call in nite s-path starting at p a sequence p = p0 ; p1 ; : : : of elements of Q such that, for 0  i  n ? 1, sp ;p +1 6= ?1. The s-path p is successful if sp ;p +1 = 1 for an in nite number of coecients. Then s! is the element of S! de ned, for every p 2 Q, by n 1 if there exists a successful s-path of origin p, s!p = ?1 otherwise i

i

i

i

16 Note that the coecients of this matrix can be e ectively computed. Indeed, computing s!p amounts to checking the existence of circuits containing a given edge in a nite graph. Then one can verify that S , equipped with these operations, is an !-semigroup. The morphism  can now be extended in a unique way as a morphism of !-semigroups from A1 into S . Furthermore, we have the following result.

Proposition 8.1. The morphism of !-semigroups from A1 into S induced by  recognizes the set L! (A). The !-semigroup (A1 ) is called the !-semigroup associated with A.

Example 8.1. Let X = (afb; cg [ fbg)! . This set is recognized by the Buchi

automaton represented below:

a a, b

1

2

b, c

b, c

Figure 8.1. The !-semigroup associated with this automaton contains 9 elements 

1 1 a = ?1 ?1   ba = 11 11  

b! = 11





b = 11 ?1 0 



?1 ca = ?1 1 1 

c! = ?1 ?1







?1 c = ?1 1 0 





1 a! = ?1   (ca)! = ?1 1

It is de ned by the following relations

a2 = a ab = a ac = a b2 = b bc = c 2 ! ! ! cb = c c =c c =0 (ba) = b aa! = a! ab! = a! a(ca)! = a! ba! = b! bb! = b! b(ca)! = (ca)! cb! = (ca)! c(ca)! = (ca)! ca! = (ca)!

17

9. From Wilke algebras to Buchi automata

Given a morphism of !-semigroups recognizing a subset X of AN , we construct a Buchi automaton that recognizes X . By Proposition 7.5, we may suppose that the !-semigroup is of the form S = (S; S! ). Thus, let ' : A1 ! S be a morphism of !-semigroups recognizing X and let P = '(X ). The construction of a Buchi automaton that recognizes X relies on the following result of Pecuchet [23] which gives, for each idempotent e of S , a representation of S by relations in S 1 .

Lemma 9.1.1 1Let S be a nite semigroup and e an idempotent of S . The map 'e : S ! BS S de ned, for all s 2 S and for all p; q 2 S by 1

n if sq = p or if sq = pe 'e (s)p;q = 01 otherwise

is a semigroup morphism. Let us consider, for every idempotent e of S , the Buchi automaton

Ae = (S ; A; Ee ; Ie ; f1g) with Ie = fs 2 S j (s; e) 2 P g and Ee = f(p; a; q) 2 S  A  S j '(a)q = p or '(a)q = peg 1

1

1

Then the Buchi automaton A that recognizes X is the disjoint union of the automata Ae , where e ranges over the set of idempotents of S . Example 9.1. Let S = (fa; bg; fa! ; b! g) be the !-semigroup considered in Example 7.2 and let ' : A1 ! S be the morphism of !-semigroups de ned by '(a) = a and '(b) = b. The automaton A is represented in the gure below. a

b

1

1

a

a

b a

a a

a

a

b a

b b

b b

b

a

a

b

b

b

Figure 9.1. The automata Aa (on the left) and Ab (on the right).

18

10. From Wilke algebras to Muller automata Given a semigroup morphism ' : A ! S recognizing a subset X of A , it is easy +

+

to build a deterministic automaton recognizing X . Denote by S the monoid equal to S if S has an identity and to S [ f1g otherwise. Take the right representation of A+ on S 1 de ned by s:a = s'(a). This de nes a deterministic automaton AS = (S 1 ; A; E; f1g; P g, where E = f(s; a; s:a) j s 2 S 1 ; a 2 Ag, which recognizes L. It is tempting to do the same construction to obtain a deterministic Muller automaton, given a nite !-semigroup S = (S; S! ) recognizing a subset X of AN . B. Le Saec [15] has observed that such a construction is possible if the right stabilizers of S are bands. Given a nite semigroup S and an element s of S recall that the right stabilizer of s is the subsemigroup Stab(s) of S de ned by Stab(s) = ft j st = sg. 1

Theorem 10.1. Let S = (S; S! ) be a nite !-semigroup such that the right stabilizers of S are idempotent semigroups. Let ' : A1 ! S be a morphism of !-semigroups recognizing a subset X of AN . Then the automaton AS = (S ; A; E; f1g; T ), where E = f(s; a; s:a) j s 2 S ; a 2 Ag and T = fIn nite(u) j u 2 X g is a Muller 1

1

automaton recognizing X .

Example 10.1. Let S = (fa; bg; fa! ; b! g) be the !-semigroup considered in Examples 7.2 and 9.1 and let ' : A1 ! S be the morphism of !-semigroups de ned by '(a) = a and '(b) = b. Let P = fa! g, so that '? (a! ) = aA! . Then the transitions of the automaton AS are represented below and its table is T = ffagg. 1

1 a

a, b

a

b

b

a, b

Figure 10.1. A deterministic Muller automaton recognizing aA! . Unfortunately, the right stabilizer of an element of a nite semigroup is not always an idempotent semigroup. However, it is shown in [16,17] that every nite semigroup is a quotient of a nite semigroup in which the right stabilizer of every element is an idempotent semigroup. In fact, a slightly stronger result holds.

Theorem 10.2. Every nite semigroup is a quotient of a nite semigroup in which the right stabilizer of every element is a semigroup which satis es the identities x = x2 and xy = xyx.

Therefore, one can associate with every morphism from A1 onto a nite !-semigroup S a Muller automaton as follows: rst compute a nite semigroup T whose

19 right stabilizers are idempotent and commutative such that Sf is a quotient of T and then apply the result of Le Saec. This gives the proof of (4) implies (3) in Theorem 6.1. To sum up, we have obtained the following result.

Theorem 10.3. Let X be a set of in nite words. The following conditions are equivalent: (1) X is recognizable, (2) X is recognized by a nite !-semigroup, (3) X is !-rational. 11. Syntactic !-semigroup Let S = (Sf ; S! ) be an !-semigroup. A congruence of !-semigroup on S is a pair  = (f ; ! ) where f is a semigroup congruence on Sf and ! is an equivalence on S! such that (1) for all s; s0 2 Sf and for all t; t0 2 S! , s f s0 and t ! t0 imply st ! s0 t0 (2) for all in nite sequences s0 ; s1 ; s2 ; : : : and s00 ; s01 ; s02 ; : : : of elements of Sf such that si f s0i for all i, s0 s1    ! s00 s01    If S is a nite !-semigroup, then one may replace (2) by the weaker condition (20 ) (20 ) for all s; s0 2 Sf , s f s0 implies s! ! s0! . In the sequel, we shall often omit the subscripts, and use the simpli ed notation  instead of f and ! . Let X be a subset of A1 . A congruence of !-semigroup  on A1 recognizes X if the morphism of !-semigroup ' : A1 ! A1 = recognizes X . Contrary to the case of nite words, the lower bound of the congruences that recognize X does not always recognize X . If this lower bound still recognizes X , it is called the syntactic congruence of X and is denoted X . Arnold has shown that the syntactic congruence always exists if X is recognized by a nite !-semigroup [1]. The reason is that a nite !-semigroup can be considered as a nite Wilke algebra and that syntactic congruences can be de ned on Wilke algebras as on any algebra of nite signature. More precisely, a congruence on a Wilke algebra S is a pair  = (f ; ! ) where f is a semigroup congruence on Sf and ! is an equivalence relation on S! that is compatible with the !-power and the mixed product. In practice, it is convenient to omit the subscripts f and ! and write  for both f and ! . A congruence  on S saturates a subset P = (Pf ; P! ) of S if for all x; y 2 Sf (resp. S! ), x  y and x 2 Pf (resp. P! ) implies y 2 Pf (resp. P! ). Now the lower bound of the congruences that saturate P also saturates P and is called the syntactic congruence of P . It is the congruence P de ned on Sf by u P v if and

20 only if, for every x; y 2 Sf1 and for every z 2 Sf ,

xuyz! 2 P! () xvyz! 2 P! (11:1) x(uy)! 2 P! () x(vy)! 2 P! and on S! by u P v if and only if, for every x 2 Sf1 , xu 2 P! () xv 2 P! (11:2) The syntactic Wilke algebra of P is the quotient of S by the syntactic congruence of P . Now, to compute the syntactic !-semigroup of a set X recognized by a nite Buchi automaton A, one rst computes the nite !-semigroup S associated with A and the image P of X in S and then one computes the syntactic Wilke algebra of P in S . This provides an algorithm to compute the syntactic !-semigroup of a recognizable

set. The syntactic congruence X of a recognizable set X of A1 can also be de ned directly as follows. On A+ , u X v if and only if, for every x; y 2 A and for every z 2 A+ , xuyz! 2 X () xvyz! 2 X (11:3) x(uy)! 2 X () x(vy)! 2 X and on AN , u X v if and only if, for every x 2 A , xu 2 X () xv 2 X (11:4) The syntactic !-semigroup of X is the quotient of A1 under the congruence of !-semigroup X . This is also the minimal (with respect to the quotient ordering) complete nite !-semigroup recognizing X . Example 11.1. We come back to the example 8.1. The set X = (afb; cg [ fbg)! is recognized by the !-semigroup S = fa; b; c; ba; ca; a! ; b! ; (ca)! ; 0g, de ned by the following relations: a2 = a ab = a ac = a b2 = b bc = c 2 ! ! ! cb = c c =c c =0 (ba) = b aa! = a! ! ! ! ! ! ! ! ! ab = a a(ca) = a ba = b bb = b b(ca)! = (ca)! ca! = (ca)! cb! = (ca)! c(ca)! = (ca)! Since P = fa! ; b! g, the congruence P is de ned by a P ba et a! P b! Therefore, the syntactic !-semigroup is S (X ) = fa; b; c; ca; a! ; (ca)! ; 0g, with the following relations a2 = a ab = a ac = a ba = a b2 = b bc = c cb = c c2 = c b! = a! c! = 0 aa! = a! a(ca)! = a! ba! = a! b(ca)! = (ca)! ca! = (ca)! c(ca)! = (ca)!

21

12. Varieties So far, we have extended to in nite words the notions of nite automata, of a semigroup recognizing a set of words and nally of syntactic semigroup. The next natural step in this process is to extend the variety theorem. Pecuchet [23,24] made a rst attempt in this direction, but the result of Wilke [44] is more satisfactory. A variety of nite Wilke algebras is a class of nite Wilke algebras closed under the taking of nite direct products, quotients and complete subalgebras. Let X  A1 and let u 2 A+ . We set

u?1 X = fv 2 A1 j uv 2 X g Xu?! = fv 2 A+ j (vu)! 2 X g Xu?1 = fv 2 A+ j vu 2 X g An 1-variety V associates with every alphabet A a set V (A1 ) of recognizable sets of A1 such that (1) for every alphabet A, V (A1 ) contains ;, A+ , AN and A1 and is closed under nite boolean operations ( nite union and complement), (2) for every semigroup morphism ' : A+ ! B + , X 2 V (B 1 ) implies '?1 (X ) 2 V (A1 ), (3) If X 2 V (A1 ) and u 2 A , then u?1 X 2 V (A1 ), Xu?1 2 V (A1 ) and Xu?! 2 V (A1 ). It is important to notice that one works with A1 (and not with AN ) in this de nition. In other words, the elements of a 1-variety are sets of nite or in nite words. If V is a variety of nite Wilke algebras, we denote by V (A1 ) the set of recognizable sets of A1 whose syntactic !-semigroup belongs to V. This is also the set of sets of A1 recognized by an !-semigroup of V. An 1-class of recognizable sets is a correspondence which associates with every nite alphabet A, a set C (A1 ) of recognizable sets of A1 . In particular, the correspondence V ! V associates with every variety of nite Wilke algebras a 1-class of recognizable sets. The theorem of Wilke, which extends the corresponding theorem of Eilenberg, can now be stated as follows.

Theorem 12.1. The correspondence V ! V de nes a bijection between the varieties of nite Wilke algebras and the 1-varieties. We conclude by giving four examples of correspondence between varietiesof nite Wilke algebras and 1-varieties. The rst and the second one extend to in nite words well known results on nite words (the characterization of star-free and locally testable languages), but the last two examples are less familiar since they concern two topological classes.

22 We refer to our article [33] in this volume for the de nitions of the star-free and locally testable languages. The set of star-free subsets of A1 is the smallest set S of subsets of A1 containing the star-free languages of A+ which is closed under nite boolean operations and such that if X is a star-free subset of A+ and Y 2 S , then XY 2 S . Equivalent characterizations of the star-free subsets of AN were proposed by Thomas [40,41].

Theorem 12.2. Let X be a subset of AN . The following conditions are equivalent:

(1) X is star-free, (2) X is a nite union of sets of the form UV ! where U and V are star-free subsets of A+ and V 2  V , (3) X is a boolean combination of sets of the form ?! L where L is a star-free language. The syntactic characterization is given in [26]. A nite !-semigroup (Sf ; S! ) is aperiodic if the semigroup Sf is aperiodic.

Theorem 12.3. A recognizable set of A1 is star-free if and only if its syntactic !-semigroup is aperiodic.

It follows in particular that the star-free sets form a 1-variety. Similar results hold for the locally testable sets. A subset of A1 is locally testable if and only if it is a nite boolean combination of sets of the form uA , A u, A uA , uA! , A uA! and A (uA )! , for all u 2 A+ . The following results are due to Pecuchet [23,24]

Theorem 12.4. Let X be a subset of AN . The following conditions are equivalent:

(1) X is locally testable, (2) X is a nite union of sets of the form UV ! where U and V are locally testable subsets of A+ and V 2  V , (3) X is a boolean combination of sets of the form ?! L where L is a locally testable language. A nite !-semigroup (Sf ; S! ) is locally idempotent and commutative if the semigroup Sf is locally idempotent and commutative.

Theorem 12.5. A recognizable set of A1 is locally testable if and only if its

syntactic !-semigroup is locally idempotent and commutative.

One can de ne a topology on AN by considering A as a discrete space and by taking the product topology. The open sets of AN are the sets of the form XAN for some X  A+ . A set is closed if its complement is open. The sets of 1 are the clopen

23 sets, sets which are at the same time closed and open. The sets of 2 are at the same time countable unions of closed sets and countable intersection of open sets. One can show that the recognizable sets of 2 are the sets which are accepted by a deterministic Buchi automaton as well as their complement. The characterization of these two classes in terms of !-semigroups is due to Wilke [45]. In these statements, x denotes the unique idempotent of the semigroup generated by x.

Theorem 12.6. The class 1 form a 1-variety. The corresponding variety of nite Wilke algebras is the class of algebras de ned by the equation x yz ! = x y0 z 0! . Theorem 12.7. The class 2 form a 1-variety. The corresponding variety of nite Wilke algebras is the class of algebras de ned by the equation (x y ) x! = ( x y  )  y ! . 13. Conclusion Most known results on automata on nite words have found their counterpart on in nite words. However, the complexity of the solutions is apparently increased by an order of magnitude. This is true for instance for the equivalence between deterministic and non deterministic automata and for the variety theorem. Furthermore, several questions which are solved for nite words are still open for in nite words, but one can be reasonably optimistic about them.

Acknowledgements The authors would like to thank Olivier Carton and Pascal Weil for their comments on a preliminary version of this article.

References [1] A. Arnold, A syntactic congruence for rational !-languages, Theoret. Comput. Sci. 39, (1985) 333{335. [2] D. Beauquier and J.-E. Pin, Factors of words, in Automata, Languages and Programming, (G. Ausiello, M. Dezani-Ciancaglini and S. Ronchi Della Rocca, eds.), Lecture Notes in Computer Science, 372, Springer, (1989) 63{79. [3] D. Beauquier and J.-E. Pin, Languages and scanners, Theoret. Comput. Sci. 84, (1991) 3{21. [4] J. R. Buchi, Weak second-order arithmetic and nite automata, Z. Math. Logik und Grundl. Math. 6, (1960) 66{92.

24 [5] J. R. Buchi, On a decision method in restricted second-order arithmetic, in Proc. 1960 Int. Congr. for Logic, Methodology and Philosophy of Science, Stanford Univ. Press, Standford, (1962) 1{11. [6] J. R. Buchi and L.H. Landweber, De nability in the monadic second-order theory of successors, J. Symbolic Logic 34, (1969) 166{170. [7] S. Eilenberg, Automata, languages and machines, Vol. A, Academic Press, New York (1974). [8] S. Eilenberg, Automata, languages and machines, Vol. B, Academic Press, New York (1976). [9] S. C. Kleene, Representation of Events in nerve nets and nite automata, in \Automata Studies" C. E. Shannon and J. McCarthy eds.), Princeton University Press, Princeton, New Jersey, (1956) 3{42. [10] J. Justin and G. Pirillo, On a natural extension of Jacob's rank, J. Comb. Theory 43, (1986) 205{218. [11] R. Ladner, Application of model theoretic games to discrete linear orders and nite automata, Information and Control, 33, (1977) 281{303. [12] G. Lallement, Semigroups and combinatorial applications, Wiley, New York (1979). [13] H. Landweber, Finite state games - A solvability algorithm for restricted secondorder arithmetic, Notices Amer. Math. Soc. 14, (1967) 129{130. [14] H. Landweber, Decision problems for !-automata, Math. Syst. Theor. 3, (1969) 376{384. [15] B. Le Saec, Saturating right congruences, Informatique Theorique et Applications 24, (1990) 545{560. [16] B. Le Saec, J.-E. Pin and P. Weil, A purely algebraic proof of McNaughton's theorem on in nite words, in S. Biswas and K.V. Nori eds. Foundations of Software Technology and Theoretical Computer Science, Lecture Notes in Computer Science 560, Springer, (1991) 141{151. [17] B. Le Saec, J.-E. Pin and P. Weil, Finite semigroups whose stabilizers are idempotent semigroups, International Journal of Algebra and Computation 1, (1991) 291{314. [18] M. Lothaire, Combinatorics on Words, Cambridge University Press, (1982). [19] R. McNaughton, Testing and generating in nite sequences by a nite automaton Information and Control 9, (1966) 521{530. [20] R. McNaughton, Algebraic decision procedures for local testability, Math. Syst. Theor. 8, (1974) 60{76. [21] R. McNaughton and S. Pappert, Counter-free Automata, MIT Press, (1971). [22] D. Muller, In nite sequences and nite machines, in Switching Theory and Logical Design, Proc. Fourth Annual Symp. IEEE, (1963) 3{16. [23] J.-P. Pecuchet, Varietes de semigroupes et mots in nis, in B. Monien and G. VidalNaquet eds., STACS 86, Lecture Notes in Computer Science 210, Springer, (1986) 180{191.

25 [24] J.-P. Pecuchet, E tude syntaxique des parties reconnaissables de mots in nis, in Proc. 13th ICALP, (L. Kott ed.) Lecture Notes in Computer Science 226, (1986) 294{303. [25] D. Perrin, Varietes de semigroupes et mots in nis, C.R. Acad. Sci. Paris 295, (1982) 595{598. [26] D. Perrin, Recent results on automata and in nite words, in Mathematical Foundations of Computer Science, Lecture Notes in Computer Science 176 Springer-Verlag, New-York/Berlin, (1984) 134{148. [27] D. Perrin, An introduction to automata on in nite words, in Automata on In nite Words (Nivat, M. ed.), Lecture Notes in Computer Science 192, Springer, (1984) 2{17. [28] D. Perrin, Automata, in Handbook of Theoretical Computer Science (Van Leeuwen, J. ed.), Vol B : Formal Models and Semantics, Elsevier (1990). [29] D. Perrin and J.-E. Pin, First order logic and star-free sets, J. Comput. System Sci. 32, (1986), 393{406. [30] D. Perrin and J.-E. Pin, Mots in nis, to appear (LITP report 93{40). [31] D. Perrin and P. E. Schupp, Automata on the integers, recurrence distinguishability and the equivalence and decidability of monadic theories, Proc. 1st IEEE Symp. on Logic in Computer Science, (1986) 301{304. [32] J.-E. Pin, Logic, Semigroups and Automata on words, to appear. [33] J.-E. Pin, Finite semigroups and recognizable languages: an introduction, this volume. [34] J.-E. Pin, Varietes de langages formels, Masson, Paris (1984); English translation: Varieties of formal languages, Plenum, New-York (1986). [35] F. D. Ramsey, On a problem of formal logic, Proc. of the London Math. Soc. 30, (1929) 338{384. [36] S. Safra, On the complexity of the !-automata, in: Proc. 29th Ann. IEEE Symp. on Foundations of Computer Science, (1988) 319{327. [37] M. P. Schutzenberger, On nite monoids having only trivial subgroups, Information and Control 8, (1965) 190{194. [38] I. Simon, Piecewise testable events, Proc. 2nd GI Conf., Lecture Notes in Computer Science 33, Springer, Berlin, (1975) 214{222. [39] I. Simon, Word Ramsey theorems, in B.Bollobas ed., Graph Theory and Combinatorics, Academic Press, (1984). [40] W. Thomas, Star-free regular sets of !-sequences, Information and Control 42, (1979) 148{156. [41] W. Thomas, A combinatorial approach to the theory of !-automata, Information and Control 48, (1981) 261{283. [42] W. Thomas, Classifying regular events in symbolic logic, J. Comput. Syst. Sci 25, (1982) 360{375.

26 [43] W. Thomas, Automata on in nite objects, in Handbook of Theoretical Computer Science, vol B, Formal models and semantics, Elsevier, (1990) 135{191. [44] T. Wilke, An Eilenberg theorem for 1-languages, in Automata, Languages and Programming, Proc. of 18th ICALP Conference, 510, Springer, Berlin, (1991) 588{599. [45] T. Wilke, An algebraic theory for regular languages of nite and in nite words, International Journal of Algebra and Computation, to appear. [46] T. Wilke, Locally threshold testable languages of in nite words, in STACS 93, P. Enjalbert, A. Finkel, K.W. Wagner (Eds.), Lecture Notes in Computer Science 665, Springer, Berlin, (1993) 607{616.