Chapitre II - Grammaire

Exemples

Règles de production
  1. P SVC
  2. S G
  3. C G
  4. G AN
  5. G ADN
  6. N fille | dame
  7. A la
  8. D vieille | petite
  9. V regarde
Dérivation d'une phrase (recherche de chemin)

"La vielle dame regarde la petite fille"

Etapes de dérivation:

  1. P SVC
  2. GVC
  3. ADNVC
  4. la DNVC
  5. la vieille NVC
  6. la vieille dame VC
  7. la vieille dame regarde C
  8. la vieille dame regarde G
  9. la vieille dame regarde ADN
  10. la vieille dame regarde la DN
  11. la vieille dame regarde la petite N
  12. la vieille dame regarde la petite fille

Grammaire

Définition

Ensemble de règles permettant de générer des mots du langage sous forme de réécriture (on remplace une séquence par une autre).

Une grammaire est un quadruplet G = (N, T, P, S) ou :

Notations
Remarques

Dérivation

Dérivation du plus à gauche

Une suite de dérivations obtenues en choisissant à chaque étape le symbole non terminal le plus à gauche.

Dérivation du plus à droite

Une suite de dérivations obtenues en choisissant à chaque étape le symbole non terminal le plus à droite.

Dérivation en 1 étape

Soit G = (N, T, P, S) une grammaire. G permet de dériver v de u en une étape, notée uGv, si et seulement si:

Dérivation en plusieurs étapes

Soit G = (N, T, P, S) une grammaire. G permet de dériver v de u en plusieurs étapes, noté u → *Gv si et seulement si il existe k et v0, ..., vk tels que :

Mots générés par une grammaire

Définition

Soit G = (N, T, P, S). Les mots générés (engendrés) par G sont les mots v ∈ T* (symboles terminaux) qui peuvent être dérivés à partir de l'axiome S : S → *Gv

Langage généré par une grammaire

Définition

On note L(G) le langage généré par G

C'est l'ensemble des mots que l'on peut définir à partir de l'axiome de G en appliquant un nombre finis de fois des règles de G. L(G)={v ∈ T*,  S → *Gv}

Exemples

Grammaire G1

Grammaire G2

Arbre syntaxique

Définition

Soit G = (N, T, P, S). Un arbre syntaxique est un arbre dont la racine est l'axiome (S), dont les noeuds internes sont étiquetés par des symboles de N, et les feuilles sont étiquetées par des symboles de T ou par le mot vide. Chaque noeud interne correspond à une règle de production.

Exemple

Soit G1 (sous forme factorisée): les règles de production ont une numérotation implicite :

S aS (1) | bS (2) | a (3)) | b (4) | ϵ (5)

Soit le mot ω = abab, l'arbre syntaxique est donné par:

Equivalence - Définition

On dit de 2 grammaires G1 et G2 sont équivalentes, notés G1 ∼ G2, si elles engendrent le même langage, i.e. si L(G1)=L(G2)

Grammaire ambigue - Définition

Une grammaire G est dite ambigue s'il existe un mot ω de L(G) qui admet au moins deux arbres syntaxiques à partir de S.