Académique Documents
Professionnel Documents
Culture Documents
Chapitre 5
Langages algébriques
Grammaires algébriques
(à contexte libre, free context)
Notation :
Chaque règle de production (A,) est notée A → .
2
Exemple 2 :
G=({S}, {+, *, (, ), a}, P, S) où P est défini par:
S → S+S
S → S*S
S → (S)
S→a
3
Exemples :
1) S→aSb| ε
2) S → S+S| S*S| (S)| id
4
Exemple :
Soit la grammaire: S→aSb| ε
- S aSb ab
- Sε
Notation :
Soient , *
Si i dérive de par l’application d’exactement i productions, alors on note:
Définition:
i
*
s.s.s i 0 tel que
* i
= i0
6
Soient , *
* i
s.s.s i 0 tel que
C.à.d 0, 1, … i tel que = 0 1 2… i=
7
Corollaire :
Soit G=(V, T, P, S) une grammaire algébrique et soit *=(V T)*
L(G) s.s.s
- ne contient que des terminaux.
- dérive de S.
8
Exemple 1 :
Soit G=(V, T, P, S) où V={S}, T={a, b}
S→aSb| ab
- S ab
- S aSb aaSbb … aa…aSbb…b anbn
On déduit : L(G)={anbn/n 1}
9
L(G)=??
- S id
- S (S) (S+S) (S*S+S) … (id*id+id)
10
Définition :
Une ε -règle est une règle de production de la forme: A → ε
Exemple:
S→aSb| ε
Exercice:
Donner une grammaire engendrant les langages suivants:
1) L’ensemble des mots palindromes sur {a,b}
2) L’ensemble des mots de la forme anbm tel que n 0 et m 0.
11
S→ aSa | bSb |a | b| ε
S→ aS | Sb | ε
12
Exemple : ={a, b} S
S→aSb| ε
a S b
S aSb aaSbb aabb=a2b2
a S b
13
Exercice :
Soit la grammaire G définie par les productions suivantes:
S → aB| bA
A → a| aS| bAA
B → b| bS| aBB
Soit w=a3b2ab3a
1) Montrer que w L(G).
2) Donner un arbre de dérivation pour w.
14
Dérivation gauche :
On choisit à chaque étape de dériver la variable la plus à gauche.
15
Exemple :
E → E+E | E*E| (E) | a
Soit w=a+a*a
16
E + E E * E
a E * E E + E
a
a a a a
17