0% ont trouvé ce document utile (0 vote)
173 vues2 pages

Exercices sur les langages réguliers en informatique

Ce document présente plusieurs exercices sur les langages réguliers. Il aborde des notions comme les expressions régulières, les opérateurs réguliers, les langages finis et infinis, les lemmes sur les langages réguliers. Les exercices proposent de caractériser certains ensembles de mots à l'aide d'expressions régulières et de déterminer si certains langages sont réguliers ou locaux.

Transféré par

djouabidir2003
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
173 vues2 pages

Exercices sur les langages réguliers en informatique

Ce document présente plusieurs exercices sur les langages réguliers. Il aborde des notions comme les expressions régulières, les opérateurs réguliers, les langages finis et infinis, les lemmes sur les langages réguliers. Les exercices proposent de caractériser certains ensembles de mots à l'aide d'expressions régulières et de déterminer si certains langages sont réguliers ou locaux.

Transféré par

djouabidir2003
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

MPI - 2023/2024 TD 3 : Langages réguliers Informatique

Exercice 1 (Expressions régulières) : Soit l’alphabet Σ = {a, b}.


Pour chacune des expressions régulières suivantes, donner deux mots qui sont reconnus par l’expression,
et deux mots qui ne sont pas reconnus.
1. a⋆ b⋆
2. a(ba)⋆ b
3. a⋆ | b⋆
4. (aaa)⋆
5. Σ⋆ aΣ⋆ bΣ⋆ aΣ⋆
6. aba | bab
7. (ε | a)b
8. (a | ba | bb)Σ⋆

Exercice 2 (Opérateurs réguliers) : Soit L1 , L2 , L3 des langages sur un alphabet Σ.


Dire si les égalités suivantes sont vraies ou fausses :

1. i>0 Li1 = L⋆1
2. L1 L⋆1 = L⋆1 \ {ε}
3. L⋆1 = {ε} | L1 L⋆1
4. (L2 L1 )⋆ L2 = L2 (L1 L2 )⋆
5. (L1 | L2 )L3 = (L1 L3 ) | (L2 L3 )
6. si L1 et L2 sont finis : |L1 L2 | = |L1 | × |L2 |.

Exercice 3 (Expressions régulières) : Soit l’alphabet Σ = {a, b, c, d}.


Donner une expression régulière décrivant :
1. l’ensemble des mots sur l’alphabet Σ ;
2. l’ensemble des mots non vides sur l’alphabet Σ ;
3. l’ensemble des mots sur Σ contenant exactement un a ;
4. l’ensemble des mots sur {a, b} contenant toujours un b directement après un a ;
5. l’ensemble des mots ne contenant pas de a après le premier b ;
6. l’ensemble des mots non vides commençant par b et terminant par d sur l’alphabet Σ ;
7. l’ensemble des mots sur {a, b, c} où chaque paire de a est séparée par exactement 3 lettres ;
8. l’ensemble des mots sur {a, b, c} comportant exactement deux b, où tout a est suivi d’au moins deux c,
et qui se terminent par b.

Exercice 4 : Montrer que tout langage fini est régulier.

Exercice 5 (Langages réguliers) : Soit Σ un alphabet, et u ̸= ε un mot sur Σ.


Montrer que les langages suivants sont réguliers :
1. L1 : le langage des mots qui contiennent au moins une fois une occurrence du facteur u ;
2. L2 : le langage des mots qui contiennent au moins deux occurrences disjointes du facteur u ;
3. L3 : le langage des mots qui contiennent au moins deux occurrences non disjointes du facteur u ;
4. L4 : le langage des mots qui contiennent exactement une occurrence du facteur u ;
5. L5 : le langage des mots w ∈ Σ⋆ tels que u est un sous-mot de w.
6. L6 : le langage des mots w ∈ Σ⋆ tels que w est un sous-mot de u.

A. Lick 1 Janson de Sailly


MPI - 2023/2024 TD 3 : Langages réguliers Informatique

Exercice 6 (Mots binaires) : Soit l’alphabet Σ = {0, 1}.


• Un mot binaire est un mot de Σ⋆ .
• Un mot binaire normalisé est un mot binaire qui soit commence par un 1, soit est exactement 0.
∑n−1 i
• La valeur d’un mot binaire u = un−1 · · · u0 est définie par V (u) = i=0 2 ui .
Les langages suivants sont-ils réguliers ?
1. L1 : l’ensemble des mots binaires normalisés ;
2. L2 : l’ensemble des mots binaires dont la valeur est paire ;
3. L3 : l’ensemble des mots binaires normalisés dont la valeur est paire ;
4. L4 : l’ensemble des mots binaires normalisés dont la valeur est une puissance de 2.
Exercice 7 (Lemme de l’étoile) : Soit l’alphabet Σ = {a, b, c}.
Les langages suivants sont-ils réguliers ?
1. {an | n ≡ 2 mod 3} ;
2. {an | n est un nombre premier} ;
3. {an bm | n ≡ m mod 3} ;
4. {u ∈ Σ⋆ | |u|a < |u|b } ;
5. {u ∈ Σ⋆ | |u|c ≥ 34 |u|} ;
6. {u ∈ Σ⋆ | uR = u} (ensemble des palindromes).
Exercice 8 (Langages locaux) : Les langages suivants sont-ils des langages locaux ?
1. L1 = a⋆ | (ab)⋆ ;
2. L2 = a⋆ (ab)⋆ .
Exercice 9 (Séparation de langages) : Soit Σ un alphabet.
1. Soit L un langage régulier infini sur Σ. Montrer qu’il existe deux langages réguliers infinis sur Σ L1 et
L2 tels que L1 ∩ L2 = ∅ et L = L1 ∪ L2 .
2. Soit L1 et L2 deux langages. On note L1 ⋐ L2 si L1 ⊂ L2 et L2 contient une infinité de mots qui ne
sont pas dans L1 .
Montrer que si L1 et L2 sont deux langages réguliers sur Σ tels que L1 ⋐ L2 , alors il existe un langage
régulier Lsep tel que L1 ⋐ Lsep ⋐ L2 .
Exercice 10 (Lemme de Levy) : Soit Σ un alphabet, et u, v, w, z ∈ Σ⋆ tels que u.v = w.z. Montrer
qu’il existe un unique mot m ∈ Σ⋆ tel que l’une des deux conditions suivantes soit réalisée :
(i) w = u.m et v = m.z ;
(ii) u = w.m et z = m.v.
Exercice 11 (Mots et pliages) : Soit l’alphabet Σ = {0, 1}.
On définit la fonction pl : Σ⋆ → Σ⋆ telle que :
pl(ε) = ε ; ∀u ∈ Σ⋆ , pl(0u) = pl(u)1 ; ∀u ∈ Σ⋆ , pl(1u) = pl(u)0 ;
1. Calculer pl(0110101).
2. Montrer par récurrence : ∀(u, v) ∈ (Σ⋆ )2 , pl(u.v) = pl(v).pl(u).
On considère une feuille que l’on plie n fois dans le sens vertical, en repliant à chaque itération la partie
droite sur la partie gauche. Une fois remise à plat, les plis forment une suite de creux (0) et de bosses (1),
qui peuvent donc être codés comme un mot de Σ⋆ . Notons un ce mot.
3. Donner les premiers termes de la suite : un pour n ∈ J0, 3K.
4. Donner une relation liant un+1 et un .
On note vn la n-ème lettre du mot un .
5. Donner la valeur de vn si n est impair.
6. Montrer que ∀n ∈ N, vn = v2n .
7. Calculer v3000 .

A. Lick 2 Janson de Sailly

Vous aimerez peut-être aussi