AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES

Documents pareils
LANGAGES - GRAMMAIRES - AUTOMATES

Synthèse de cours (Terminale S) Calcul intégral

Chapitre 2 Le problème de l unicité des solutions

STI2D Logique binaire SIN. L' Algèbre de BOOLE

Correction de l épreuve CCP 2001 PSI Maths 2 PREMIÈRE PARTIE ) (

Chapitre 11 : L inductance

semestre 3 des Licences MISM annnée universitaire

Théorème de Poincaré - Formule de Green-Riemann

Techniques d analyse de circuits

Tout ce qu il faut savoir en math

Université Paris-Dauphine DUMI2E. UFR Mathématiques de la décision. Notes de cours. Analyse 2. Filippo SANTAMBROGIO

/HVV\VWqPHVFRPELQDWRLUHV

L'algèbre de BOOLE ou algèbre logique est l'algèbre définie pour des variables ne pouvant prendre que deux états.

ANALYSE NUMERIQUE NON-LINEAIRE

Cours d Analyse IV Suites et Séries de fonctions

LICENCE DE MATHÉMATIQUES DEUXIÈME ANNÉE. Unité d enseignement LCMA 4U11 ANALYSE 3. Françoise GEANDIER

- Phénoméne aérospatial non identifié ( 0.V.N.I )

Notes de révision : Automates et langages

COURS D ANALYSE. Licence d Informatique, première. Laurent Michel

Guide d'utilisation Easy Interactive Tools Ver. 2

Algorithmes sur les mots (séquences)

Chapitre VI Contraintes holonomiques

Avant d utiliser l appareil, lisez ce Guide de référence rapide pour connaître la procédure de configuration et d installation.

Module 2 : Déterminant d une matrice

3- Les taux d'intérêt

Séquence 8. Probabilité : lois à densité. Sommaire

Licence M.A.S.S. Cours d Analyse S4

Turbine hydraulique Girard simplifiée pour faibles et très faibles puissances

ANALYSE : FONCTIONS D UNE VARIABLE RÉELLE

Toyota Assurances Toujours la meilleure solution

Transfert. Logistique. Stockage. Archivage


Conseils et astuces pour les structures de base de la Ligne D30

Chapitre 1 : Fonctions analytiques - introduction

Sciences Industrielles Précision des systèmes asservis Papanicola Robert Lycée Jacques Amyot

Guide des bonnes pratiques

AUTOUR D UN MÉMOIRE INÉDIT : LA CONTRIBUTION D HERMITE AU DÉVELOPPEMENT DE LA THÉORIE DES FONCTIONS ELLIPTIQUES. Bruno BELHOSTE (*)

Partie 4 : La monnaie et l'inflation

Sommaire. 6. Tableau récapitulatif Sophos NAC intégré Vs. NAC Advanced - 17 Février

Introduction à la modélisation et à la vérication p. 1/8

SYSTEME DE TELEPHONIE

Pour développer votre entreprise LES LOGICIELS EN LIGNE, VOUS ALLEZ DIRE OUI!

EnsEignEmEnt supérieur PRÉPAS / BTS 2015

Statuts ASF Association Suisse Feldenkrais

LOGICIEL FONCTIONNEL EMC VNX

Influence du milieu d étude sur l activité (suite) Inhibition et activation

Thèse Présentée Pour obtenir le diplôme de doctorat en sciences En génie civil Option : structure

Réalisation de sites Internet PME & Grandes entreprises Offre Premium. Etude du projet. Webdesign. Intégration HTML. Développement.

Electrovanne double Dimension nominale Rp 3/8 - Rp 2 DMV-D/11 DMV-DLE/11

La pratique institutionnelle «à plusieurs»

ManSafe. pour les Utilitiés. La Protection antichute pour les Industries de l'energie. Français. TowerLatch LadderLatch

Magister en : Génie Mécanique

LITE-FLOOR. Dalles de sol et marches d escalier. Information technique

Baccalauréat S Asie 19 juin 2014 Corrigé

Classeur courtier d assurance. Comment organiser son activité et se préparer à un contrôle

Commencer DCP-7055W / DCP-7057W /

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

Santé et sécurité psychologiques en milieu de travail

INTENTION LES PROCESSUS MATHÉMATIQUES

NEWS PRO ACTIV. [Juillet 2015] Ce mois-ci on vous parle de. L arrêté est applicable à compter du 1er Juillet 2015.

Bloc notes. a À faire tout de suite. Gardez secret votre code confidentiel. À conserver précieusement. Protégez votre carte

INSTALLATION DE DETECTION INCENDIE

INFORMATIONS TECHNIQUES

Titrages acidobasiques de mélanges contenant une espèce forte et une espèce faible : successifs ou simultanés?

Directives COV et alternative lipochimique : peintures, encres, nettoyage, dégraissage...

Le canal étroit du crédit : une analyse critique des fondements théoriques

Modification simultanée de plusieurs caractéristiques d un bien hédonique : une nouvelle méthode de calcul de la variation de bien-être des ménages

Guide de l'utilisateur

Interview p.10. Francis Delpérée. Dossier pédagogique des Equipes Populaires Bimestriel n 154 Janvier-Février 2013

Solutions IHM. Gammes Graphite et G3 Outils pour l'usine connectée

Compte rendu de la validation d'un observateur cascade pour la MAS sans capteurs mécaniques sur la plate-forme d'essai de l'irccyn

INSTRUCTIONS POUR L INSTALLATION ET LE FONCTIONNEMENT DES SERRURES À POIGNÉE BÉQUILLE

Intégrale et primitives

Pour développer votre entreprise. Compta LES LOGICIELS EN LIGNE, VOUS ALLEZ DIRE OUI!

Systèmes de plafonds

La plateforme Next Generation Mini guide

Programmation linéaire et Optimisation. Didier Smets

1 Définition et premières propriétés des congruences

La paye. La comptabilité. Comparez et choisissez votre logiciel. Comparez et choisissez votre logiciel. Paye Bâtiment Paye Agricole 2013


Topologie dans un réseau : l exemple des points de Dirac

2.4 Représentation graphique, tableau de Karnaugh

Livret de l étudiant

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

RadioCommunications CDMA

REUNION INFORMATIQUE 15/09/12 Utilisation Messagerie «Webmail 2» I ) Préambule : Pourquoi l utilisation d une messagerie commune?

Meg Gawler Bréhima Béridogo. Mars 2002

CHAUFFE-EAU RÉSIDENTIELS ÉLECTRIQUES

Chp. 4. Minimisation d une fonction d une variable

Clients légers IGEL et bureaux virtuels : synergie idéale et coût minimal

Régression multiple : principes et exemples d application. Dominique Laffly UMR CNRS Université de Pau et des Pays de l Adour Octobre 2006

Déroulement de l épreuve de mathématiques

FONDATION CLEMENTINE ET MAURICE ANTILLE

Probabilités sur un univers fini

Introduction à l étude des Corps Finis

Optimisation non linéaire Irène Charon, Olivier Hudry École nationale supérieure des télécommunications

Compression Compression par dictionnaires

Portiers audio et vidéo ABB-Welcome et ABB-Welcome M

L import massif introduit plusieurs nouvelles fonctionnalités, selon que l on importe un thésaurus, un ensemble de valeurs contrôlées ou un corpus.

Transcription:

AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES Mrie-Pule Muller Version du 31 mi 2007 Ce document est une suite u cours LANGAGES-GRAMMAIRES-AUTOMATES, que le lecteur trouver ussi sur le site LesMthémtiques.net. Il présente quelques méthodes mthémtiques pour l informtique théorique qui pourront servir d'entrée en mtière vnt l étude d un cours spécilisé de compiltion. L objectif, ici, est de comprendre ce qu est un utomte à pile et son lien vec les grmmires lgébriques. Cette étpe supplémentire permettr ussi d border ultérieurement l étude des mchines de Turing. Tble des mtières. CHAP 1 AUTOMATE À PILE DÉFINITIONS ET MODÈLES 3 1.1 Introduction. 3 1.2 Définitions et exemple. 4 1.3 Générlistion de l forme des trnsitions. 7 1.4 Restriction de l forme des trnsitions. 8 1.5 Autres modes de reconnissnce. Configurtions. 8 Reconnissnce pr étt cceptnt. 9 Reconnissnce pr pile vide. 9 Configurtions. 9 CHAP. 2 EQUIVALENCE DES MODES DE RECONNAISSANCE. 10 2.1 Equivlence des modes d initilistion (étts cceptnts spécifiés). 10 2.2 Equivlence des modes de reconnissnce. 10 2.3 Lquelle de ces vrintes llons-nous privilégier? 12 CHAP. 3 AUTOMATES À PILE ET GRAMMAIRES ALGÉBRIQUES 14 3.1 Automte à pile ssocié à une grmmire lgébrique. 14 3.2 Construction simplifiée (grmmire sous forme de Greibch). 14 3.3 Exemple. 15 3.4 Grmmire lgébrique ssociée à un utomte à pile. 16 CHAP. 4 QUELQUES OPÉRATIONS SUR LES LANGAGES ALGÉBRIQUES 20 4.1 Opértions régulières sur les lngges lgébriques. 20 4.2 Intersections et compléments de lngges. 21 CHAP. 5 LE «LEMME DE L ETOILE» 23 5.1 Le Lemme de l Etoile (cs d une grmmire lgébrique). 23 5.2 Exemples d ppliction du Lemme de l Etoile. 25

CHAP. 6 AUTOMATES À PILE DÉTERMINISTES 27 6.1 Définition et exemple. 27 6.2 Discussion des modes de reconnissnce. 28 6.3 Des exemples prmi les plindromes. 29 RÉFÉRENCES 31 Mrie-Pule MULLER Adresse enseignement : IUT Robert-Schumn B.P. 10315, F-67411 Illkirch Cedex mél : Mrie-Pule.Muller@urs.u-strsbg.fr Adresse recherche : IRMA - UMR 7501 du CNRS 7 rue René Descrtes F-67084 Strsbourg Cedex mél : mpmuller@urs.u-strsbg.fr M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 2

Chp. 1 Automte à pile Définitions et modèles Conventions. En ccord vec l convention mintennt doptée pr l pluprt des références bibliogrphiques, nous noterons l chîne vide, ou une étiquette vide pour une trnsition. Dorénvnt, nous dirons simplement «utomte» pour un utomte, c est-à-dire dns le cs où des trnsitions d étiquette vide sont utorisées. Lorsque l étiquette d une trnsition devr être non vide, nous le préciserons. On rppelle que dns une pile, l élément qui se trouve en hut est le dernier à voir été empilé et le premier que l on peut dépiler. En représentnt une pile «à l horizontle», pr une chîne de symboles, on écrit de guche à droite les symboles tels qu ils figurent de hut en bs dns l pile. Le premier symbole (celui de guche) est celui du hut de l pile. 1.1 Introduction. Nous vons vu que les utomtes reconnissent les lngges qui peuvent être engendrés pr les grmmires régulières. Le problème : peut-on décrire un dispositif plus générl, ssocié de mnière nturelle ux grmmires lgébriques? Rppelons un exemple simple, sur l lphbet Σ = {, b}. Il est très fcile d écrire une grmmire lgébrique qui engendre le lngge L = { n b n : n 0 } ; il suffit pour cel de considérer l grmmire S Sb. Nénmoins, le Lemme de l Etoile (cf. [1] ) nous permet de prouver que L ne peut ps être engendré pr une grmmire régulière. L idée intuitive est qu vec une grmmire régulière, les symboles sont écrits consécutivement (de guche à droite), et qu il fut donc compter les symboles u fur et à mesure qu on les écrit, pour pouvoir ensuite les fire suivre d utnt de symboles b. Un dispositif qui reconnît L doit être cpble de mémoriser. En fit, il suffir de coupler un utomte à une mémoire rudimentire (une pile, supposée de cpcité illimitée). Voici un tel exemple. L utomte représenté ci-dessous est ssorti d une pile, vide u déprt. En prcournt l utomte, on empile un jeton à chque pssge pr l trnsition d étiquette, et on dépile un jeton on doit pouvoir le dépiler en pssnt pr une trnsition d étiquette b. On lisse l pile inchngée pr l trnsition d étiquette (vide) de s 0 à l étt 1. Pour qu une chîne testée w {, b}* soit cceptée, on convient que l pile doit être de nouveu vide lorsque w est entièrement lue, en rrivnt à l étt finl. Il est fcile de se convincre que le lngge reconnu est L = { n b n : n 0 }. s 0 1 L utomte sous-jcent b Pour d utres lngges, une pile se comportnt comme un simple compteur ne suffir ps ; utrement dit, il fudr disposer de jetons mrqués vec des symboles qui les différencient. Un exemple, sur l lphbet Σ = {, b}, en est le lngge des plindromes. M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 3

Sur l lphbet = {, b}, un plindrome est une chîne qui peut se lire indifféremment de guche à droite ou de droite à guche. Pr exemple, les chînes bbbb, bbb, bbb, bb sont des plindromes. On peut isément écrire une grmmire lgébrique qui engendre le lngge des plindromes : S b S bsb. Il est ssez fcile ussi de décrire directement un utomte à pile qui reconnît ce lngge : en se servnt de deux symboles de pile, disons Γ = {P, Q}, on peut empiler ou dépiler P (resp. Q ) lorsqu on lit un symbole (resp. b ) dns l chîne testée ; pour contrindre le dispositif à ne dépiler qu près que tous les empilements ient été fits, il fut disposer d une trnsition d hoc (elle servir u pssge du milieu d un plindrome ccepté). En voici l utomte sous-jcent, pour lequel il rester encore à écrire précisément l effet de chque trnsition sur l pile, b, S 0 1, b, b Mis pour tester une chîne donnée vec un tel dispositif, utrement dit l ccepter (si c est un plindrome) ou l rejeter (dns le cs contrire), les choses sont moins simples qu elles en ont l ir! Il fut non seulement «tâtonner» pour trouver le milieu de l chîne, mis encore mémoriser (dns une pile) les symboles lus jusqu à cet hypothétique milieu pour pouvoir les comprer ensuite, en les dépilnt un à un, vec ceux qui sont lus pr l suite. 1.2 Définitions et exemple. On trouve dns l littérture plusieurs définitions, qui diffèrent légèrement. Elles correspondent en fit u choix de l un des modes de reconnissnce possibles : pr pile vide, ou pr étt cceptnt, ou encore pr pile vide et étt cceptnt. Il est donc fit mention, selon les cs, d un symbole initil de pile et/ou d étts cceptnts. Pour certins uteurs, une trnsition doit nécessirement dépiler le symbole en hut de l pile vnt d empiler une chîne de symboles ; pour d utres, on peut ne rien dépiler (dépiler ) vnt d empiler des symboles. Souvent, un symbole de pile initil est précisé ; il est prfois dit «de fond de pile» ou «de pile vide» (bien qu il ne remplisse ps toujours cette fonction ). Toutes ces vrintes s vèrent être équivlentes, dns le sens où elles reconnissent les mêmes lngges (cf. Chp. 2 ). Nous doptons le point de vue priori le plus simple possible, vec le prti pris de n introduire des éléments techniques supplémentires que lorsqu ils nous seront utiles pour l suite. Définition 1. Un utomte à pile est un 6-uplet A = ( Σ, E, s o, F, Γ, δ ) où Σ est l ensemble (fini) des symboles E est l ensemble (fini) des étts s o E est l étt initil (unique) F E est le sous-ensemble des étts cceptnts Γ est un ensemble fini de symboles, spécifiques à l pile δ est l ensemble des trnsitions : M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 4

