Grammaires algébriques

Documents pareils
Théorie des Langages

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

CH.6 Propriétés des langages non contextuels

Informatique Théorique : Théorie des Langages, Analyse Lexicale, Analyse Syntaxique Jean-Pierre Jouannaud Professeur

Continuité et dérivabilité d une fonction

1.1 Rappels sur le produit cartésien Relations Graphes dirigés Arbres Exercices Motivation...

Contribution aux rapports entre la logique combinatoire et les T[Σ]-algèbres.

Calculabilité Cours 3 : Problèmes non-calculables.

Raisonnement par récurrence Suites numériques

O, i, ) ln x. (ln x)2

Dérivation : Résumé de cours et méthodes

Évaluation et implémentation des langages

1 Introduction au codage

Utilisation des tableaux sémantiques dans les logiques de description

Modèles de Calcul. Yassine Lakhnech. 2007/08 Université Joseph Fourier Lab.: VERIMAG. Modèles de Calcul Start p.

Introduction à MATLAB R

Cours de Programmation 2

Fondements de l informatique Logique, modèles, et calculs

Chp. 4. Minimisation d une fonction d une variable

Dualité dans les espaces de Lebesgue et mesures de Radon finies

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

Cours de Master Recherche

Réalisabilité et extraction de programmes

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Transducteurs d arbres et (peut-être un peu) apprentissage

Rappels sur les suites - Algorithme

Table des matières. Introduction

VÉRIFICATION DES SYSTÈMES À PILE AU MOYEN DES ALGÈBRES DE KLEENE

Nom de l application

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies

Continuité d une fonction de plusieurs variables

Chapitre 2. Matrices

Complément d information concernant la fiche de concordance

L E C O U T E P r i n c i p e s, t e c h n i q u e s e t a t t i t u d e s

Algorithmique et Programmation Fonctionnelle

Université Paris-Dauphine DUMI2E 1ère année, Applications

Grammaires d unification

Exercices - Fonctions de plusieurs variables : corrigé. Pour commencer

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

Espérance conditionnelle

Premiers exercices d Algèbre. Anne-Marie Simon

Apprentissage Automatique

Figures composées de pixels et monoïde inversif

Cours Fonctions de deux variables

Corrigé du baccalauréat S Asie 21 juin 2010

Le langage SQL Rappels

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

6. Les différents types de démonstrations

Définitions. Numéro à préciser. (Durée : )

Commande Prédictive des. Convertisseurs Statiques

* très facile ** facile *** difficulté moyenne **** difficile ***** très difficile I : Incontournable T : pour travailler et mémoriser le cours

Équations d amorçage d intégrales premières formelles

CHRISTOPHE REUTENAUER* Dédié à mon ami Xavier Viennot

Fonctions de plusieurs variables

Intelligence Artificielle et Robotique

Théorème du point fixe - Théorème de l inversion locale

Chapitre 1 I:\ Soyez courageux!

Machines virtuelles Cours 1 : Introduction

FONCTION DE DEMANDE : REVENU ET PRIX

LA NOTATION STATISTIQUE DES EMPRUNTEURS OU «SCORING»

CMI ECONOMIE, FINANCE QUANTITATIVE ET STATISTIQUES - PARCOURS FORMATION EN APPRENTISSAGE

! Text Encoding Initiative

Logiciel de Base. I. Représentation des nombres

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé

Diapo 1. Objet de l atelier. Classe visée. Travail en co-disciplinarité (identité et origine académique des IEN)

Notes du cours MTH1101 Calcul I Partie II: fonctions de plusieurs variables

Python - introduction à la programmation et calcul scientifique

La fonction exponentielle

Solution A La Gestion Des Objets Java Pour Des Systèmes Embarqués

Élasticité des applications à base de services dans le Cloud

Elle accompagne les entrepreneurs, les gestionnaires et les équipes pour résoudre les défis liés à leur rôle.

MODE OPERATOIRE OPENOFFICE BASE

Résolution d équations non linéaires

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

Les travaux doivent être remis sous forme papier.

Compilation. Algorithmes d'analyse syntaxique

Année 2014/ er septembre Version de Anca Muscholl, issue du poly de Marc Zeitoun. 1/143

F411 - Courbes Paramétrées, Polaires

Né le 13/06/1984 Russe Célibataire Langues : Russe, Anglais,

Limites finies en un point

Master of Science en mathématiques

Cherche. Champ de saisie. Langue de. l interface. 1. Informations et. à l utilisation. NEBIS recherche. et trouver. Prêt

MATHÉMATIQUES ET INFORMATIQUE

