Vous êtes sur la page 1sur 9

Chapitre I.

Alphabets et Langages

IV. Grammaire

La grammaire représente l’ensemble des règles pour générer les mots du langage. Le processus de
génération des mots à partir de ces règles est appelé « Dérivation ».

IV.1. Définitions
Définition 1
On appelle Grammaire le quadruple (V, N, S, R) tel que :

• V : est l’ensemble fini de symboles terminaux, aab


• N : est l’ensemble fini (disjoint de V) de symboles non-terminaux, aaSb
• S : est un symbole non-terminal particulier appelé « Axiome » (c’est le point de départ de la
dérivation),

→ ∈ + ∈ + ∗
R : est l’ensemble de règles de production de la forme :

La notation → est appelée « dérivation » et signifie que peut être remplacé par .

Remarque

Par convention, les symboles non-terminaux sont écrits en lettres majuscules et les symboles
terminaux sont écrits en lettres minuscules.

Exemple 1

Soit la Grammaire = , , , → , → .

Donner des exemples de mots qui peuvent être générés par G.

Réponse


→ → → →
Ainsi, les mots et peuvent être générés par G.

= , , , ∈
Définition 2


Soit une Grammaire . On dit que le mot est dérivé à partir de G s’il existe une
suite de dérivation qui, partant de l’axiome S, permet d’obtenir u. On note → .

Le langage de tous les mots générés par la grammaire G est noté . Un mot dérivé de l’axiome
n’est considéré appartenant à que s’il ne comporte aucun symbole non-terminal.
Dr. Zayneb Trabelsi – TLa GLSI-2 – ISTIC

Exemple 2

Soit = , , , , , → | , → | .

1. Les mots et peuvent-ils être générés par ?


2. Déduire une expression générale du langage généré par .

Réponse

→ → →
→ → →
1.

D’où les mots et peuvent être générés par .

= avec $, % & 0
2. Expression générale du langage généré par G :

= , , ,
Définition 3
Soit une Grammaire . On construit l’arbre syntaxique de G tels que :

- La racine est le l’axiome S


- Les nœuds sont les symboles non terminaux
- Les feuilles sont les symboles terminaux

Ainsi, si la règle ( → ) . . est utilisée dans la dérivation, alors le nœud ( possède n fils
correspondant aux symboles ) .

Si l’arbre syntaxique a comme racine S, alors il est dit « arbre de dérivation » du mot u tel que u est le
mot obtenu en prenant les feuilles de l’arbre de la gauche vers la droite.

Exemple 3

Construire les arbres de dérivation des mots et de l’exemple 2.

Réponse

S S

a S a T

a T b T

b b

2
Dr. Zayneb Trabelsi – TLa GLSI-2 – ISTIC

IV.2. Classification de Chomsky


Le linguiste Noam Chomsky a remarqué que la complexité d’une grammaire dépend de la forme de
ses règles de production. Il a ainsi proposé 4 classes de Grammaire :

- Type 3 ou Grammaire Régulière : ses règles de production sont de la forme :


+, - ∈
+ → ,- | , . / 0
,∈ ∗

- Type 2 ou Grammaire Hors Contexte : ses règles de production sont de la forme :


+∈
+ → 1 . /2
1∈ + ∗

- Type 1 ou Grammaire Contextuelle : ses règles de production sont de la forme :

|3| 5 |1|
3 → 1 . / 43 ∈ +
1∈ + ∗

- Type 0 : ses règles de production sont de la forme :

3∈ +
3 → 1 . /2
1∈ + ∗

Ainsi, il existe une relation d’inclusion entre les types de grammaire :

Type 0
Machine de Type 1
Turing Type 2
Machine de
AP
Turing Type 3
linéairement AEF
bornée

Par conséquent, pour déterminer la classe d’un langage généré par une grammaire, on doit chercher
le plus petit type de grammaire qui satisfait les contraintes de ses règles de production. Ainsi :

- Un langage généré par une grammaire de Type 3 est un langage Régulier,


- Sinon, s’il est généré par une grammaire de Type 2 alors c’est un langage Algébrique,
- Sinon, s’il est généré par une grammaire de Type 1 alors c’est un langage Contextuel,
- Sinon, c’est un langage de Type 0.

3
Dr. Zayneb Trabelsi – TLa GLSI-2 – ISTIC

Pour reconnaitre les mots d’un langage, on utilise les automates. Ainsi, nous avons également 4
classes d’automates :

- Automate à Etats Finis (AEF) qui reconnait les langages de type 3,


- Automate à Pile (AP) qui reconnait les langages de type 2,
- Machine de Turing linéairement bornée qui reconnait les langages de type 1,
- Machine de Turing qui reconnait les langages de type 0.

Exemple 4

Quel est le type de la grammaire G = ({a, b}, {S, A}, S, S → aAS | SA ; aA → a) ?

Réponse
Si on prend la règle de production aA → a, on peut déduire que :
- G n’est ni de type 3 ni de type 2 car la partie gauche de cette règle contient 2 symboles,
- G n’est pas de type 1 car la longueur de la partie gauche est supérieure à la longueur de la
partie droite

3∈ +
D’où G est de type 0 ayant des règles de production sous la forme :
3 → 1 . /2
1∈ + ∗

Vous aimerez peut-être aussi