une trnsition est un triplet ([i,p],, [j,q] ), où i et j sont des étts, Σ U {} est l étiquette de l trnsition P, Q Γ U {}. L trnsition ([i,p],, [j,q] ) fit psser de l étt i à l étt j en dépilnt le symbole P du hut de l pile puis en empilnt le symbole Q. Pour que cette trnsition puisse être empruntée, il fut pouvoir dépiler P : ce symbole doit donc figurer en hut de l pile (s il est non vide). On peut ussi représenter une trnsition donnée ([i,p],, [j,q] ) de mnière plus visuelle, à l ide d une flèche munie d'une étiquette Σ U {} : [i,p] [j,q] Remrque. De mnière un peu plus formelle, l ensemble des trnsitions δ est souvent présenté comme une «reltion», ou bien comme une «fonction prtielle». C est en effet un sous-ensemble de l ensemble E x (Γ U{}) x (Σ U{}) x E x (Γ U{}). On peut ussi le voir comme une ppliction définie sur E x (Γ U{}) x (Σ U{}), à vleurs dns l ensemble des sous-ensembles de E x (Γ U{}). Définition 2. Pour un utomte à pile A, une chîne w Σ* est reconnue pr étt cceptnt et pile vide s il y une suite de trnsitions prtnt de l étt initil vec l pile vide, dont l suite des étiquettes est w, et boutissnt à un étt cceptnt où l pile est vide. Le lngge reconnu est l'ensemble de toutes les chînes reconnues. Il est noté L(A). De mnière équivlente, on dit ussi qu une chîne (resp. un lngge) est ccepté(e) pr un utomte à pile A. Deux utomtes à pile reconnissnt le même lngge seront dits équivlents. Nous obtenons l utomte sous-jcent en «oublint» les symboles de pile dns les trnsitions. Un utomte à pile peut donc se représenter comme un utomte, à l'ide d'un grphe orienté et étiqueté, à condition de préciser l ction sur l pile de chcune des trnsitions. En fit, les symboles de pile servent d iguillges plutôt que de compteurs : une trnsition est verrouillée si le symbole à dépiler ne correspond ps u hut de pile cournt. Exemple 1. Le lngge L = { n b n : n 0 } est reconnu pr l utomte à pile à un seul symbole de pile, disons Γ= {u}, dont l utomte sous-jcent est s 0 1 b 2 b et dont les trnsitions sont ([s 0, ],, [1, u] ) ([1, ],, [1, u] ) ([1, u], b, [2, ] ) ([2, u], b, [2, ] ) Ici, l étt initil est non récursif et il n y ps de trnsition d étiquette vide. Une chîne peut être rejetée prce qu elle est déjà refusée pr l utomte sous-jcent ; elle peut ussi être rejetée du fit de l pile : on rrive à l étt finl vec l pile non vide (c est le cs pour bb ), ou l lecture de l chîne est bloquée prce que l pile est vide lors qu il fudrit dépiler encore un symbole (exemple : bbb ). M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 5

L utomte sous-jcent ne contient qu une prtie de l informtion ; pour une représenttion grphique complète d un utomte à pile, il fut préciser l ction sur l pile vec l étiquette de chque flèche. Les conventions diffèrent selon les uteurs. On peut dopter l suivnte, qui l vntge de séprer distinctement le symbole lu dns l chîne testée et les symboles de pile (formellement, ce sont prfois les mêmes ) : ( ; u) s b (u ; ) 0 1 2 ( ; u) b (u ; ) Un utomte à pile peut se décrire ussi à l ide d une tble dns lquelle les trnsitions sont spécifiées. Les lignes correspondent ux étts, les colonnes ux étiquettes possibles. Dns les cses figurent les triplets (étt d rrivée ; symbole dépilé ; symbole empilé) ; il peut y en voir plusieurs pr cse, ou ucun. Les étts prticuliers sont signlés dns les dernières colonnes. b ccept s 0 1 ; ; u x étt initil 1 1 ; ; u 2 ; u ; 2 2 ; u ; x Exemple 2. Donnons une description complète des trnsitions de l utomte à pile déjà présenté pour les plindromes : ( ; ) b ( ; ) ( ; ) S 0 1 ( ; P) b ( ; Q) (P ; ) b (Q ; ) Voici l tble des trnsitions de cet utomte à pile : s 0 b ccept s 0 ; ; P s 0 ; ; Q 1 ; ; 1 ; ; 1 ; ; étt initil 1 1 ; P ; 1 ; Q ; x M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 6

1.3 Générlistion de l forme des trnsitions. LesMthémtiques.net On générlise légèrement l notion d utomte à pile en utorisnt dns les trnsitions l empilement d une chîne de plusieurs symboles de pile. Noter qu on ne dépile toujours qu un symbole (ou ucun) : il fut en effet qu un symbole soit vu en hut de l pile vnt de pouvoir le dépiler, lors qu un empilement est toujours possible. Définition. Une trnsition «générlisée» d un utomte à pile est un triplet de l forme ([i,p],, [j, M] ), où i et j sont des étts, P Γ U{}, et M Γ*. Pour fixer les idées, voici une illustrtion d une telle trnsition. Ici, P, Q, R et T sont des symboles de pile, et l chîne M = TRTQ est empilée près le dépilement de P : [i,p] [j,trtq] Pr convention, c est le symbole le plus à guche de l chîne M que l on retrouver en hut de l pile : P T R T Q Proposition. Tout utomte à pile ynt des trnsitions générlisées peut être trnsformé en un utomte à pile qui reconnît le même lngge. Preuve. Il suffit d introduire suffismment de nouveux étts pour pouvoir remplcer chque trnsition «générlisée» pr une chîne de trnsitions convenbles rélisnt l même opértion. Exemple. L trnsition «générlisée» [i,p] peut être remplcée pr le groupe de qutre trnsitions suivntes : [j,trtq] [i,p] [j 1,Q] [j 1, ] [j 2,T] [j 2, ] [j 3,R] [j 3, ] [j,t] les trois nouveux étts j 1, j 2, j 3 ynt été introduits dns ce seul but. M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 7

1.4 Restriction de l forme des trnsitions. LesMthémtiques.net Voici une utre trnsformtion d un utomte à pile ; elle permet de n voir que des trnsitions du modèle le plus rudimentire possible : seule une ction est effectuée à chque étpe. De mnière évidente, une trnsition [i,p] peut être remplcée pr le groupe des trois trnsitions suivntes, en utilisnt deux étts supplémentires i et i que l on joute à l utomte dns ce seul but : [i,p] [i,p] [i,p] Remrque 1. Nous pourrions ussi imposer l première trnsition ([ i, ],, [ i, ]) (u lieu de ([ i, P],, [ i, P]) ) puisque l trnsition suivnte doit nécessirement dépiler P. Mis dns le cs où l utomte à pile donné est déterministe (notion que nous verrons u Chp. 6), ce choix urit l inconvénient de ne ps conserver le déterminisme. L proposition suivnte est insi étblie. [j,q] [i, ] [i, ] [j,q] Proposition. Tout utomte à pile peut être trnsformé en un utomte à pile équivlent dont les trnsitions sont de l forme [i, P] [j, P] Σ U {}, P Γ U {} ou [i, P] [j, ] P Γ ou [i, ] [j, P] P Γ Remrque 2. Une trnsition ([ i, ],, [ j, ]) lisse l pile inchngée quel que soit son étt, même vide. Elle ne remplce l fmille des trnsitions {([i, P],, [j, P]), P Γ } que dns le cs où l pile est non vide. L trnsition ([i, P],, [j, P]) lisse ussi l pile inchngée, mis elle ne peut s ppliquer que si le symbole P figure en hut de l pile. Plus générlement, une trnsition ([ i, ],, [ j, M]) où M Γ* n équivut à l fmille de trnsitions {([ i, P],, [ j, MP]), P Γ } que si l pile est grntie non vide. Les modifictions fites jusqu ici étient «locles», en ce sens qu on exminit les trnsitions une à une. Nous doptons dorénvnt un point de vue plus globl sur les utomtes à pile. 1.5 Autres modes de reconnissnce. Configurtions. Nous introduisons des vrintes qui ne portent ps sur l forme des trnsitions, mis sur l étt dns lequel doit être l pile pour qu une chîne soit cceptée. M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 8

