Académique Documents
Professionnel Documents
Culture Documents
1
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
Plan
2
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
𝑆 → 𝐴𝑆𝑆
G
𝑆→b
S aSS abb
Exemple :
G = {(a , + , * , (,)}, {E, T, F}, E , R }
R: ET E E + T TF
T T * F Fa F (E)
La dérivation à gauche du mot a + a est :
E E + T T+ T F + T a + T a + F a+ a
E E + T E + F E + a T + a F + a a+ a
4
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
Exercice :
R : S aTb | c T cSS | S
5
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
Définition
Un langage est linéaire s’il peut être engendré par une grammaire
linéaire.
6
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
7
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
Exemple
On considère la grammaire G = ({S, A} , {a, b} , S ,R)
R : S aA A bA | ɛ
a
S A b
8
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
Exemple
R : X0 a X1
X1 a X2 | b X0 | ɛ
X2 a X0 | b X2
X0 a X1 a a X2 a a b X2 a a b a X0 a a b a a X1 a a b a a
9
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
Remarque
10
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
Exemple :
S aS | aaT | bb
T a | bT | S | bS | ɛ
S aS | aaT | bbF
T aF | bT | S | bS | F
Fɛ
11
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
Exercice :
Soit l’automate suivant, trouver la grammaire correspondante G= (VT, VN , S ,R)
12
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
Exemple :
Soit G= ({a, b}, {S, A , B}, S ,R)
Avec R :
S aB | bA
A a | aS S = a(b + bS) + b(a + aS)
B b | bS = ab + abS + ba + baS
= (ab + ba)S +( ab +ba)
S = aB + bA = (ab + ba)*( ab +ba)
A = a + aS = (ab + ba)+
B = b + bS
13
Dérivations à gauche et à droite
Équivalence entre grammaires régulières et langages réguliers
Exercice :
Quel est le langage reconnu par la grammaire suivante ?
S aA | ɛ
A aA | abB
B bB | bC
C cC | c
14