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

TD3 TLC

Transféré par

hajer
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)
52 vues2 pages

TD3 TLC

Transféré par

hajer
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

U NIVERSITÉ DE T UNIS E L M ANAR 2018-2019

FACULTÉ DES S CIENCES DE T UNIS


————
D ÉPARTEMENT DES S CIENCES DE
L’I NFORMATIQUE

T HÉORIE DES L ANGAGES ET C ALCULABILITÉ (TLC)


T.D.N◦ 3
Les Grammaires

Section : IF4
Enseignantes : Yousra Hlaoui et Faten Abbes

Exercice 1
Soit G la grammaire non contextuelle suivante : ({S, A, B, C, D}, {a, b, c}, R, S) où R contient
les productions suivantes :

S → AB|CD A → aAb|ab B → cB|c C → aC|a D → bDc|bc


1. Construire une dérivation gauche de aabbc et dessiner l’arbre de dérivation associé.
2. Construire une dérivation droite de aabbc et dessiner l’arbre de dérivation associé.
3. Quel est le langage L générée par G ? Justifier votre réponse.
4. Montrer que G est ambigue.
5. Construire G’ telle que L(G0 ) = (L(G))∗ .
6. Construire G" telle que L(G”) = L(G) + ε

Exercice 2
Pour chaque langage non contextuel, proposer une grammaire qui génère ses mots. Dire
si la grammaire proposée est ambiguë ou non. Préciser le type de langage en question en
justifiant votre réponse. Dans le cas où le langage est régulier proposer une grammaire ré-
gulière qui le génère.
1. L1 = {ω ∈ {a, b}∗ /ω = an bn ; n ≥ 0}
2. L2 = {ω ∈ {a, b}∗ /ω = an bn ; n ≥ 0, m ≥ 0, n ≥ m}
3. L3 = {ω ∈ {a, b}∗ /|ω|a = |ω|b }
4. L4 = {ω ∈ {a, b}∗ /ω = ω R } où ω R est l’image miroir de ω
5. L5 = {ω ∈ {a, b}∗ /ω = ω1 ω1R }

1
Exercice 3
Soit G la grammaire suivante : G = ({S, T, L}, {a, b, c, +, −, ×, /, [, ]}, P, S) où P est formé
des productions suivantes :

S → T + S S → T − S S → T T → L × T T → L/T
T → L L → [S] L → a L → b L → c

1. Construire une dérivation gauche de a + a + a.


2. Construire une dérivation gauche de a + b × c
3. Décrire informellement ce que représente L(G).
4. Est ce que G est ambiguë ?
5. Transformer G en G0 telle que : L(G0 ) = L(G) + ε

Exercice 4
Transformer la grammaire suivante G = (V, X, P, S) en une grammaire équivalente G0
exprimée dans la forme normale de CHOMSKY, où :
V = {S, A, B}, X = {a, b} et P = {S → aA, S → bB, A → Baa, A → ba, B → bAA, B → ab}

Exercice 5
Soit G la grammaire définie par : G = {{S, A, B}, {a, b}, {S → ε, A → abaS, S → bA, S →
aB, B → babS}, S}.
Montrer que L(G) = (baba|abab)∗

Exercice 6
Considérer la grammaire G définie par l’ensemble des règles suivant :

S → XaaX X → aX X → bX X→ε

1. G est elle régulière ?


2. Décrire L(G) par une propriété
3. Pourquoi L(G) est un langage régulier ?
4. Proposer une expression régulière R pour L(G)
5. À partir de R donner le AFN M (algorithme vu en cours) tel que L(M ) = L(R)
6. Déduire le AFD M 0 tel que L(M ) = L(M 0 ). Faite la minimisation de M 0
7. Déduire à partir du DFA obtenu une grammaire régulière pour L(G)

Vous aimerez peut-être aussi