On rppelle que le mode de reconnissnce «stndrd» que nous vons dopté (1.2 Définition 1) est celui pr étt cceptnt et pile vide. Reconnissnce pr étt cceptnt. Avec cette convention, une chîne testée pr un utomte à pile A = ( Σ, E, s o, F, Γ, δ ) est cceptée si, à prtir de l étt initil, elle peut être entièrement lue en rrivnt à un étt de F, ceci quel que soit le contenu de l pile à ce moment-là. L pile est supposée vide u déprt, mis on peut ussi convenir d un certin contenu initil qui ser imposé. Reconnissnce pr pile vide. Ce mode de reconnissnce utorise un utomte à pile à ccepter une chîne si, à prtir de l étt initil, elle peut être entièrement lue en vidnt l pile. Il n y donc ps lieu de préciser un sous-ensemble d étts cceptnts, il est sous-entendu que F = E (tous les étts sont cceptnts). Il y évidemment des lngges qui ne contiennent ps l chîne vide. Afin que celle-ci ne soit ps systémtiquement cceptée dès l étt initil, on convient qu u déprt, l pile est non vide : elle doit contenir un symbole prticulier qui initilise son contenu. Ce symbole initil de pile ser indiqué dns l définition. Ainsi pr exemple, l nottion A = ( Σ, E, s o, Γ, p 1, δ ), où p 1 Γ, désigne un utomte à pile dont le contenu initil de l pile est le symbole p 1. Cel n implique ps que ce symbole initil de pile rester en fond de pile, ni même que l pile rester non vide durnt le test d une chîne. Nénmoins, nous verrons comment modifier un utomte à pile de mnière à grntir que l pile reste non vide jusqu à l ccepttion d une chîne. Ce rffinement technique ser importnt u moment de construire une grmmire lgébrique qui produit le lngge reconnu pr un utomte à pile donné. Configurtions. Définition. Une configurtion est un triplet (i, γ, u ) E x Γ* x Σ*. L chîne γ Γ* représente le contenu (complet, lu de hut en bs) de l pile à l étt i, et u Σ* est ce qui reste encore à lire à prtir de l étt i et du contenu de pile γ indiqués. L trnsition ([ i, P],, [ j, M]) permet de psser de l configurtion (i, Pη, v ) à l configurtion ( j, Mη, v ), où η Γ*, v Σ* : le symbole Σ U {} été consommé dns l chîne v et le contenu de l pile est pssé de Pη à Mη. Dns une configurtion initile, nous sommes à l étt initil s o et l chîne de Σ* est une chîne w à tester. L pile est soit vide, soit vec le symbole initil de pile s il en est fit mention dns l spécifiction de l utomte à pile. Les symboles de w forment l liste des étiquettes des trnsitions successives qui seront à emprunter en circulnt dns l utomte. Dns une configurtion cceptnte, il n y plus de symboles de Σ à consommer ; elle est de l forme (i, γ, ), vec des conditions sur i et γ qui sont fixées pr le mode d ccepttion de l utomte à pile : i F si un ensemble F d étts cceptnts est spécifié, et/ou γ vide. L chîne testée w Σ* est cceptée si une suite de trnsitions permet de psser de l configurtion initile vec w jusqu à une configurtion cceptnte. M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 9

Chp. 2 Equivlence des modes de reconnissnce. L objectif est de prouver que si un lngge est reconnu selon un certin mode de reconnissnce, lors ce lngge est ussi reconnu selon n importe quel utre de ces modes. Les constructions qui suivent peuvent ussi être vues comme une série d exercices permettnt de s hbituer à l mnipultion des utomtes à pile et des notions vues jusqu à présent. Le lecteur pressé peut se reporter directement à l section 2.3, où l forme excte de l utomte à pile qui ser utilisé pr l suite est précisée dns l Proposition. 2.1 Equivlence des modes d initilistion (étts cceptnts spécifiés). Pour les modes de reconnissnce qui spécifient des étts cceptnts, l question de l configurtion initile vec ou sns symbole initil de pile est vite réglée : ces deux types de dispositifs sont équivlents. En effet : i) si A = ( Σ, E, s o, F, Γ, δ ) est vec pile initilement vide, il suffit d jouter un nouvel étt (non cceptnt) s o devennt l étt initil, de choisir un symbole initil de pile p 1 dns Γ, et d jouter une trnsition ([s o, p 1 ],, [s o, ]) qui dépile p 1. L utomte A = (Σ, E U{s o }, s o, F, Γ, p 1, δ ) insi obtenu reconnît le même lngge que A, vec le même mode de reconnissnce (soit pr étt cceptnt, soit pr étt cceptnt et pile vide). ii) si A = ( Σ, E, s o, F, Γ, p 1, δ ) un symbole initil de pile p 1 Γ, on procède de mnière nlogue en joutnt une trnsition ([s o, ],, [s o, p 1 ]) qui empile p 1. On obtient A = (Σ, E U{s o }, s o, F, Γ, δ ), vec pile initilement vide, qui reconnît le même lngge. L utomte sous-jcent s 0 s 0 A 2.2 Equivlence des modes de reconnissnce. 1. Les lngges reconnus pr étt cceptnt sont reconnus pr étt cceptnt et pile vide. Soit A = ( Σ, E, s o, F, Γ, δ ) qui reconnît pr étt cceptnt. Il fut rriver à vider l pile lorsqu une chîne est cceptée. On joute donc un nouvel étt, disons f, cceptnt, et des trnsitions qui vident l pile à prtir des étts cceptnts. Leurs étiquettes sont vides et f fonctionne comme un «piège» : insi, le nouveu dispositif n ccepte que les chînes cceptées pr A. Précisons les trnsitions joutées : ([ i, P],, [ f, ]), pour tout P Γ et pour tout i F U{f }. L utomte sous-jcent s 0 A M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 10 f

L utomte A = (Σ, E U{f }, s o, F U{f }, Γ, δ ) insi obtenu reconnît, pr étt cceptnt et pile vide, le lngge reconnu pr A. Cette construction peut se fire de l même fçon à prtir d un utomte vec symbole initil de pile A = ( Σ, E, s o, F, Γ, p 1, δ ). 2. Les lngges reconnus pr étt cceptnt et pile vide sont reconnus pr étt cceptnt. Soit A = ( Σ, E, s o, F, Γ, δ ) qui reconnît pr étt cceptnt et pile vide. S pile est initilement vide. L construction d un utomte équivlent A qui reconnît pr étt cceptnt est un peu plus fine que l précédente : en un étt cceptnt de A, il fut un moyen de reconnître que l pile est vide et, lorsque c est le cs, une ction doit être déclenchée : trnsiter vers un étt terminl introduit dns ce but. Il fut donc introduire ussi, vi un nouvel étt initil, un nouveu symbole de pile dont le seul rôle est de signler qu on tteint le fond de l pile (à ne ps confondre vec un simple symbole initil de pile). On joute donc : un nouveu symbole de pile, que nous notons deux nouveux étts : s o qui devient l étt initil (l étt s o est bnlisé) f qui ser l unique étt cceptnt les trnsitions ([s o, ],, [s o, ]) ([ i, ],, [ f, ]) pour tout i F (envoie vers f si est détecté) (empile dns l pile initilement vide) s 0 s 0 A f reste u fond de l pile Une fois mis dns l pile, le symbole ne peut ps être dépilé pr des trnsitions de A. Il est dépilé pr les nouvelles trnsitions boutissnt à f. L pile n est vide qu ux étts s o (initil) et f (cceptnt). L utomte à pile A = (Σ, E U{s o, f }, s o, {f }, Γ U{ }, δ ) obtenu reconnît, pr étt cceptnt, le lngge que reconnît A. Cette construction peut se fire de fçon nlogue à prtir d un utomte qui un symbole initil de pile A = ( Σ, E, s o, F, Γ, p 1, δ ). Dns cette sitution, le symbole jouté peut ussi être pris comme symbole initil de pile pour le nouvel utomte (le symbole p 1 est bnlisé). L première trnsition à jouter doit être ([s o, ],, [s o, p 1 ]). Elle empiler p 1 udessus de, comme il se doit pour fire l jointure vec l «prtie ncienne» du dispositif (les trnsitions qui sont déjà dns A ). On remrque que l pile n est vidée qu en f, ce qui v nous être utile dns l prochine construction. M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 11

