Vous êtes sur la page 1sur 3

EPI SUP

Théorie des langages


Digital School
2022/2023
Préparatoire 2

TD2 : Série d’exercice n°2

Grammaire non-ambiguës
Exercice 1 :
Soit la grammaire :
S → (L)|a
L→ L, S | S
1- Quels sont les symboles terminaux et non terminaux ?
2- Donner les arbres de dérivation pour :
(a, a) , (a, (a, a))
(a, a)

(a, (a, a))

3- Construire une dérivation à gauche et une dérivation à droite pour chacune des phrases de la question
précédente.
(a, a)

Enseignant : Fatma MLIKA et et Ones SIDHOM Page 1/2


TD2 : Théorie des langages

(a, (a, a))

Exercice 2 :
1- Construire la grammaire générant tous les palindromes sur l’alphabet {0,1}.
S→0S0|1S1|0|1| ε

Exercice 3 :
S →aSbS| bSaS| ε
Montrer que cette grammaire est ambiguë engendrant deux dérivations à gauche pour abab. Donner deux
dérivations à droite de abab. Quels sont les arbres de dérivation correspondants ?

Simplification de grammaires
Exercice 4 :
Enseignant : Fatma MLIKA et Ones SIDHOM Page 2/2
TD2 : Théorie des langages

1- Supprimer (en expliquant la procédure) les symboles inutiles de la grammaire :


S → ABc
A→B
B→B|b|c

Exercice 5:
Pour chacun des langages suivants, donner des exemples de mots contenus dans chacun des langages, et des
grammaires qui engendrent chacun des langages (Li)i=1, …,5 :
1- L1 = {w ∈ {a, b, c} ∗ / w commence par la lettre ‘a’} ;
=> Exemples de mots de L1 : a, ab, accb, …
Une grammaire pour L1 : G1 = ({a, b, c}, {S, A}, S, { S → aA ; A → aA | bA | cA | ε })
2- L2 = {w ∈ {a, b, c} ∗ / w se termine par la lettre ‘a’} ;
=> Exemples de mots de L2 a, ba, cabca, …
Une grammaire pour L2 : G2 = ({a, b, c}, {S}, S, { S → aS | bS | cS | a })
3- L3 = {w ∈ {a, b, c} ∗ / w contient au moins une occurrence de la lettre ‘a’} ;
=> Exemples de mots de L3 : a, bba, acaacb
Une grammaire pour L3 : G3 = ({a, b, c}, {S, A}, S, { S → aS | bS | cS | aA ; A → aA | bA | cA | ε })
4- L4 = {w ∈ {a, b, c} ∗ / w contient au moins deux occurrences consécutives de la lettre ‘a’}.
=> Exemples de mots de L4 : aa, baab, accaab, …
Une grammaire pour L4 : G4 = ({a, b, c}, {S, A}, S, { S → aS | bS | cS | aaA ; A → aA | bA | cA | ε })

Exercice 6 :
Pour chacun des langages suivants, donner une grammaire qui l’engendre :
1- L1 = { 02n / n ≥ 0}
pour L1 : il est engendré par G1 = ({0}, {S}, S, P1), où P1 : S → 00S 
2- L2 = { 0𝑛 1𝑛 / n ≥ 0}
pour L2 : il est engendré par G2 = ({0, 1}, {S}, S, P2), où P2 : S → 0S1 
3- L3 = { 𝑎𝑛 b2𝑛 / n ≥ 0}
Pour L3 : il est engendré par G3 = ({a, b}, {S}, S, P3), où P3 : S → aSbb 
4- L4 = { 𝑎𝑚 𝑏 𝑛 𝑎𝑛 𝑏 𝑚 / n ≥ 1, m ≥ 1}
Pour L4: il est engendré par G4 = ({a, b}, {S, A}, S, P6), où P6 : S → aSb aAb ; A → bAa ba
5- L5 = { 0𝑖 1𝑗 / i ≥ j ≥0}
pour L5 : il est engendré par G5 = ({0, 1}, {S}, S, P8), où P8 : S → 0S1 0S 
6- L6 = { 0𝑖 1𝑗 / i≠ 𝑗, i ≥ 0, j≥ 0}
L6 = { 0i 1 j / i > j }  { 0i 1 j / i < j } ; L6 est engendré par G6 = ({0, 1}, {S, S0, S1}, S, P9), où P9 : S → S0 S1 ;
S0 → 0S01 0S0 0 ; S1 → 0S11 S11 1
7- L7 = langage des expressions de la logique propositionnelle défini sur {p, (, ), ,  }
Une grammaire pour L7 : G7 = ({ p, (, ), ,  }, {S}, P2, S) P2 : S → S | SS | (S) | p
8- L8 = { a𝑛 𝑏 𝑚 / n impair, m pair}
Une grammaire de type 3 pour L8 : G8 = ({a, b}, {S, A}, P1, S) P1 : S → aaS | aA ; A → bbA | ε

Enseignant : Fatma MLIKA et Ones SIDHOM Page 3/2

Vous aimerez peut-être aussi