- tourner l’un des verres ;
- tourner deux verres voisins ;
- tourner deux verres oppos´es.
Mais pour corser la difficult´e, le client peut tourner le plateau d’un nombre quelconque de quart de
tours entre chacune des actions du barman. Le jeu s’arrˆete d`es qu’une des deux positions gagnantes
est atteinte.
1. Montrer qu’on peut restreindre `a quatre le nombre de configurations diff´erentes, puis repr´esenter
les actions possibles du jeu par un automate non d´eterministe.
2. D´eterminiser cet automate et en d´eduire une strat´egie gagnante pour le barman.
Ex 9 Construire un automate fini (pas forc´ement d´eterministe) qui reconnaˆıt le langage (a+b)∗a2b.
Le d´eterminiser.
Ex 10 Donner une description en fran¸cais des langages repr´esent´es par les expressions rationnelles
suivantes :
(b+ab)∗(a+ε),(ab∗a+b)∗
Ex 11 Donner des expressions rationnelles repr´esentant les langages suivants.
1. Les mots sur l’alphabet {a, b}qui contiennent au moins un a.
2. Les mots sur l’alphabet {a, b}qui contiennent au plus un a.
3. Les mots sur l’alphabet {a, b}dont la longueur n’est pas divisible par 3.
4. Les mots sur l’alphabet {a, b}tels que deux lettres cons´ecutives sont distinctes.
5. Les mots sur l’alphabet {a, b, c}tels que deux lettres cons´ecutives sont distinctes.
Ex 12 Montrer que si Lest un langage local, le langage L0des facteurs des mots de Lest aussi local.
Ex 13 Montrer qu’un langage Lsur l’alphabet Aest local si et seulement si
∀u, v, u0, v0∈A∗,∀a∈A, (uav ∈Let u0av0∈L)⇒uav0∈L
Ex 14 On repr´esente un langage local par un ´el´ement de type suivant :
type local = {
V : bool ;
P : char list ;
S : char list ;
F : (char*char) list };;
La champ Vpermet de savoir si le langage contient le mot vide ; les champs P,Set Fcorrespondant
aux ensembles des premi`eres lettres, derni`eres lettres et facteurs de taille 2.
Ecrire une fonction est dans l m : local →string →bool permettant de tester si un mot est
dans un langage local.
Ex 15 En utilisant l’algorithme de Glushkov, construire un automate d´eterministe qui reconnaˆıt le
langage aab∗ab. Pouvez-vous donner un automate d´eterministe plus simple ?
Ex 16 En utilisant l’algorithme de Glushkov, construire un automate fini reconnaissant le langage
x∗y{x, y}+.
Ex 17 Montrer que {ap/ p est premier}n’est pas reconnaissable. On raisonnera par l’absurde.
Ex 18 Montrer que sur un alphabet de cardinal au moins 2, l’ensemble des palindromes n’est pas
rationnel.
2