3. Les lngges reconnus pr étt cceptnt et pile vide sont reconnus pr pile vide. Soit A qui reconnît pr étt cceptnt et pile vide. Un utomte équivlent A qui reconnît pr pile vide (vec un symbole initil de pile) s obtient isément en dptnt l construction ci-dessus pour lquelle, on l vu, l pile n est vide qu en f et éventuellement en s o (selon le mode d initilistion de l pile). Si A = ( Σ, E, s o, F, Γ, δ ) est à pile initilement vide, il suffit d introduire le seul étt supplémentire f en lissnt s o en étt initil, mis vec comme symbole initil de pile : A = (Σ, E U{f }, s o, Γ U{ },, δ ) Dns le cs où l pile de A = ( Σ, E, s o, F, Γ, p 1, δ ) est initilisée pr un symbole p 1, l construction déjà fite à l fin de 2. convient telle quelle, il suffit de ne ps spécifier d étt cceptnt : A = (Σ, E U{s o, f }, s o, Γ U{ },, δ ). L pile est mintennt initilisée pr le symbole «de fond de pile». 4. Les lngges reconnus pr pile vide sont reconnus pr étt cceptnt et pile vide. Ce point est évident : tous les étts sont considérés comme cceptnts. On toutefois un utomte vec symbole initil de pile. Pour obtenir un utomte dont l pile est initilement vide, il fut encore jouter un nouvel étt initil (non cceptnt), comme en 2.1, ii). 2.3 Lquelle de ces vrintes llons-nous privilégier? L objectif principl à venir ser d ssocier une grmmire lgébrique à un lngge reconnu pr un utomte à pile. On peut penser qu une règle de grmmire devrit correspondre à une trnsition. Mis le fit de pouvoir, ou non, emprunter une trnsition donnée ne dépend ps seulement de l étt cournt, il dépend ussi du symbole en hut de pile ; en fit, tout le prcours futur est conditionné pr le contenu cournt de l pile. Une vrible de l grmmire devrit donc voir pour prmètres les étts et les symboles de pile. Or une règle de grmmire consiste à réécrire une vrible : celle-ci est consommée et remplcée (pr une chîne). Pr nlogie, le symbole du hut de pile devr être dépilé vnt d être remplcé (pr une chîne empilée). Ces considértions (purement intuitives) nous mèneront à privilégier les utomtes dont toutes les trnsitions commencent pr dépiler un symbole de pile, donc vec une pile non vide jusqu à l ccepttion d une chîne du lngge (cf. Chp. 1 1.4., Remrque 2), qui se fer pr pile vide. L construction fite en 2.2. 2. ser donc prticulièrement utile. Reprenons un utomte à pile A = ( Σ, E, s o, F, Γ, δ ) selon l définition stndrd posée (Chp.1, 1.2). L pile est initilement vide, et l reconnissnce se fit pr étts cceptnts et pile vide. L proposition suivnte décrit l forme d un utomte à trnsitions générlisées (cf. Chp.1, 1.3) qui reconnît pr pile vide le même lngge que A. L construction donnée dns s preuve reprend et fit l synthèse des points 3. et 4. ci-dessus. M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 12

Proposition. Tout utomte à pile A = ( Σ, E, s o, F, Γ, δ ) est équivlent à un utomte à pile (à trnsitions générlisées) A = ( Σ, E, s o, Γ,, δ ) qui vérifie les propriétés suivntes : A un symbole initil de pile Γ, et reconnît pr pile vide. Aucune trnsition n boutit à l étt initil s o. Il y un (unique) étt f E ynt l propriété que - ucune trnsition n est issue de f - et toutes les trnsitions boutissnt à f sont de l forme [i, ] Toutes les utres trnsitions ( j f ) sont de l un des types suivnts, où P Γ : [i, P] [i, P] [i, P] [ f, ] (dépilement strict de ) [ j, P] Σ U{} (l pile reste inchngée) [ j, QP] Q Γ, Q (empilement strict de Q, Q ) [ j, ] P (dépilement strict de P, P ) Preuve de l proposition. Quitte à fire les trnsformtions «locles» décrites en 1.4, on peut supposer que les trnsitions de A sont de l forme ([i, ],, [j, ]), ([i, P],, [j, P]), ([i, P],, [j, ]) ou ([i, ],, [j, P]) vec P Γ et Σ U{}. On joute un symbole de pile, et deux étts : Γ = Γ U { }, où le symbole est choisi tel que Γ (quitte à chnger une nottion). E = E U {s o, f }, où f E et s o E. L étt s o est introduit dns le seul but d obtenir l non récursivité de l étt initil. Décrivons l ensemble δ des trnsitions : - on dmet telles quelles les trnsitions de A qui dépilent un symbole, c est-à-dire de l forme ([i, P],, [j, ] ), vec P Γ - chque trnsition de A de l forme ([i, ],, [j, Q]) est remplcée pr l fmille de trnsitions { ([i, P],, [j, QP] ), P Γ U{ } } (symboles, Q vides ou non) - on joute les trnsitions ([i, ],, [f, ]), pour tout i F - on joute une trnsition issue de l étt initil : ([s o, ],, [s o, ]). L utomte sous-jcent s 0 s 0 A f est en fond de pile Le symbole initil de pile rester en fond de pile jusqu à l rrivée en f, ce qui grntit que l pile rester non vide. Le symbole en hut de l pile signle lquelle des trnsitions ([i, P],, [j, QP]) peut se substituer à ([i, ],, [j, Q]) : ce symbole est dépilé, puis remis sur l pile, puis Q est empilé (cf. Chp. 1, 1.4., Remrque 2). M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 13

Chp. 3 Automtes à pile et grmmires lgébriques Les lngges produits pr les grmmires lgébriques (dites ussi : hors-contexte) sont les lngges reconnus pr les utomtes à pile. Les constructions respectives se font explicitement. 3.1 Automte à pile ssocié à une grmmire lgébrique. L construction très générle qui suit prît un peu formelle ; nénmoins, elle peut se fire directement à prtir de n importe quelle grmmire lgébrique. Théorème. Soit G une grmmire lgébrique. Le lngge L(G) engendré pr G est reconnu pr un utomte à pile. Preuve du théorème. Soit G = (Σ, V, S, P ) une grmmire lgébrique. On rppelle les nottions : V désigne l ensemble des vribles, l xiome S V, et P est l ensemble des règles de production, qui sont de l forme A M où A V et M (Σ U V)*. Pour obtenir un utomte reconnissnt pr pile vide (donc vec un symbole initil de pile), il nous suffit d un étt : soit E = {s 0 }. Les symboles de pile sont les symboles terminux et les vribles : Γ = Σ U V. Le symbole initil de pile est S. Chque règle de grmmire A M, où M (Σ U V)*, fournit une trnsition d étiquette vide, dont l effet sur l pile est de remplcer A pr l chîne M : [s 0, A] [s 0, M ] Il reste encore à jouter les trnsitions qui dépilent un symbole terminl qund il pprît en hut de l pile. Ce symbole psse lors en étiquette. Pour tout Σ : [s 0, ] [s 0, ] L utomte à pile obtenu est de l forme A = ( Σ, {s 0 }, s o, Σ U V, S, δ ). Cette construction s dpte isément si l on veut obtenir un utomte à pile initilement vide qui reconnît pr étt cceptnt et pile vide (cf. 2.2. 4. et 2.1. ii) ). 3.2 Construction simplifiée (grmmire sous forme de Greibch). Rppelons que toute grmmire lgébrique peut être trnsformée, pr un lgorithme, en une grmmire équivlente qui est sous l forme normle de Greibch (voir [1] ). Nous considérons mintennt que l grmmire G = (Σ, V, S, P ) est déjà sous forme normle de Greibch. De ce fit, toutes les règles de production sont de l'un des types suivnts : S si l chîne vide est dns le lngge engendré L(G). A M où A V, et M (V {S})* On remrquer, en prticulier, que l xiome S est non récursif. M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 14

