Académique Documents
Professionnel Documents
Culture Documents
TD no 6
Grammaire G
Axiome = S
N = {S, K, E, C}
T = {’if’, ’then’, ’else’, ’instructions’, ’condition’}
P={ S →KS }
S →KSES
S → instructions
K → ’if’ C ’then’
E → ’else’
C → condition
1. Cette grammaire G est-elle ambiguë ? Si oui, trouvez une chaîne terminale engendrée de deux façons
distinctes.
2. Sauriez-vous trouver une grammaire non-contextuelle non ambiguë pour engendrer exactement le
même langage ?
Exercice 2) Voici quatre grammaires, suivies de six propositions de langages. Rendez son langage à cha-
cune des grammaires :
G1 = ({S, T, A, B}, {0, 1, 2}, P1, S) G2 = ({S, T, A, B}, {0, 1, 2}, P2, S)
S → 0S | 0T
S → 0T | 1S | 2S
T → 1A | B2 T → 0T | 1A | 2S
P1 = P2 =
A → 2 | T2
A → 0T | 1S | 2B
B → 1 | 1T B → 0B | 1B | 2B | ε
1
Exercice 3) Trouvez si possible une grammaire non-contextuelle pour chacun des langages suivants. Vous
préciserez dans chaque cas si la grammaire vous paraît ambiguë ou pas. Si elle l’est, vous mettrez en
évidence un mot avec deux arbres de dérivation distincts.
1. L1 = {wwR , w ∈ {0, 1}∗}
2. L2 = {w = wR , w ∈ {0, 1}∗}.
3. L3 = {ww, w ∈ {0, 1}∗}.
Exercice 4) Mettez chaque grammaire non-contextuelle de l’exercice précédent sous Forme Normale de
Chomsky. Le cas échéant, il faudra nettoyer ces grammaires avant d’appliquer l’algorithme du cours.
L = {w ∈ {0, 1}+, | w |0 =| w |1 }