UTILISATION DU WEB COMME MEGA-BASE DE DONNÉES LINGUISTIQUE : APPLICATION À LA TRADUCTION DE COOCCURRENCES LEXICALES FRANÇAISES-ANGLAISES

Problème 1 : applications du plan affine

Découverte des dépendances fonctionnelles conditionnelles fréquentes

Chapitre 2. Eléments pour comprendre un énoncé

Représentation d un entier en base b

Chapitre 6. Fonction réelle d une variable réelle

données en connaissance et en actions?

Résolution de systèmes linéaires par des méthodes directes

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

La demande Du consommateur. Contrainte budgétaire Préférences Choix optimal

Plan du cours : électricité 1

Fonctions holomorphes

Cours d Informatique

Economie de l incertain et de l information Partie 1 : Décision en incertain probabilisé Chapitre 1 : Introduction à l incertitude et théorie de

Model checking temporisé

INTRODUCTION AUX METHODES D INGENIERIE DES DONNEES DIRIGEE PAR LES MODELES

Master of Science en mathématiques

Transcription:

Grammaires algébriques 2006/2007 1 Motivation Syntaxe valide... ou non Exemple 1.1.. *La cet. La, cet. La cet. La à cet. Un ngage formel, pour un vocabuire donné, est un ensemble de phrases syntaxiquement correctes utilisant ce vocabuire. Compétence et performance linguistique Exemple 1.2. *La cet. La cet.. Et si Yoda est l élocuteur? Performance phrase dite ou écrite Compétence comment construire et comprendre une phrase correcte modèle (fini) du ngage Compétence linguistique Exemple 1.3.. original. original et méconnu. original, talentueux et méconnu. original, talentueux, illuminé et méconnu.... phrases correctes règles de formation simples et en petit nombre : ajout d adjectifs, de ponctuation et de conjonctions compétence permet des phrases de longueur infinie : limite pragmatique Règles de réécriture Exemple 1.4. original. Exemple 1.5. n v n adj v (1) n adj v n adj et adj v (2) original et méconnu. Exercice 1.6. Quelle règle de réécriture pour les ajouts d articles dans «original, talentueux et méconnu.» et dans «original, talentueux, illuminé et méconnu.»? 1

Grammaires syntagmatiques Ambiguïté det n v det n SP det v prep n det n ε Faire intervenir les catégories,, etc. dans les règles de réécriture. Exemple 1.7. Analyse syntaxique grammaire (ensemble de règles de réécriture ) phrase à analyser («.») (les) structure(s) syntaxique(s) (3) det n v det n En bref Formaliser Exhiber structure Permettre de dériver un analyseur 2 Langages formels Définition 2.1. Un ngage formel sur un alphabet Σ est un sous-ensemble du monoïde libre Σ,, ε généré par Σ. Exemple 2.2. Soit Σ = {a, b} ; {a n b n n 0} et {ww w Σ } sont des ngages. 2

Opérations sur les ngages opérations ensemblistes (union, intersection, complément) :,,, concaténation (ou produit cartésien) : L 1 L 2 = {xy x L 1, y L 2 }, étendue par L 0 = {ε} et, pour i 0, L i+1 = L i L, étoile de Kleene : L = i 0 L i, plus de Kleene : L + = i 1 L i, quotient gauche : L 2 \L 1 = {w x L 2, xw L 1 }, quotient droit : L 1 /L 2 = {w x L 2, wx L 1 },... Le français comme un ensemble Exemple 2.3. Σ = {adj, adv, det, n, prep, v, et}, L français = {det n v,... pas très pratique... et aucune structure! 3 Systèmes de réécriture 3.1 Définitions Systèmes de réécriture det n adj v, det n adj et adj v,... }. Définition 3.1., P est un système de réécriture est un vocabuire et P un sous-ensemble de. Les éléments α β de P sont appelés des règles de réécriture. Exemple 3.2. n v n adj v (4) Dérivations Définition 3.3. Soit, P un système de réécriture. La retion de dérivation r sur est définie pour tout ϕ et σ de par ϕασ r ϕβσ ssi r = α β P. (5) Enfin, te retion est étendue aux séquences de règles dans le monoïde libre P par ε = id rπ = r π. = = r P π P r et π. 3