Dns cette sitution où les règles (à prt l règle vide S ) sont formées d un symbole terminl suivi d une chîne de vribles, l construction précédente peut être encore simplifiée : il suffit de prendre les seules vribles comme symboles de pile, soit Γ = V, de mettre d emblée en étiquette le symbole terminl qui figure en préfixe d une règle, et d empiler l chîne de vribles. Pour une règle A A 1 A 2 A n : trnsition Le symbole A est dépilé, l chîne A 1 A 2 A n est empilée. On retrouve A 1 en hut de l pile, et c est ussi l vrible prête à être réécrite à l prochine dérivtion à guche. Si l règle vide S est dns P, l trnsition correspondnte dépile simplement le symbole initil de pile S. L chîne vide est insi cceptée. L utomte à pile obtenu est de l forme A = ( Σ, {s 0 }, s o, V, S, δ ). Une suite de dérivtions à guche S => w L(G) correspond à un cheminement dns l utomte à pile ; les préfixes terminux obtenus correspondent à l suite des étiquettes lues, l pile v contenir les chînes de vribles concténées à ces préfixes terminux, l vrible qui ser réécrite à l étpe suivnte figurnt en hut de l pile. En prticulier, l proposition suivnte est étblie. Proposition. Soit G une grmmire lgébrique. On peut construire un utomte à pile reconnissnt pr pile vide le lngge L(G), dont toutes les trnsitions ont une étiquette non vide, à prt une trnsition servnt exclusivement à l reconnissnce de l chîne vide dns le cs où celle-ci est dns L(G). En testnt une chîne vec un tel utomte à pile «de type Greibch», l longueur des cheminements à explorer est limitée à l longueur de l chîne, puisque les étiquettes des trnsitions sont non vides. 3.3 Exemple. Reprenons notre lngge L = { n b n : n 0 }. Il est engendré pr l grmmire lgébrique G 1 : S Sb. L première construction donne lieu ux qutre trnsitions suivntes, vec l ensemble des symboles de pile {S,, b } : G 1 : S Sb [s 0, S] [s 0, Sb ] [s 0, S] [s 0, ] [s 0, ] [s 0, ] [s 0, b] b [s 0, ] L grmmire G 2 suivnte est équivlente à G 1. Elle n est ps de Greibch du fit que son xiome est encore récursif, nénmoins nous pouvons prendre comme symboles de pile les seules vribles S, B : G 2 : S SB B b [s 0, S] [s 0, S] [s 0, B] [s 0, A] b [s 0, SB ] [s 0, ] [s 0, ] [s 0, A 1 A 2 A n ] M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 15

En trduisnt pr un cheminement dns l utomte à pile l suite de dérivtions à guche S => SB => SBB => BB => bb => bb le contenu de l pile ser, successivement : S S B S B B b b B B B (vide) L trnsformtion en une grmmire équivlente sous forme normle de Greibch donne G 3 : S TB B T TB B B b à lquelle est ssocié un utomte à un étt, symboles de pile {S, T, B }, pile initilisée pr S, et six trnsitions fciles à expliciter. Comme l xiome S est non récursif dns l grmmire G 3, le symbole S ne figure en hut de pile que dns l configurtion initile. 3.4 Grmmire lgébrique ssociée à un utomte à pile. Etnt donné un lngge reconnu pr un utomte à pile (à trnsitions générlisées, cf. 1.3.), notre objectif est mintennt de construire une grmmire lgébrique produisnt ce lngge. Les suites de dérivtions à guche à prtir de l xiome doivent être soumises ux mêmes contrintes que les cheminements prtir de l étt initil dns l utomte à pile. Pour l construction d une grmmire régulière ssociée à un utomte (voir [1]), le prmètre d un cheminement est l étt cournt, et c est pourquoi les étts peuvent être pris comme vribles de l grmmire. Dns un utomte à pile, un cheminement dépend de l étt cournt, mis ussi du symbole en hut de l pile. Les vribles que nous devrons introduire uront donc en prmètres les étts et les symboles de pile. Le hut de pile, prêt à être dépilé pr une trnsition, figurer insi dns l première vrible, prête à être réécrite lors d une dérivtion à guche. Et le contenu de l pile se retrouver trnscrit dns une chîne de vribles. En trnsformnt, si nécessire, l utomte à pile donné (cf. 1.3., 1.4. et 2.3), l construction de l grmmire peut se fire à prtir d un utomte A = (Σ, E, s o, Γ,, δ ) qui est du type obtenu vec l Proposition 2.3. s 0 f est en fond de pile Le point importnt est que l reconnissnce se fit pr pile vide, et que toutes les trnsitions commencent pr dépiler un symbole. Nous exploiterons les propriétés supplémentires qui contribueront à nous fire une imge intuitive de l construction. Il y un unique étt où l pile peut être vidée : pour ccepter une chîne, il fut rriver en f. Pr illeurs, l forme rudimentire des trnsitions servir uniquement à lléger l écriture des règles de grmmire et des dérivtions. Pssons à l construction de l grmmire ssociée à A. M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 16

1. Les vribles de l grmmire. LesMthémtiques.net Les vribles de l grmmire sont les triplets (i, P, k) où i et k sont des étts, et P est un symbole de pile. L vrible S = (s o,, f) joue le rôle d xiome. Pour une vrible (i, P, k), les prmètres i, P trduisent nturellement l étt cournt et le symbole en hut de l pile. Mis quelle peut être l significtion de k? On peut interpréter l étt k comme étnt un objectif «lointin», un étt où est plntée une blise à tteindre ultérieurement. A l étt initil (étt s o vec dns l pile), l objectif est d tteindre l étt f. C est ce que dit l xiome (s o,, f). Remrque. Avec cette interpréttion, on voit d ores et déjà que certines vribles seront inutiles dns l grmmire : les vribles (f, P, k) prce qu en f l pile est vide (le symbole P ne peut ps être dépilé) ; les vribles (s o, P, k) utres que (s o,, f) et les vribles (i, P, s o ) prce que l étt initil s o est non récursif. 2. Description intuitive de l grmmire. Commençons pr donner une idée intuitive de l grmmire, en déqution vec celle que nous venons d dopter pour les vribles. L réécriture de l vrible (i, P, k) pr une règle de grmmire pour effet : - de psser de [i, P] à un étt voisin j pr une trnsition qui commence pr dépiler P, et/ou - de plcer une nouvelle blise, c est-à-dire un objectif intermédiire, en un étt k où il fudr psser vnt de viser k. Une suite de dérivtions à guche correspond, dns l utomte à pile, à un cheminement ccompgné de l mintennce d une liste de blises où l on devr psser ultérieurement (c est une pile, en fit, puisque l dernière blise plcée est l première à être visée). - L blise k visée pr (i, P, k ) peut se trouver en un étt voisin, utrement dit être tteinte pr une trnsition issue de [i, P] ; dns ce cs (où j = k), ce premier objectif étnt tteint, il est supprimé et on vise l blise suivnte de l liste. Pour trduire le fit que l objectif d un cheminement est d rriver à l étt finl, rien de plus simple : plcer dès le début une blise en f. Mis comment s ssurer que tous les cheminements issus de [s o, ] vont se trduire pr des suites de dérivtions? En fit, on s est rrngé pour que les contrintes imposées n en soient ps! Le nombre de blises ser constmment égl à l huteur de l pile mis cette huteur est de toute fçon inférieure ou égle u nombre de trnsitions qu il fut encore emprunter pour pouvoir vider l pile. Les blises imposent des pssges obligés mis il y ur ssez de vribles et de règles de grmmire pour pouvoir plcer rbitrirement les nouvelles blises, et donc tous les cheminements possibles pourront être explorés vi l grmmire. 3. Les règles de grmmire. On peut supposer que les trnsitions de A = (Σ, E, s o, Γ,, δ ) sont de l un des trois types décrits dns l première colonne du tbleu suivnt, quitte à modifier prélblement l utomte à pile (cf. Chp.2, 2.3, Proposition). Une fmille de règles de grmmire est ssociée à chcun de ces types, pour les vribles introduites en 1. M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 17

