Vous êtes sur la page 1sur 2

Université Nice Sophia Antipolis L3 Info, L3 Math-MI

Automates & Langages 2017–2018

TD no 5

Clôture des langages rationnels

Exercice 1) Voici deux expressions régulières décrivant respectivement les langages L et K :

EL : (0 + 1)∗ 00

EK : 1∗ (01∗ 01∗ )∗
1. Décrivez en français chacun des langages considérés.
2. Trouvez les deux automates finis minimaux AL et AK qui reconnaissent respectivement les lan-
gages L et K.
3. En utilisant le produit d’automates, construisez un automate fini I pour reconnaître le langage
L ∩ K.
4. Adaptez la méthode précédente afin de construire un automate fini U qui reconnaisse l’union des
deux langages L et K.

2
Exercice 2) Considèrons le langage L = {0i , i entier non nul }. La démonstration ci-dessous qui prouvait
que ce langage L n’est pas rationnel a subi quelques dégâts ... A vous de la reconstruire :

Supposons que L soit un langage


...
Il existe un entier n ≥ 1 tel que le théorème est vrai.
...
2
mot w = 0n vérifiant
...
Soit la factorisation de w en
...
avec x = ε et y = ε.
On a bien | v |≥ n.
...
factorisation de v en rst avec
...
on veut montrer
...
i positif ou nul pour lequel
...
Avec i =
...
on a : | w |= n2 <| z |≤ n2 + n = n(n + 1) < (n + 1)2 .
On en déduit que
...
Une contradiction apparaît, c’est donc que
...
est fausse.
On en conclut que L n’est pas rationnel.

1
Exercice 3) Utilisez le théorème de l’étoile afin de montrer que les langages suivants ne sont pas rationnels :

1. L = {wwR , w ∈ {0, 1}∗} ;


2. P = {1p , p nombre premier }.

Exercice 4) En utilisant les propriétés de clôture de la classe des langages rationnels, montrez que les lan-
gages suivants ne sont pas rationnels (on raisonnera sur des langages dont on connaît déjà la rationalité
ou la non-rationalité) :

1. le langage L = {w ∈ {0, 1}∗, | w |0 = | w |1 } ;


2. le langage L = {w ∈ {0, 1}∗, | w |0 6= | w |1 }.

Exercices complémentaires

Exercice 5) Montrez à l’aide du théorème de l’étoile que le langage des palindromes P n’est pas rationnel :

P = {w = wR , w ∈ {0, 1}∗}

Exercice 6) On note bin(k) la représentation binaire de l’entier k et on s’intéresse au langage :

L = {bin(k) bin(k + 1), k ∈ N}

L = {01, 110, 1011, 11100, 100101, 101110, 110111, 1111000, ...}


Démontrez à l’aide du théorème de l’étoile que le langage L n’est pas rationnel.

Vous aimerez peut-être aussi