Langage décrit par un système de réécriture On distingue souvent une chaîne de caractères ρ de ; on peut alors définir un ngage par génération depuis l axiome ρ comme ou bien par reconnaissance dans l état d acceptation ρ comme L(, P ) = {ω ρ ω}, (6) L(, P ) = {ω ω = ρ}. (7) (Dans ce dernier cas, on substitue les notations et = à et.) Deux systèmes 1, P 1 et 2, P 2 sont équivalents si L( 1, P 1 ) = L( 2, P 2 ). 4 Grammaires Grammaires syntagmatiques [Cho59] Définition 4.1. Un quadruplet Σ,, S, P est une grammaire syntagmatique G (en angis phrase structure grammar) : Σ est l alphabet terminal, est l alphabet non terminal, S est l axiome, P est un ensemble de règles de forme ϕaσ ϕασ où A. Soit = Σ le vocabuire,, P est bien un système de réécriture génératif. Conventions de notation a, b, c, d,... sont des éléments de Σ ; A, B, C, D,... sont des éléments de ; X, Y, Z sont des éléments de ; u, v, w, x, y, z sont des éléments de Σ ; α, β, γ, δ,... sont des éléments de. Hiérarchie de Chomsky [Cho59] Restrictions sur forme des règles de P : 0. α β avec α dans + et β dans : grammaires contextuelles avec effacement ; ne sont pas des grammaires syntagmatiques ; 1. ϕaσ ϕασ avec ϕ et σ dans, A dans et α dans + : grammaires contextuelles ou monotones ; 2. A α avec A dans et α dans : grammaires non contextuelles ou algébriques ; 3. A α avec A dans et α dans Σ ou dans Σ : grammaires linéaires à droite. Machines et automates La hiérarchie de Chomsky trouve un écho dans les systèmes de réécriture recognitifs : 0. Langages récursivement énumérables, reconnaissables par une Machine de Turing (TM) ; 1. Langages contextuels, reconnaissables par une Machine de Turing dont le ruban a une longueur linéaire de taille des données traitées (LBTM) ; 2. Langages non contextuels ou algébriques, reconnaissables par un automate à pile (Push-Down Automaton, PDA) ; 3. Langages rationnels, reconnaissables par un automate d états finis (Finite-State Automaton, FSA). ous voici en possession d une équivalence entre ngages générés par certains systèmes génératifs et ngages reconnus par certains systèmes recognitifs. ous ne sommes plus si éloignés d une dérivation automatique d un analyseur syntaxique. 4

Exercice 4.2. Donner un algorithme de transformation d une grammaire linéaire à droite en grammaire linéaire à gauche. Exercice 4.3. Donner un algorithme de construction d un automate d états finis équivalent à une grammaire linéaire à droite. On en déduit par le théorème de Kleene [Kle56] que les expressions rationnelles sont une autre description finie des grammaires linéaires. 4.1 Grammaires algébriques Grammaire algébrique (CFG) [Cho56] Exemple 4.4. français français français Forme de Backus-aur (BF) [Bac59] Exemple 4.5. Systèmes d équations [GR62] SP... det SA n SA v v SA v... SA SA adj SA ε <francais >::= <francais > < > <francais >::= < > < >::= < > < > < >::= < > < > <SP > < >::=... < >::=det <SA> n <SA> < >::=v < >::=v <SA> < >::=v < > < >::=... <SA>::= <SA> adj <SA>::=ε 5

Exemple 4.6. L français =L + L =L L L L L SP... L ={det}l SA {n}l SA L ={v} {v}l SA {v}l... L SA ={adj }... Langages algébriques L ensemble des ngages algébriques est fermé par union concaténation intersection avec un ngage rationnel homomorphisme... Dérivations droites et gauches Définition 4.7. Une dérivation droite rm est définie par Définition 4.8. Une dérivation gauche lm Parcours d un arbre syntaxique Exemple 4.9. Lors d une dérivation droite : ϕax rm ϕαx ssi A α P (8) est définie par yaσ yασ ssi A α P (9) lm 6

Une seule dérivation droite (ou gauche) par arbre de dérivation. Ambiguité L existence de deux arbres syntaxiques différents marque une ambiguité. Théorème 4.10. Soit G une grammaire algébrique ; elle est ambigüe si et seulement si une phrase de L G possède plus d une dérivation droite (ou gauche). Il existe des ngages algébriques intrinsèquement ambigus. Exemple 4.11 ([Par66]). Le ngage {a i b j c k i = j ou j = k} est intrinsèquement ambigu. Théorème 4.12 ([Can62, CS63]). Le problème de l ambiguité d une grammaire algébrique n est pas décidable. 5 Analyseurs Génératif vers recognitif Syntaxe formalisée par une grammaire algébrique G =, Σ, P, S. Construction automatique d un automate à pile A = Q, Σ, R, ϕ s, F, $, pour G. 5.1 Automates à pile Automate à pile (PDA) Définition 5.1. Un automate à pile A = Q, Σ, R, ϕ s, F, $, est un système de réécriture Q Σ {$, }, R recognitif où Q est l alphabet de pile, Σ est l alphabet d entrée, R {$} Q { } Σ {$} est un ensemble de règles ϕ xy ψ y, (10) ϕ s Q est le contenu initial de pile, F Q est l ensemble des contenus finaux de pile, $ est le marqueur de fin, et est le délimiteur de sommet de pile. L A = {w $ϕ s w$ = $ϕ f $ avec ϕ f F }. (11) 7

