Beruflich Dokumente
Kultur Dokumente
une grammaire
EST ESSAOUIRA
Sommaire
1-introduction
2-Définitions
4- Processus d’analyse
5- Types d’analyse
6- Fonctionnement de l'analyseur
7- Conclusion
1-introduction
Lorsque on désire analyser une phrase a l’aide des règles explicites, il est alors
nécessaire substituer a l’analyse intuitive d’un programme d’analyse explicite, c'est-à-dire un
algorithme dont une des taches serait de donner toutes les analyses de la phrase analysée et
ensuite choisir l’analyse qui soit compatible avec le contexte.
La plupart des grammaires utilisées jusqu’à maintenant dans des programmes d’analyse
syntaxique sur l’ordinateur sont basée peu ou prou sur la grammaire en constituants
immédiats développée aux Etats-Unis dans les années 40 par l’école de linguistique
distributionnelle. les analyses produites par ces programmes laissent à désirer, en particulier
en ce qui concerne la justesse des analyses. en effet, ce type de grammaire présente un
inconvénient majeur : la difficulté de l’incorporation dans la grammaire des phénomènes
grammaticaux discontinus, représentés, par exemple par l’accord grammatical entre sujet et
verbe.
2-Définition
2-1 Grammaire
Une grammaire est un ensemble de règles permettant de dire si une phrase, c'est-à-dire une
suite de mots ou lexèmes (cf. l’analyse lexicale), est correcte ou non. Les règles qui nous
intéressent en informatique sont celles qui donnent une description générative du langage, en
indiquant comment précisément construire de telles phrases.
Une phrase se compose d’une proposition sujet, d’un verbe et d’une proposition complément.
Alors qu’une définition de la forme :
Une grammaire est donnée formellement sous la forme d’un quadruplet : G=<V, ∑, R, S> où :
2
• V est un vocabulaire (qu’on appelle aussi souvent alphabet), c’est à dire un
ensemble fini de symboles.
• ∑ ⊆ V est l’ensemble des symboles terminaux, c’est à dire les mots du langage, et
V–∑ est l’ensemble des symboles non-terminaux, c'est-à-dire les catégories
grammaticales.
• R ⊆ (V+ × V*) est un ensemble fini de règles de réécritures.
• S ∈ V–∑ est le symbole de départ (Phrase dans l’exemple du chat) .
Notation : on fait commencer les catégories grammaticales d’une majuscule, les mots
(terminaux) sont écrits en minuscules, les lettre grecques α β δ etc. représentent des suites de
symboles (terminaux ou non-terminaux). Le mot vide s’écrit ε (comme pour les expressions
régulières).
L'analyse d’un arbre admet en entrée un flot d'unités lexicales constitué de couples (code,
indice) ou de singletons (code). Ce sont des chaînes w composées d'éléments du vocabulaire
terminal w appartient a VT.
Ces chaînes vont être analysées à l'aide d'une grammaire G = (VN, VT, P, S).
Une chaîne w est dite analysée, si on a trouvé pour w un arbre de dérivation (éventuellement
tous). Le résultat de l'analyse syntaxique est un arbre syntaxique (appelé aussi arbre de
dérivation).
Soit G = (VN , VT , P, S) et w une chaîne dérivable à partir de S. On suppose que les règles de
Production de P sont numérotées de 1 à p. Nous allons donner deux définitions et les illustrer
sur un même exemple.
L’expression de la structure d’une phrase s’exprime sous la forme d’un arbre, que l’on appelle arbre
syntaxique (ou arbre de dérivation) d’une phrase. Par exemple, la phrase :
2
P h ra s e
G N G V
A r tic le N om S u b o rd . V e rb e G N
Le chat re g a rd e A r tic le N om
P ro n . G N la s o u r is
r e la t if
G N
qui V e rb e
p ré p .
est P ré p . G N
la com m ode
Les feuilles de l’arbre correspondent aux mots de la phrase, et les nœuds non-terminaux aux catégories
grammaticales.
Les règles de grammaire peuvent être données sous la forme de règles de réécritures (qu’on
appelle aussi parfois productions) qui indiquent comment une catégorie grammaticale peut être
transformée en une suite de catégories grammaticales ou de mots du vocabulaire.
4- Processus d’analyse
2
2. l’analyse ascendante construit l’arbre syntaxique en montant des feuilles vers la racine.
Elle correspond au parcours inverse (puisqu’on monte) du parcours descendant droit. Dans ce
type d’analyse, on essaye d’appliquer le membre droit d’une règle et à le remplacer par le
non-terminal gauche correspondant. L’opération est donc inverse de celle la dérivation. La
principale difficulté consiste à trouver le bon membre droit à appliquer. Elle est à la fois plus
puissante mais aussi plus complexe à mettre en œuvre que l’analyse descendante (sans retour
arrière). Cette analyse effectue un parcours post fixé de l’arbre.
5- Types d’analyse
5.1 Analyse gauche d'un syntagme : (analyse de haut en bas) C'est une séquence de
dérivations gauches à partir de S.
6- Fonctionnement de l'analyseur
Il s'agit d'appliquer ce que nous avons vu à des analyseurs fonctionnant de manière tabulaire,
c'est-à-dire sans utiliser la récursivité du langage d'implémentation de l'analyseur syntaxique.
Un analyseur prédictif se compose d'une pile (pour contenir les symboles en cours) et d'une
table qui contient les relations entre terminaux courants, symboles terminaux en entrée et
règles à appliquer.
2
T a b le
d 'a n a l y s e
(a u t o m a t e )
m ots lu s A n a ly seu r
sy n ta x iq u e
P ile
On suppose que l'analyseur lexical retourne le symbole '$' lorsque tous les caractères ont été
lus (c'est le symbole de fin de fichier "réifié" comme un mot).
Mettre le symbole de démarrage sur la pile (appelons le '$' pour simplifier).
7- Conclusion
Un programme qui utilise une grammaire en chaine se révèle être un outil puissant pour
l’analyse des phrases d’une langue naturelle. En raison de la structure de cette grammaire,
l’insertion de contraintes de natures diverses entre éléments des chaînes et non seulement
commode mais aussi pratique.