Type de trnsition Trnsition ne modifint ps l pile [i, P] [j, P] P Γ, Σ U{} Empilement strict d un symbole (sur pile non vide) [i, P] [j, QP] P, Q Γ, Q Dépilement strict [i, P] [j, ] P Γ Règles de grmmire correspondntes pour tout k : l règle (i, P, k) ( j, P, k) L blise visée reste l même. pour tout k : les règles (i, P, k) ( j, Q, k )(k, P, k) pour tout k Une nouvelle blise est plcée en k et est visée vnt k. l règle (i, P, j ) L blise qui étit visée en j est tteinte et supprimée. Remrquons que l xiome S = (s o,, f) est non récursif, du fit l étt initil s o est non récursif dns l utomte (dns le tbleu ci-dessus, j s o ). Et, comme prévu, les vribles (f, P, k) s vèrent inutiles puisqu ucune trnsition ne prt de f. On voit isément (pr récurrence sur n ) qu une chîne non terminle w qui dérive de l xiome pr n dérivtions à guche est de l forme suivnte : S ==> w = u (i, P m, k m-1 ) (k m-1, P m-1, k m-2 ) (k 2, P 2, k 1 ) (k 1,, f ) où le préfixe terminl u Σ* est suivi d une chîne de vribles. L blise d une vrible est l étt cournt pour l vrible suivnte. L longueur w = u +m est mjorée pr le nombre n de réécritures fites. 4. Toute chîne terminle produite pr l grmmire est reconnue pr A. A chque règle de grmmire correspond une trnsition bien déterminée. Pr récurrence sur n, on s ssure qu à chque suite de n dérivtions à guche S ==> w = u (i, P m, k m-1 ) (k m-1, P m-1, k m-2 ) (k 2, P 2, k 1 ) (k 1,, f ) correspond, dns A, un cheminement pr n trnsitions, llnt de l configurtion initile (étt s o, contenu de pile ) jusqu à l étt i vec le contenu de pile P m P m-1 P 2 et l chîne des étiquettes u. L huteur m de l pile est évidemment égle u nombre de blises plcées k m-1, k m-2,, f. Considérons une chîne complètement terminle u produite pr l grmmire. Elle ne peut être obtenue que pr une règle vide ppliquée à une chîne où ne figure plus qu une seule vrible : S ==> ==> u (i,, f ) ==> u Cette règle vide (i,, f ) correspond à l trnsition de dépilement strict de. Le cheminement jusqu à i dont l existence est déjà grntie peut être poursuivi jusqu à f vec cette trnsition qui pour effet de vider l pile. Autrement dit, toute chîne terminle u produite pr l grmmire est reconnue pr A. 5. Toute chîne reconnue pr A est produite pr l grmmire. Ce point est un peu plus délict que le précédent prce que chque fois qu une trnsition d empilement strict est empruntée lors d un cheminement, il fut «tâtonner» prmi toutes M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 18

les règles de grmmire qui peuvent être ppliquées (prmètre k, dns le tbleu). Mis, justement, il y suffismment de vribles et de règles pour pouvoir plcer rbitrirement ces nouvelles blises. Lemme. Etnt donné un cheminement prtnt de s o (pile ) et n rrivnt ps à f, on considère son étt d rrivée i, vec l chîne des étiquettes u et le contenu obtenu dns l pile P m P m-1 P 2. L huteur de l pile est m 1. Quelle que soit l liste de m-1 étts k m-1 k m-2 k 1, il existe une suite de dérivtions à guche S ==> u (i, P m, k m-1 ) (k m-1, P m-1, k m-2 ) (k 2, P 2, k 1 ) (k 1,, f ) Appliction du lemme. Considérons une chîne u cceptée, vi un cheminement depuis l configurtion initile (s o,, u) jusqu à l configurtion (f,, ). L dernière trnsition empruntée vide l pile en dépilnt. Il s git donc d une trnsition du type ([i, ],, [f, ]), et l règle (i,, f) lui est ssociée. Au cheminement jusqu à i correspond, d près le lemme, une suite de dérivtions à guche S ==> u (i,, f ). Il reste à ppliquer l règle vide (i,, f) pour obtenir l dérivtion S ==> u. Preuve du lemme. Pr récurrence sur le nombre de trnsitions empruntées. i) Cheminement pr une seule trnsition. Allnt de s o à l étt i, cette trnsition est du type ([s o, ],, [i, ]) et lors l règle S ( i,, f ) fournit l dérivtion voulue, ou bien du type ([s o, ],, [i, Q ]) et lors, quel que soit k 1, l règle S ( i, Q, k 1 )(k 1,, f ) fournit l dérivtion voulue. ii) Considérons un cheminement pr n trnsitions, prtnt de s o (pile ) et rrivnt à l étt i vec le contenu de pile P m P m-1 P 2 et l chîne d étiquettes u. On le prolonge pr une (n+1) ème trnsition qui mène de i à l étt j, d étiquette (éventuellement vide). - Si cette dernière trnsition empile strictement un symbole, disons P m+1, il s git de ([i, P m ],, [j, P m+1 P m ]). On se donne m blises k m k m-1 k 1. Avec les m-1 dernières de ces blises, pr hypothèse de récurrence, on une suite de dérivtions à guche pour le cheminement jusqu à i : S ==> u (i, P m, k m-1 ) (k m-1, P m-1, k m-2 ) (k 2, P 2, k 1 ) (k 1,, f ) L dernière trnsition ssure l existence de l règle (i, P m, k m-1 ) (j, P m+1, k m ) (k m, P m, k m-1 ) qu il reste encore à ppliquer pour obtenir l dérivtion cherchée S ==> u (j, P m+1, k m ) (k m, P m, k m-1 ) (k 2, P 2, k 1 ) (k 1,, f ) - Si l trnsition de i à j lisse l pile inchngée, il s git de ([i, P m ],, [j, P m ]). Des blises k m-1 k m-2 k 1 étnt données, on une suite de dérivtions à guche S ==> u (i, P m, k m-1 ) (k m-1, P m-1, k m-2 ) (k 2, P 2, k 1 ) (k 1,, f ) L dernière trnsition ssure l existence de l règle (i, P m, k m-1 ) (j, P m, k m-1 ) qu il reste à ppliquer pour obtenir l suite de dérivtions cherchée S ==> u (j, P m, k m-1 ) (k m-1, P m-1, k m-2 ) (k 2, P 2, k 1 ) (k 1,, f ) - Si l trnsition de i à j dépile strictement le symbole P m, il s git de l trnsition ([i, P m ],, [j, ]). On se donne m-2 blises k m-2 k m-3 k 1. Avec ces blises plus une blise supplémentire en j, on une suite de dérivtions à guche S ==> u (i, P m, j) (j, P m-1, k m-2 ) (k 2, P 2, k 1 ) (k 1,, f ) L dernière trnsition ssure l existence de l règle (i, P m, j), qu il reste à ppliquer pour obtenir l dérivtion cherchée (et finir l preuve pr récurrence). M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 19

Chp. 4 Quelques opértions sur les lngges lgébriques Il rrive fréquemment qu un lngge à étudier puisse s exprimer à l ide d opértions simples ppliquées à des lngges lgébriques connus. 4.1 Opértions régulières sur les lngges lgébriques. Proposition 4.1. Sur un lphbet Σ donné, les lngges lgébriques sont fermés pour les opértions suivntes sur les lngges : - réunion - concténtion - étoile de Kleene Preuve. Considérons deux grmmires lgébriques G 1 = (Σ, V 1, S 1, P 1 ), G 2 = (Σ, V 2, S 2, P 2 ) et les lngges L 1, L 2 qu elles engendrent. i) On obtient une grmmire lgébrique qui engendre l réunion L 1 U L 2 en réunissnt tous les ingrédients et en joutnt encore une vrible supplémentire S 0 (qui ser l xiome) et qui se réécrit S 0 S 1 S 2. Il fut juste veiller à distinguer les vribles des deux grmmires (sinon, renommer certines vribles) : l réunion V 1 U V 2 doit être une réunion disjointe. Un utomte à pile reconnissnt L 1 U L 2 s obtient en procédnt de mnière nlogue à prtir d utomtes à pile respectifs. Considérons qu ils sont à pile initilement vide, reconnissnce pr étt cceptnt et pile vide. Il suffit lors de les réunir de fçon disjointe, puis d jouter un nouvel étt qui servir d étt initil. Noter qu une (unique) pile suffit. ( ; ) S 1 A 1 S 0 ( ; ) S 2 A 2 ii) Une grmmire qui engendre le lngge concténé L 1.L 2 se construit tout ussi fcilement : réunir les deux grmmires, puis jouter une nouvelle vrible-xiome S 0 vec l règle de réécriture S 0 S 1 S 2. Un utomte à (une seule) pile s obtient en brnchnt les étts cceptnts (dorénvnt bnlisés) de A 1 sur l étt initil (bnlisé) de A 2. iii) Pour écrire une grmmire lgébrique produisnt le lngge L 1 *, il fut être ttentif à l question de l chîne vide qui, si elle n est ps dns L 1, doit nénmoins être dns L 1 *. L éventuelle récursivité de l xiome S 1 doit ussi être prise en compte. Une réponse générle consiste à jouter un nouvel xiome S et les règles S 0 S 1 S 0. Un utomte à pile s obtient selon le même principe M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 20