5.2 Analyse descendante Analyseur descendant Définition 5.2. L analyseur récursif descendant pour une grammaire algébrique G =, Σ, P, S est un automate à pile A desc = Q, Σ, R, ϕ s, F, $, où Q est l ensemble des production pointées de P, notées R est l ensembles des règles [A α α ] si A αα P, (12) [A α Bα ] predict [A αb α ][B β], [A α aα ] a match [A αa α ], [A α ], ϕ s = [S S$], F = {[S S $]}. Analyse descendante 8

Exemple 5.3. $[S $] det det $ = predict $[S $][ ] det det $ = predict $[S $][ ][ det ] det det $ = match $[S $][ ][ det ] det $ = match $[S $][ ][ det ] det $ = $[S $][ ] det $ = predict $[S $][ ][ ] det $ = match $[S $][ ][ ] det $ = predict $[S $][ ][ ][ det ] det $ = match $[S $][ ][ ][ det ] $ = match $[S $][ ][ ][ det ] $ = $[S $][ ][ ] $ = $[S $][ ] $ = $[S $] $ Transducteur à pile L analyse précédente ne dit que si une phrase appartient au ngage de G ou non. Définition 5.4. Un transducteur à pile A, τ pour G est constitué d un automate à pile A pour G et d un homomophisme τ de R dans P défini par τ([a α Bα ] predict [A αb α ][B β] ) =B β, τ([a α aα ] a match [A αa α ]) =ε, et τ([a α ] ) =ε. L exemple précédent donnait les productions dans l ordre d une dérivation gauche. Faiblesses de l analyse descendante 1. L automate à pile est non déterministe ; il nécessite un backtrack coûteux ; 2. l ensemble de règles R permet des règles de forme [A Aα] predict [A A α][a Aα] si grammaire est récursive gauche. 9

5.3 Analyse ascendante Dérivations droites Exemple 5.5. Lors d une dérivation droite : 10

11

Et si on inverse retion : si on évalue rm 1 depuis chaîne terminale? Analyseur ascendant Définition 5.6. L analyseur ascendant pour une grammaire algébrique G =, Σ, P, S est un automate à pile A asc =, Σ, R, ϕ s, F, $, où R est l ensembles des règles α A α A, a shift a, ϕ s = ε, 12

F = {S}. Définition 5.7. Le transducteur ascendant A, τ est défini par τ(α A α A ) = A α, τ( a shift a ) = ε. Analyse ascendante Exemple 5.8. $ $ = shift $ $ = shift $ $ = $ $ = shift $ $ = shift $ $ = shift $ $ = $ $ = $ $ = $ $ 6 Conclusion En résumé Les grammaires algébriques permettent 1. de générer des ngages formels de csse des ngages algébriques ; 2. de structurer syntaxe sous forme d arbres de dérivation ; 3. une analyse à l aide d automates à pile. References [Bac59] John W. Backus. The syntax and semantics of the proposed international algebraic nguage of the Zürich ACM-GAMM Conference. In IFIP Congress, pages 125 131, 1959. [Can62] David G. Cantor. On the ambiguity problem of Backus systems. Journal of the ACM, 9(4):477 479, 1962. [Cho56] oam Chomsky. Three models for the description of nguage. IEEE Transactions on Information Theory, 2(3):113 124, 1956. [Cho59] oam Chomsky. On certain formal properties of grammars. Information and Control, 2(2):137 167, 1959. [CS63] [GR62] oam Chomsky and Marcel Paul Schützenberger. The algebraic theory of context-free nguages. In P. Braffort and D. Hirshberg, editors, Computer Programming and Formal Systems, Studies in Logic, pages 118 161. orth-holnd Publishing, 1963. Seymour Ginsburg and H. Gordon Rice. Two families of nguages reted to ALGOL. Journal of the ACM, 9(3):350 371, 1962. 13

[Kle56] Stephen C. Kleene. Representation of events in nerve nets and finite automata. In C. E. Shannon and J. McCarthy, editors, Automata Studies, pages 3 40. Princeton University Press, 1956. [Par66] Rohit J. Parikh. On context-free nguages. Journal of the ACM, 13(4):570 581, 1966. 14