Polytech Paris Sud - ET4 Année 2018-2019
Informatique Théorique : Langages formels et automates
TD n
◦1
Semaine du 17 septembre
Les exercices avec un trèe (♣) doivent être faits dans la séance de TD.
Expressions rationnelles
Exercice 1. Donner tous les mots de longueurs0,1,2,3 et4 des langages décrits par les expressions rationnelles suivantes :
1. (a+ba)∗
2. a(aa+b(ab)∗a)∗a
Exercice 2. Donner des expressions rationnelles sur A = {a, b} dénotant les langages suivants :
1. Les mots de longueur impaire ;
2. Les mots avec préxe bbet suxeab; 3. Les mots avec exactement trois a; 4. Les mots avec au plus trois a;
5. Les mots avec un nombre deadivisible par trois ;
Exercice 3. On considère l'alphabet A ={a, b}. Les expressions rationnelles suivantes sont-elles équivalentes ?
e1 = (a+b)∗ (1)
e2 = (a∗+b∗)∗ (2)
e3 = ((ε+a)b∗)∗ (3)
1
Automates
Exercice 4. On considère l'automate suivant :
start p 0,1 q r
1
0
0,1
1. Écrire :
Les états de l'automate (Q) L'alphabet (A)
Les états initiaux (I) Les états naux (F) Les transitions (E)
2. Quels sont les calculs de l'automate sur les mots suivants : 101,0100,ε,011111? Lesquels de ces mots sont acceptés ?
3. Caractériser tous les mots acceptés par cet automate (son langage).
Exercice 5. Pour chacun des langages suivants donner un automate ni déterministe complet qui le reconnaît :
1. Les mots de longueur 2;
2. Les mots de longueur au plus 2; 3. Les mots de longueur au moins2; 4. Les mots avec le préxe ab; 5. Les mots avec le suxeab;
Exercice 6. (♣) On considère l'alphabet A = {a, b}. Pour chacun des langages ci- dessous, donner un automate ni déterministe complet qui le reconnaît :
1. {w∈A∗|wne contient aucune occurrence de la chaînebb}
2. {w∈A∗|wcontient au moins une occurrence de la chaîne bb}
3. {w∈A∗|wcontient exactement une occurrence de la chaîne bb}
4. {w∈A∗| les nombres deaet de bont même parité dans w}
Déterminisation d'automates
Exercice 7. (♣) Construire un automate asynchrone intuitif qui reconnaît le langage décrit par l'expression rationnelle suivante :
(ba+ (a+bb)a∗b)∗ (4)
Déterminiser cet automate
2