S 0 ( ; ) S 1 A 1 ( ; ) Remrque. Si l xiome de l grmmire donnée est non récursif, on pourrit boucler directement sur lui. Mis seulement dns ce cs, comme le montre l exemple suivnt. Notre lngge L = { n b n : n 0 } est engendré pr l grmmire G : S Sb, dns lquelle l xiome est récursif. En bouclnt directement sur S, on obtient l grmmire G : S SS Sb. Il est fcile de voir que le lngge engendré pr cette grmmire G n est ps L*. En fit, L(G ) est le «lngge des prenthèses», si l on considère que le symbole (resp. b ) représente l prenthèse ouvrnte (resp. fermnte). Pr exemple, les prenthèses dns l expression (((x+x)+x)+(x+x)) correspondent u mot bbbb, qui est dns L(G ) mis non dns L*. 4.2 Intersections et compléments de lngges. Une instnt de réflexion suffit pour s percevoir que construire une grmmire produisnt l intersection de deux lngges lgébriques s vère être un défi qui n rien de commun vec ce que nous vons fit pour une réunion. En considérnt des utomtes à pile, le problème n est ps plus simple : pour tester une chîne, on en est réduit à devoir cheminer «en prllèle» dns les deux utomtes à pile et donc à utiliser les deux piles à l fois. On trville, en somme, vec un utomte «à deux piles». Proposition. Sur un lphbet Σ donné, i) l intersection d un lngge lgébrique et d un lngge régulier est un lngge lgébrique. ii) les lngges lgébriques ne sont ps fermés pour l opértion d intersection : on peut trouver deux lngges lgébriques dont l intersection n est ps un lngge lgébrique. iii) les lngges lgébriques ne sont ps fermés pour l complémenttion : on peut trouver un lngges lgébrique dont le complémentire n est ps un lngge lgébrique. Preuve. i) Un lngge régulier est reconnu pr un utomte, que l on peut même supposer déterministe et complet (cf. [1]). Un cheminement dns un utomte à pile s ccompgne d un cheminement prllèle dns cet utomte : une seule pile est insi utilisée. Un tel cheminement simultné dns deux dispositifs peut se formliser de l mnière suivnte. Soit A 1 = (Σ, E 1, s 1, F 1, Γ, δ 1 ) un utomte à pile, et A 2 = (Σ, E 2, s 2, F 2, δ 2 ) un utomte. Les lngges reconnus sont notés respectivement L 1 et L 2 (et L 2 est régulier). Cheminer «en même temps» dns A 1 et A 2, c est cheminer dns un utomte à pile dont l ensemble des étts est E 1 x E 2. L étt initil est bien sûr (s 1, s 2 ). Les symboles de pile et le mode de reconnissnce sont ceux de A 1. On ssocie les trnsitions respectives ynt même étiquette : pour Σ, on dmet l trnsition ([(i 1, i 2 ), P],, [(j 1, j 2 ), M]) si M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 21

et seulement si ([i 1, P],, [j 1, M]) est dns δ 1 et ( i 2,, j 2 ) dns δ 2. Avec une trnsition d étiquette vide dns A 1, il fut un «étt sttionnire» dns A 2 : l trnsition ([(i 1, i 2 ), P],, [(j 1, i 2 ), M]) est dmise si et seulement si ([i 1, P],, [j 1, M]) est dns δ 1. On tout fit pour que le lngge reconnu pr cet utomte à pile soit L 1 L 2. Noter qu il n est ps nécessire que l utomte A 2 soit déterministe ou complet. ii) Sur Σ = {, b, c}, voici un exemple de deux lngges lgébriques (ce sont des concténtions de lngges lgébriques connus) L 1 ={ n b n : n 0 }.{c}* et L 2 = {}*.{b n c n : n 0 } dont l intersection { n b n c n : n 0 } n est ps un lngge lgébrique, ce qui ser prouvé u chpitre suivnt, vec le Lemme de l Etoile. iii) On vu que les lngges lgébriques sont fermés pour l réunion. S ils étient fermés pour l complémenttion, ils devrient l être ussi pour l intersection, puisque pour tous lngges L 1 et L 2 on : L 1 L 2 = L 1 U L 2 (loi de de Morgn) Pour être plus concret, donnons un exemple explicite. Nous vons déjà nnoncé en ii) que le lngge L = { n b n c n : n 0 } n est ps lgébrique. Mis son complémentire { i b j c k : i, j, k 0, i j ou j k} est lgébrique, puisqu il est l réunion des qutre lngges lgébriques suivnts (chcun est lgébrique comme concténtion de lngges lgébriques connus) : L b = *{ n b n : n 0 }c* L bc = *bb*{b n c n : n 0 } L b = { n b n : n 0 }bb*c* L cb = *{b n c n : n 0 }cc* (on llégé l écriture en notnt * u lieu de {}* etc.. ). M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 22

Chp. 5 Le «Lemme de l Etoile» pour les lngges lgébriques Le problème : un lngge L étnt donné, comment svoir s il peut être engendré pr une grmmire lgébrique, et donc s il est reconnu pr un utomte à pile? Le lemme de l Etoile (ppelé ussi «lemme du gonflement» ou «lemme de pompge») donne une condition que les chînes de L doivent nécessirement stisfire s il y une telle grmmire. Cette condition nécessire ser exploitée pour prouver que certins lngges ne peuvent ps être engendrés pr une grmmire lgébrique. Dns [1], un lemme de l Etoile pour les lngges réguliers été étbli à prtir de l forme prticulière qu ont les rbres de dérivtion dns le cs d une grmmire régulière. Dns le cdre plus générl des grmmires lgébriques, l idée est exctement l même : si un rbre de dérivtion est plus hut que le nombre de vribles, il y une vrible répétée sur un chemin issu de l rcine S de l rbre, et l portion de brnche située entre ces deux occurrences d une même vrible peut être dupliquée utnt de fois que l on veut. Seule l mise en forme du lemme est un peu plus technique, du fit que les rbres de dérivtion n ont plus de forme prticulière. 5.1 Le Lemme de l Etoile (cs d une grmmire lgébrique). Soit G = (Σ, V, S, P ) une grmmire lgébrique, où V désigne l ensemble des vribles, S V est l xiome, et P est l ensemble des règles de production. Les règles sont de l forme A M où A V et M (Σ U V)*. Dns ce qui suit, nous urons à utiliser deux constntes liées à l grmmire : le nombre V de vribles, et l longueur mximle des règles de production m = mx { M : A M P }. On ssocie à toute suite de dérivtions S ==> w Σ* un rbre de dérivtion. Appelons huteur de l rbre le nombre mximl d rêtes sur les chemins descendnt à prtir de l rcine de l rbre. Si h est l huteur de l rbre, il y u plus m h extrémités de brnches. Les symboles qui figurent ux extrémités des brnches, lus de guche à droite, forment l chîne w. S longueur w est donc certinement inférieure ou égle à m h. Si w est strictement supérieure à l constnte m V, on donc h > V. Mis si h > V, l rbre de dérivtion contient un chemin vec deux nœuds étiquetés d une même vrible. Et ceci quel que soit l rbre de dérivtion pouvnt être ssocié à l chîne w. Sur un chemin de huteur mximle, considérons deux nœuds étiquetés pr une même vrible A (cf. fig. suivnte). On peut en trouver dns les V +1 derniers segments.. L chîne w s écrit lors comme l concténtion w = uxzyv de cinq chînes que l on peut décrire de l mnière suivnte : vnt l première occurrence de A, les extrémités des brnches qui prtent vers l guche du chemin forment l chîne u ; à prtir du premier nœud A et jusqu à l deuxième occurrence de A, les brnches à guche du chemin forment l chîne x ; vers le bs à prtir du deuxième nœud A, on obtient l chîne z ; à droite du chemin, les chînes y et v sont les nlogues de x et u respectivement Ces chînes correspondent à une suite de dérivtions, à lquelle est ssociée le même rbre de dérivtion (mis ce ne sont ps des dérivtions à guche) : S ==> uav ==> uxayv ==> uxzyv = w M.P. Muller - AUTOMATES A PILE ET GRAMMAIRES ALGEBRIQUES pge 23