• Aucun résultat trouvé

Automates d'arbres à jetons

N/A
N/A
Protected

Academic year: 2021

Partager "Automates d'arbres à jetons"

Copied!
181
0
0

Texte intégral

(1)

HAL Id: tel-00255024

https://tel.archives-ouvertes.fr/tel-00255024

Submitted on 13 Feb 2008

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not. The documents may come from

teaching and research institutions in France or

abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est

destinée au dépôt et à la diffusion de documents

scientifiques de niveau recherche, publiés ou non,

émanant des établissements d’enseignement et de

recherche français ou étrangers, des laboratoires

publics ou privés.

Automates d’arbres à jetons

Mathias Samuelides

To cite this version:

Mathias Samuelides. Automates d’arbres à jetons. Autre [cs.OH]. Université Paris-Diderot - Paris

VII, 2007. Français. �tel-00255024�

(2)

UFR d'informatique

THÈSE

pour l'obtention du titre de

Do teur de l'Université Paris 7 Spé ialité Informatique

présentée par

Mathias Samuelides

sur lesujet

Automates d'arbres à jetons

soutenue publiquement le 17dé embre 2007 devant lejury suivant :

Joa himNiehren Rapporteur HelmutSeidl Rapporteur Olivier Carton Examinateur Stéphane Demri Examinateur Jean-Eri Pin Examinateur An a Mus holl Dire tri e de thèse Lu Segoufin Dire teur de thèse

(3)
(4)

Remer iements

Je tiens tout d'abord à remer ier très sin èrement An a Mus holl de m'avoir fait dé ouvrirlesma hinesde Turing etlathéoriede la omplexitéen ours de maîtrise puis d'avoir a epté d'être ma dire tri e de thèse et de m'avoir ainsi a ordé sa onan e tout en me laissant beau oup d'autonomie. Elle a xé le adre de ette thèse et es orientations générales. An a m'a également présenté Lu vers la n de mon DEA etje lui en suis également très re onnaissant.

Lu a su parfaitement o-en adrer mes travaux, il a trouvé les formules exa tes pourmerelan erlorsquejedésespéraisdetrouverdes résultats,ses onseilspré ieux m'ont énormément appris sur le travail de her heur. Lu m'a réellement impres-sionné par sa qualité d'é oute et de ompréhension ainsi que par sa sympathie et son humour qui font de lui un être remarquable. Je tiens don naturellement à lui exprimer maprofonde gratitude et je suis ons ient de l'in royable han e que j'ai eu d'avoirtravailléave lui.

Je remer ie haleureusement tous lesmembres du jury :

Mer i don à Helmut Seidl d'avoir a epté de lire et de rapporter ette thèse rédigéeen français et à Joa himNiehren pour l'intérêt qu'il a porté à mes travaux malgré l'absen e de résultats XML et pour ontribuer à prolonger mes re her hes en meproposantdes thématiques nouvelles etintéressantes.

Mer i également à Jean-Eri Pin, à Olivier Carton et à Stéphane Demri de m'avoirfait l'honneur de parti iperà e jury.

Jetiensensuiteàexprimermare onnaissan e àOlivierSerre,mon angegardien de Chevaleret, pour sa gentillesse, sa bonne humeur, sa bienveillan e à mon égard etses nombreux onseils.

Jeremer ie Mikolaj, akathe Bo2s of C.S., quia lebon goûtde ne pas aimer les trop longues formules mathématiques et ave qui j'ai eu l'honneur de travailler et

(5)

Jeremer ieThomaspouravoirrelu ertainspassagesdemathèseetpourm'avoir onvain ude prendre un déli ieuxdouble whopper àBudapest.

Sans les résultats de Mikolaj et de Thomas sur les automates heminants, le hapitre6 de e manus ritn'aurait pas vu lejour.

Jeremer ieJoostEngelfrietpourl'intérêtetletempsqu'ilaportéàmestravaux. Mer iégalementàMaartenMarxpoursona ueiltrès haleureuxàAmsterdam. J'aiégalement une pensée pour LaurentVanBegin etJean-FrançoisRaskinqui m'ontpermisdedé ouvrirlare her he etdepasserunséjourinoubliableenBelgique avant de ommen er ette thèse.

Jeremer ieaussiChristofLöding:lesquelquesmomentspasséesàtravaillerave luidevant lama hine à afé de Chevaleret m'ont été très pré ieux.

Jeremer ieégalementThomasS hwenti kave quij'aieula han edetravailler. Mer i à tous les membres du LIAFA qui permettent à e laboratoire d'être un lieude travail parti ulièrement agréable.

Je remer ie en parti ulier Marie pour sa gentillesse, son ex ellente humeur et aussi pour avoir relu un hapitre omplet(peut-être le seul sans faute de typo!).

Je pense également à toutes les autres personnes ave lesquelles j'ai partagé le bureau6A09 : Cesara, Hoang Anh, Laura, Selma, Blaise, Hugo(et son ftp), Berke (et savitamine C), Philippeet Mathilde.

Jeremer ieNoëllepoursabienveillan eetsone a ité. Jen'oubliepas Laifaet Houyquionttoujoursétélàpourréglermesdi ultésave lematérielinformatique. Mer iaussiàClaire,Florian(sorstontigroudetapo heetpasseleàlama hine lepauvre!) MohamedFaouzy, Peter, Pierre, Thierry età tout eux quej'oublie.

Mer i égalementà toute l'équipeGEMO età toute l'équipeMOSTRARE. Mer i surtout à ma famille : mon père qui a réussi à s'intéresser, à lire et à omprendrelespremiers hapitresde ette thèse,mer i aussi àmamère, masoeur, mon frère et Ni olas qui ont toujours été là pour me soutenir et sur qui je pourrai toujours ompter.

Une pensée pour les habitants de l'ex-bâtiment F de l'ENS Ca han qui m'ont rappelé durant plus de trois ans qu'ily ades problèmes plus di iles que eux qui on ernent lesautomates d'arbres.

Ennjegardeleplusbeaupour lan, (ouplutotlaplusbellesisi)etjeremer ie don Hortense pour m'avoir supporté pendant plus de trois ans et trois mois en espérant que ela ontinue.

(6)

1 Motivations et état de l'art 9

1.1 Motivations . . . 9

1.1.1 XML et lesarbres . . . 9

1.1.2 Les DTD et lesautomates . . . 11

1.1.3 XSLT, type he king ettransdu teurs à jetons . . . 13

1.1.4 Requêtes et XPath . . . 14

1.2 Etat de l'art . . . 15

1.3 Organisation de la thèse etprin ipales ontributions . . . 19

2 Des automates sur les mots aux automates d'arbres à jetons 23 2.1 Les arbres,les mots etla logique MSO . . . 24

2.1.1 Les mots etles arbres :des stru tures de données . . . 24

2.1.2 Des modèlespour lesmots et lesarbres . . . 27

2.1.3 Logique du premierordre . . . 28

2.1.4 Logique

MSO

. . . 30

2.2 Automates sur lesmots . . . 32

2.2.1 Langages rationnels de mots . . . 32

2.2.2 Automates unidire tionnels . . . 33

2.2.3 Automates bidire tionnels . . . 36

2.3 Automates sur lesarbres . . . 38

2.3.1 Arbres nis de rang borné . . . 39

2.3.2 Langages d'arbres réguliers etautomates d'arbres bottom-up . 40 2.3.3 Automates d'arbres heminants . . . 43

2.4 Automates àjetons . . . 46

2.4.1 Automates d'arbres à jetons . . . 46

2.4.2 Automates àjetons sur lesmots . . . 51

2.5 Automates etlogique

MSO

. . . 52

(7)

2.5.2 Automates àjetons etlogique

MSO

. . . 56

3 Complémenter un automate d'arbres à jetons déterministe 61 3.1 Un résultatnon-trivial . . . 62

3.1.1 Complémenter un automate sur lesmots . . . 62

3.1.2 La di ulté pour omplémenter un

DTWA

. . . 63

3.2 Constru tion du omplémentd'un

DTWA

. . . 68

3.2.1 Te hnique de Sipser . . . 68

3.2.2 Le omplément . . . 69

3.2.3 Complexité de la onstru tion . . . 72

3.3 Complémentet automates àjetons déterministes. . . 73

3.3.1 Etendre la onstru tion aux automates à jetons du modèle faible déterministe . . . 73

3.3.2 Une astu e pour omplémenter lemodèle fort déterministe . . 74

4 Cara térisation logique des automates à jetons 79 4.1 Logique du premierordre et lture transitive . . . 80

4.2 Jetons forts et lture transitive . . . 82

4.2.1 De l'automateà laformule . . . 83

4.2.2 De laformuleà l'automate . . . 85

4.2.3 Logiques ave lturetransitive pour les mots . . . 87

5 Equivalen e du modèle faible et du modèle fort 89 5.1 Cas des automates non-déterministesà 1 et2 jetons . . . 90

5.1.1 Cas des automates d'arbres à un jeton . . . 90

5.1.2 Cas des automates d'arbres à deux jetons . . . 93

5.2 Comportementd'un

wPTA

. . . 95

5.2.1 Dénition du omportement d'un

wPTA

. . . 95

5.2.2 Composition des omportements. . . 100

5.3 Passage du modèle fort aumodèle faibledans le as non-déterministe 102 5.3.1 Deviner un omportement . . . 103

5.3.2 Aaiblir un jeton . . . 104

5.3.3 Complexité du passage du modèle fort aumodèle faible . . . . 106

5.4 Passage du modèle fort aumodèle faibledans le as déterministe . . . 106

5.4.1 Cal uler etnon deviner . . . 107

5.4.2 Gérer les exé utions innies dans le al ul du omportement . 108 5.4.3 Equivalen e des deux modèles déterministeset onséquen e . . 109

6 Hiérar hie des automates d'arbres à jetons 111 6.1 Deux famillesde langagesd'arbres. . . 112

6.1.1 Arbres etlangagesà niveaux . . . 113

6.1.2 La famillede langages

L

n

. . . 115

6.1.3 La famillede langages

M

n

. . . 119

6.2 Nombre de jetons, déterminisme etpouvoird'expression . . . 122

6.2.1 Automates heminantsave ora le. . . 123

6.2.2

PTA

k

( PTA

k+1

. . . 128

(8)

6.3.1 A propos de l'union des

L

n

. . . 133

6.3.2 Le langagerégulier

L

r

. . . 133

6.3.3 Une onséquen e logique sur les arbres . . . 134

7 Complexité du vide et de l'in lusion pour les automates à jetons 137 7.1 Complexité et ma hines de Turing . . . 138

7.1.1 Ma hines de Turing et problèmes de dé ision . . . 138

7.1.2 Le temps etl'espa e . . . 140

7.1.3 Ma hines de Turing alternantes . . . 141

7.2 Les problèmes du vide etde l'in lusionpour les automates d'arbres . 142 7.2.1 Complexitéduvideetl'in lusionpourlesautomates heminants143 7.2.2 Complexitéduvideetdel'in lusionpourlesautomatesd'arbres à jetons . . . 144

7.3 Borne supérieure . . . 145

7.3.1 De nouveaux modèles d'automates d'arbres. . . 146

7.3.2 Simuler de manièreexa te un automate fort à jetons ave un automate d'arbres bottom-up . . . 149

7.3.3 Borne supérieurepour lesautomates à jetons sur les mots . . 155

7.4 Borne inférieure . . . 156

7.4.1 Codage d'une ongurationpar un

k

-nombre . . . 157

7.4.2 Comparer deux

k

-nombres ave des jetons . . . 158

7.4.3 Borne inférieurepour lesautomates à jetons . . . 160

7.4.4 Borne inférieurepour lesautomates à jetons sur lesmots . . . 161

8 Perspe tives 163 8.1 Bilan . . . 163

8.2 Des arbres binairesaux arbres de rang non-borné . . . 164

8.3 Problèmes ouverts. . . 167

8.3.1 Con ision du modèle fort? . . . 167

8.3.2 Complémentationd'un automate à jetons? . . . 169 8.3.3 Déterminiser un automate à jetons en rajoutantdes jetons? . 170

Table des gures 174

(9)
(10)

1

Motivations et état de l'art

1.1 Motivations

Il était une fois, il y a bien longtemps, un petit Pou et perdu dans une forêt, il aimaitsepromenerdansdesarbresave unepilede aillouxqu'ilpouvait alerentre deux bran hes...Les travaux présentés dans ette thèse n'ont pas pour prin ipale motivation l'étudedes propriétés du petit Pou et.

1.1.1 XML et les arbres

Les premiers résultats notoires en bases de données datent des années 70 ave les travaux de E.F. Codd. Ses re her hes ont abouti à une ompréhension poussée des bases de données relationnelles. Les bases de données sont modélisées par des stru tures relationnelles du premier ordre. Les requêtes sont alors vues omme des appli ations de l'ensemble des stru tures relationnelles dans lui même. Si ette ap-pro he onvient bien à des données très homogènes, la né essité de manipuler des informationsà la stru ture moins gée a motivé la re her he d'autres formalismes. Ave l'apparition etle développement de XML, la représentation des données sous formedetablelaisselapla eàunereprésentationsousformed'arbres nisordonnés etétiquetés.

XML(ExtensibleMarkupLanguage)estunenormepermettantdestru turerdes do umentstextessousformed'arbresaumoyendebalisesenvuedelessto ker,deles transporteretde lesé hanger[54℄.Celangageest apparu ommeun bon ompromis entre la ri hesse de SGML et la simpli ité de HTML et s'est a tuellement imposé ommeun formatstandard etgénériquepour lesbasesde donnéessemi-stru turées. SGML (Standard Generalized Markup Language) est un langage de des ription à balisesapparudanslesannées80danslequellastru turelogiqued'undo ument,qui

(11)

<prenom>Mathias<\prenom>

<date><jour>29<\jour><mois> 4<\m ois> <ann ee>1 980< \ann ee>< \dat e> <films>

<dvd><titre>Spart a us<\tit re>< anne e>19 60<\ anne e><\ dvd> <dvd><titre>STARWARS<\titre ><\d vd>

<\films> <\personne>

Fig.1.1 Un do ument XML

est identiée par des balises inséréesdans le do ument lui-même,est séparée de sa miseen page,qui dépend du supportde présentation etquiest dénieen dehorsdu do umentdansuneouplusieurs feuillesde style[56℄.L'obje tifd'XMLestde dénir un langage aussi générique que SGML mais beau oup plus simple an de pouvoir servir un plus grand nombre d'utilisateurs et de rempla er le langage HTML pour un grandnombre d'appli ations.Le langageHTML(Hypertext Markup Language) aété onçuen même tempsque http en 1990 par Tim Berners-Leepour a her les données d'un do umentpar l'intermédiaired'un navigateur dont dépend l'a hage [58℄.

XML est une norme du W3C depuisfévrier 1998. Ce langageinformatiquelibre de droits, et indépendant des plates-formes dont le développement a ommen é en 1996 est a tuellement largement utilisé par les industries pour la formulation de do uments d'é hange de données dans des appli ations de ommer e éle tronique oudebibliothèquesen ligne.XMLest unmodèlede représentationdes donnéessous formede textes organisés en arbres aumoyen de balises.Contrairementau langage HTMLqui dénitla signi ationvisuelle de haque balise etde haque attribut,le langageXML utiliselesbalises seulement pour délimiterleséléments de données et laisse l'entière interprétation des données à l'appli ation qui les lit. XML est don un langage de syntaxe mais pas de sémantique.Pour l'a hage des do uments, la normeXML prévoit des feuillesde style qui sont des ensembles de règles spé iant laréalisation on rèted'undo umentXML.Cettete hniqueest dire tementhéritée de SGML. XML répond don à l'attente "writeon e published anywhere".

Regardons maintenant ave la gure 1.1àquoi ressemble un do ument XML. Undo umentXMLestdansunpremiertempsune haînede ara tèreouunmot. Unedes onditionsde bonneformationdesdo umentsXMLestlebonparenthésage de es balises également appelées tags qui permet de voir le do ument omme un arbre.Undo umentXML aainsi une stru tured'arbreetledo umentde l'exemple peut égalementêtre représenté par l'arbre de la gure 1.2.

Les n÷uds de l'arbrereprésentant le do ument XML sont appelés les éléments. Leséléments dénissent la stru ture du do ument etsont dé ritspar leur nom leur tagouvrant

< · · · >

, leurtag fermant

< \ · · · >

leur étiquetteetleurs attributs.Un attributest une propriété asso iée aux éléments. Dans notre exemple, leséléments n'ont pas d'attribut. Nous nous intéressons à la stru ture des do uments XML et nonàleur ontenu,ainsinous ne onsidérons paslesattributsdes do umentsXML. La le ture du mot de la gure mot orrespond à un par ours en profondeur de

(12)

personne

prenom

date

films

4

dvd

dvd

titre annee

mois

1980

jour

29

annee

Mathias

Spartacus 1960

titre

STARWARS

Fig. 1.2 Arbre représentant ledo umentXML de lagure 1.1

gau he à droite de l'arbre de la gure 1.2 qui représente e do ument. Lire un tag ouvrant orrespondàvisiterl'élémentdumêmenometlireletagfermant orrespond àremonter aupère de l'élémentdu mêmenom. Laplupartdes outilstravaillantsur un do ument XML onsidèrent la stru ture d'arbreintrinsèquedu do ument.

Sous et angle, XML est une syntaxe on rète pour un modèle abstrait d'arbre ni.Laspé i ationdulangageXMLnexepasl'ensembledesétiquettesautorisées dans un do ument XML et ne dénit pas de sémantique pour les étiquettes. La seule ondition que doit impérativementvériern'importe queldo ument XML est d'être bien formé, 'est à dire d'avoir une stru ture arbores ente Un usager peut ainsi dénir un type de do ument XML qui orrespond à un langage d'arbres. Les do umentsXMLontune stru tured'arbrenid'ariténon-bornée 'est-à-direquele nombre de ls d'un n÷ud n'est pas borné. Les automates d'arbres étudiésdans les pro hains hapitres de e travailsont des automates sur des arbres binairesnis. Il est ependant possible de oder un arbre d'arité non-borné en un arbre binaire et de nombreux problèmes sur les arbres de rang non-bornés se ramènent ainsi à des problèmesanalogues sur les arbresbinaires.Nousdé rirons un telen odage dans le hapitre8.

Les automates d'arbres nis, outil essentiel de l'informatique sont des modèles utilisés pour le typage de do uments XML. Ils servent également à dénir ou à omparer des langagesde requêtespour do uments XML.

1.1.2 Les DTD et les automates

Dansun usageparti ulier,onpeutvouloirselimiterà ertainesformes de do u-ments. Un usager doit pour ela dénir un type XML, 'est-à-dire une des ription de ontraintes sur lastru turedu do ument. Parexemple,un ensembled'étiquettes autorisées et un ensemble de su esseurs possibles sont xés pour un élément dans

(13)

<!ELEMENT nom (#PCDATA)>

<!ELEMENT date (jour, mois, année)> <!ELEMENT jour (#PCDATA)>

<!ELEMENT date (#PCDATA)> <!ELEMENT année (#PCDATA)> <!ELEMENT films (dvd*)>

<!ELEMENT dvd (titre, année?)> <!ELEMENT titre (#PCDATA)>

Fig.1.3 Une DTD

la stru ture arbores ente. Un type XML donné dénit alors le langage des arbres qui satisfont ses ontraintes et peut don être vu omme une grammaire d'arbres ou omme un automate d'arbres. Le typage des do uments permet d'améliorer le sto kage, de fa iliter les requêtes et la navigation dans les données et de protéger lesdonnées. Les programmes ontdon re ours autypage pour représenter la stru -turede données etl'é hangede données XMLest presque toujoursdans le ontexte d'un type xé. Deux niveaux de orre tion peuvent ainsi être distingués pour les do umentsXML :

 un do ument est bien-formé s'ilobéitaux onditions syntaxiques déniespar laspé i ation de XML qui luipermettent d'êtreinterprété ommeun arbre.  un do ument est valide s'il est onforme aux ontraintes sur la stru ture et le ontenu spé iques à une appli ation, 'est-à-dire s'il est respe te un type donné.

Un do ument valide est toujours bien formé ar le type dé rit des ontraintes sur l'arbreet non sur la représentation textuelle du do umentXML.

LesDTD(do umenttypedenition) onstituentlemoyenleplussimpleetleplus fréquemment utilisé pour valider des é hanges de données. Les DTD s'apparentent aux grammaires utilisées en analyse syntaxique. La gure 1.3 présente un exemple de DTD. UneDTD asso ieà haque élémentune expression régulièresur lestypes. Lesdiérentsindi ateurs d'o urren e utilisés dans ette DTD sont lesymbole"*" quisignie 0 ouplusieurs élémentsetle symbole"?" quisignie 0 ou1 élément.

Letype"#PCDATA"signiequel'élément ontientdesdonnéestextuelles.Les grammairesétendues sans ontexte sont utiliséespour modéliserles DTD [38℄.

Leproblèmede validationpeutalorsêtreformalisédelamanièresuivante:étant donnésun arbre

t

etunlangaged'arbres régulierdéni parun type

τ

,nous voulons dé ider si l'arbre

t

appartient à e langage. Il s'agit en pratique de vérier si un do umentXML est onformeaux ontraintes d'un type donné.

Le do ument de la gure 1.1 est valide relativement autype déni par la DTD de lagure 1.3.

Lavaliditéd'unarbrerelativementàuneDTDpeutêtretestéeparlesautomates d'arbresdéterministestop-down. Cesautomatessontdesma hinesàétatsnis ave un ontrle parallèlequi évaluent un arbre de sara ine vers les feuilles. Le modèle séquentieldesautomatesd'arbres heminantspeutégalementêtreutilisépourle pro-blèmede validation.Un automate heminant est une ma hine àétats nis ave une

(14)

par oursen profondeur de gau he àdroitede l'arbrereprésentant un do umentan devérierpour haque n÷udquelasuite deses ls orrespondbien aux ontraintes imposées par la DTD. Dans le problème de validation en "streaming" d'un do u-ment XML, le do ument XML doit être par ouru en une seule passe (sans revenir enarrière)etave unemémoirexée dépendantdelaDTDmais pasdudo umentà valider.Undo umentXMLestalors onsidéré ommeun motd'unlangageàbalises Lepar ours parunautomateunidire tionneld'undo umentXML onsidéré omme un mot orrespond au par ours en profondeur de l'arbre représentant e do ument par un automate heminant. Il est montré dans [28℄ que lemodèle d'automates sur lesmots appropriépour résoudre leproblème de validationen streaming d'un do u-ment XML est en fait elui des automates à piles ave visibilité(Visibly Pushdown Automata). Dans [33℄, A Neumann et H Seidl ont étudié les automates de forêts à piles (Pushdown Forest Automata) utilisés dans des algorithmes qui testent la validité d'un do ument XML pour une DTD ouplus généralement qui évaluent en ligne des requêtes d'arbres régulières.

1.1.3 XSLT, type he king et transdu teurs à jetons

XSLTest un langagepermettantde transformerun do umentXML en unautre do umentXMLoupour onvertirdesdonnéesXMLendo umentHTML[57℄.Neven etS hwenti k ontmontré dans[34℄qu'unetransformationXSLTest essentiellement un transdu teur heminant à registres, 'est-à-dire une ma hine qui par ourt un arbresur un alphabet inni omme un automate heminant etqui produit un nou-vel arbre en sortie. L'alphabet inni permet de modéliser la présen e des attributs dans un do ument XML. Les transdu teurs d'arbres a jetons ont aussi été dénis omme un modèle abstrait et général de transformation de langages XML. Un tel transdu teur utilise un nombre xé de jetons pouvant être pla és sur les n÷uds de l'arbre.Une dis ipline de pile est imposée auxjetons pour que letype he king soit dé idable : les jetons sont numérotés et doivent être posés dans l'ordre roissant de leur numéro et levés dans l'ordre dé roissant de leur numéro. Dans [31℄, il est montré que les automates d'arbres à jetons ont le pouvoir navigationnel de nom-breux langages de requêtes existant pour XML. L'étude des automates heminants peut aussi permettre de mieux omprendre lepouvoir d'expression de XSLT. Il est armédans[22℄quelestransdu teurs heminantsave desjetons invisiblespeuvent modéliser les mé anismes de ré ursion de XSLT. Pour ette variante de transdu -teur heminant à jetons, un jeton invisible peut être déte té par le transdu teur seulement si 'est ledernier jetondans l'arbre à avoirété posé.

Lesautomatesd'arbressontégalementutiliséspourleproblèmedutype he king qui demande une ompréhension des intera tions entre la logique et les langages d'arbres. Leproblème du type he king onsisteà analyserun programme.Il dière don du problème de validationqui on erne l'analysed'un do ument.Leproblème du type he king est un problème fondamental pour l'é hange de données XML et la onversion des bases de données relationnelles en do uments XML. Ce problème est le suivant : étant donnés une transformation de do uments XML et un type pourl'arbrede sortie,nous voulonsvérierautomatiquementque haque donnée de

(15)

l'entrée a pour image un arbre du type de sortie désiré. Nous onsidérons don

τ

un langage d'arbres régulier donné par un type et

T

une fon tion dénie par un programme d'un ensemble d'entrées

D

vers un ensemble d'arbres et nous voulons dé idersi pour toute entrée

x ∈ D

, ona bien

T (x) ∈ τ

.

Un type he ker est un module qui analyse simultanément le programme et la sortie XML et qui dé ide si tous les do uments produits par le programme sont valides en retournantoui ounon.

L'étude formelle du problème du type he king est omplexe ar les langages de transformationXML et lesnotions de DTD évoluent onstamment.

TMilo,D. Su iuetV.Vianuontmontré que,sionmodéliseune transformation de do uments XML ave un transdu teur à

k

jetons, le problème du type he king est dé idable [31℄.

1.1.4 Requêtes et XPath

Un des prin ipaux sujets de re her he dans la théorie des bases de données est de ara tériser le pouvoir d'expression et la omplexité de al ul des langages de requêtes.L'a èsauxdonnéesd'undo umentestee tuéparl'exé utionderequêtes. Ces requêtes sontformalisées par la logique.

L'intérêt des automates d'arbres à jetons s'est ré emment a ru en raison des liens entre es automates et leslangages de requêtes.

XPath est un langage standard introduit par W3C permettant de séle tionner un ensemble d'éléments dans un do ument XML et dénissant des hemins pour naviguerdans lesdo umentsXML [55℄. Grâ eason pouvoird'expressionetsa syn-taxe ompa te, XPath joueun rle entral dans lesappli ations XML. Il est utilisé dans de nombreuses appli ations. Par exemple,il onstitue le noyau du langage de requêtesdansXQuery[59℄,ilpermetde séle tionnerdes n÷udspourles transforma-tions dans XSLTet il est utilisé pour dénirdes lés dans XML S hema. M. Marx et B. ten Cate ont onsidéré CoreXPath qui onstitue le noyau navigationnel de XPath etl'ont asso ié ave des expressions régulières de hemins qui orrespondent naturellementauxexé utions des automates heminants.Lesexpressions XPath les plus simples ressemblentà des hemins de lo alisationde répertoires.Par exemple, onsidéronsl'expression i-dessous.

/ hild::personne/ hild::fil ms

Son évaluation retourne l'ensemble des éléments atteint par un hemin partant de lara ine imaginairedu do ument désignée par lepremier slash, visitantensuite un élément "personne" puis un élément "lms". Cette requête appliquée à l'exemple de la gure 1.1séle tionne les éléments dvd orrespondant aux lms "Starwars" et "Sparta us".

XPathautorised'autresaxesquelesarêtes.Les heminspeuventêtredénisave unsous-ensembledesexpressions régulières surlesaxesde base suivants :"prévious sibling"et"nextsibling"pournaviguerentre lesn÷udsayantlemêmepère," hild" et "parent" pour naviguer selon les arêtes. Une requête XPath peut également sé-le tionnerun n÷ud en testantl'existen e ou l'absen e de hemins. Considéronspar exemplel'expression i-dessous :

(16)

va séle tionner uniquement les n÷uds "dvd" qui ont un élément "année" pour ls. Dansl'exemple, etterequête séle tionnel'élément"dvd" orrespondant à "Sparta- us".

Core XPath est le orps navigationnelde XPath. Dans [12℄, B. ten Cate dénit Regular XPath omme l'extension de CoreXpath au moyen d'un opérateur de l-ture transitive et d'un prédi at pour l'égalité de hemins. Il prouve en utilisant la ara térisation logique des automates à jetons introduite par Engelfriet et Hooge-boom que les automates d'arbres à jetons permettent d'évaluer les expressions de RegularXPath où toutes leso urren es des ltures transitives sont positives. Un jetonest alors utilisé pour haque quanti ateur et l'automate d'arbres à jetons se dépla e le long des hemins dénis par une telle expression de Regular XPath sur un do ument XML.

On voit ommentdesdéveloppementsappli atifsré entsde thèmesaussi impor-tants que les bases de données ou l'édition de do uments XML font appel aux au-tomatesd'arbres,notammentauxautomatesd'arbres heminantsetauxautomates d'arbres à jetons. L'objet de ette thèse est de ontribuer à l'étude des propriétés de es derniers objets. Lase tion suivanteest onsa rée à une brève revue de l'état de l'art qui permet de mieux situer nos résultats. Ceux- i seront présentés dans le plan de la thèse qui on lut e hapitre d'introdu tion.

1.2 Etat de l'art

Letermedethéoriedes automatesaétéintroduitspar J.vonNeumannen1948. Lesma hinesde Turingdénisen1936 quisontun modèled'ordinateur ontenaient déjala notion d'automatesmême s'il s'agit d'un modèle beau oup plus général. Le premier résultat fondamental de ette théorie est du à Kleene qui montra en 1956 queleslangagesrégulierssurlesmotsquisontdénisparlesexpressions rationnelles sontexa tementleslangagesre onnusparunautomateunidire tionneldéterministe sur lesmots.

Lesmots sont des objetsde base très utilisés en informatique.Un automate sur les mots est un modèle pour représenter de façon on ise un ensemble potentiel-lement inni de mots. Un automate ni unidire tionnel sur les mots peut être vu omme une ma hine de Turing dont le type des transitions autorisées est très res-treint : latête de l'automate ne peut pas é rire sur le ruban,elle part de lagau he dumotetsedépla etoujoursenavançantd'unepositionversladroite.Ellelitainsi lemotde gau he àdroite.Tout ommeune ma hine deTuring,un automate unidi-re tionnel peut a epter ou rejeter un mot pris en entrée et dénit ainsi le langage de l'ensembledes mots a eptés. Comme la tête de le ture d'un automate ne peut pasé rire sur leruban,une ongurationd'un automatesur un mot est donnée par l'étatde ontrleetlapositionduruban.Unautomatedéterministen'apasde hoix àee tuer:étant donnéeune onguration, ilpeutee tuerauplus unetransition. Unautomatedéterministe peut ainsiservir de modèleà unalgorithme puisqu'étant donnéun mot pris en entrée ilexiste un unique al ulde l'automate sur e mot. La notiond'automate non-déterministeaétéintroduitepar J.Myhillen 1957ainsi que

(17)

hoisità haque étapeunetransitionàee tuerparmiunsous-ensembledeses tran-sitionsquidépendde la onguration ourante. Ilest possiblede onstruireàpartir d'un automate non-déterministe un automate déterministe qui re onnaît le même langage. Cette onstru tion s'appelle la déterminisation. Les automates unidire -tionnelsdéterministes et non-déterministes ont don le même pouvoir d'expression mais lemodèle non-déterministe est exponentiellementplus on is.

L'intérêt des automates par rapport aux autres méthodes pour dé rire des en-semblesest qu'ilsrendentee tivesdenombreusesopérationssur esensembles.Par exemple, étant donné deux automates, il est très fa ile de onstruire un automate re onnaissant l'union des langages qu'ils dénissent et un automate re onnaissant leurinterse tion.Onsaitégalement omplémenterunautomatedonné

A

'est-à-dire onstruire un automate qui re onnaît le omplémentdu langagedéni par

A

.

Les automates bidire tionnels sont une extension des automates unidire tion-nels où la tête de le ture peut se dépla er dans les deux dire tions. Ces automates peuvent être vus omme des ma hines de Turing quine peuvent pas é rire sur leur ruban.Contrairement aux automates unidire tionnels,le mot pris en entrée par un automate bidire tionnel n'est pas onsommé lettre par lettre omme des piè es de monnaiedans une ma hine à afémais l'automate se promène sur e mot. Le nou-veau typedetransitions n'augmentepas lepouvoird'expressionbienqu'iloreplus de possibilitéspour l'automate.

Lesautomates à jetons sur lesmots sont des automates bidire tionnelsqui pos-sèdent un nombre xéde jetons pouvantêtre pla és sur les lettres du mot. L'auto-mate peut déte ter quels sont les jetons posés sur la position de sa tête de le ture. Lesjetons serventdon de repèresàl'automate(un peu ommeles aillouxdu petit Pou et).

Le pla ement des jetons obéità une hiérar hiede pile: seul le dernierjetonqui a été posé peut être levé par l'automate. Sans ette restri tion on obtiendrait un modèle d'automatesave plusieurstêtes de le ture dontle pouvoir d'expression est elui des ma hines de Turing déterministes utilisant un espa e logarithmique par rapportàlalongueur du motpris en entrée etquire onnaît ainsides langages non-réguliers[18℄.M.BlumandC. Hewittontprouvédans[5℄queleslangagesre onnus par lesautomates à 1jeton sur les mots sont réguliers.

N.GlobermanetD.Harelontétudiédans[24℄uneversiondesautomatesàjetons ave dis iplinede pilesur les mots ave deux restri tions supplémentaires :

 l'automatene peut pas se dépla er à gau he du dernier jetonqu'il aposé,  l'automatepeutdéte teruniquementlaprésen e dudernierjetonqu'ilaposé. Ils ont montré que les automates àjetons ainsi dénis re onnaissent seulement des langages réguliers et que les automates à

k

jetons sont

k

-exponentiellement plus on isque lesautomates bidire tionnels.

Lalogique monadiquedu se ondordre(

MSO

)est un autre moyen de dé rire les langagesde mots. La logique du premier ordre quantie sur les positions d'un mot etla logique du se ond ordre sur les ensembles de positions.Les formules loses de es logiques permettent de dénirdes langages.

Il est montré, par exemple dans [53℄, que les automates unidire tionnels sur les mots ont le même pouvoir d'expression que la logique monadique au se ond

(18)

logique notamment par Bü hi etRabin. Ils jouent depuisun rle très important en véri ation.

Detrèsnombreusesextensionsdesautomatesnisontétéétudiés:lesautomates alternantsquipeuventee tuerdes al ulsenparallèle,lesautomatesàpilesutilisés en théorie des jeux, les automates sur les mots innis, les automates à ompteurs, lesautomatesàhorloges,lesautomateshybrides,lesréseauxdePetri, lesautomates àregistres pour re onnaître des mots sur un alphabetinni...

Desmodèlesd'automatesre onnaissantdesensemblesd'arbresontégalementété dénis.Lesarbressontdesobjetsfondamentauxen informatique.DonaldKnuth dé- ritlesarbres ommethe most importantnon-linear stru tures thatarise in ompu-ter algorithms.Unmot peut être vu ommeun arbre parti ulierdans lequel haque n÷uda auplus un ls. Un telarbre est ditunaire.Les arbres binairessont un mo-dèled'arbrepourlequel haque n÷ud a0ou2ls. Deux typesde langagesd'arbres sont distingués :les langagesd'arbres de rang borné etles langagesd'arbrede rang non-borné.Lesn÷udsdesarbresd'unlangaged'arbresderangbornéontunnombre de ls borné par une onstante qui dépend du langage alors que dans un langage d'arbres de rang non-borné, haque n÷ud peut avoir un nombre arbitraire de ls. L'étudedes automates sur les arbresde rang borné se réduit au as des automates surlesarbresbinaires.D'autresmodèlesd'arbres ontété onsidérésdansl'étudedes automated'arbres : de nombreuxtravauxontété ee tués sur leslangagesd'arbres innis notamment dans le adre de la théorie des jeux et de la véri ation, sur les langages d'arbres de rang non-borné et sur les langages d'arbres sur un alphabet inni ave les automates heminants à registres Nous onsidérons i i les langages d'arbres binairesnis étiquetéspar un alphabet ni.

Lesautomatesd'arbres bottom-up ontétéintroduitsparDoner [15℄ etThat her et Wright [50℄ an de prouver la dé idabilité de la théorie du se ond ordre ave multiples su esseurs. Un automate d'arbres bottom-up a un ontrle parallèle : il évalueunarbredesfeuillesàlara ineenae tantà haquen÷udunétatenfon tion de son étiquette etdes états ae tés à es ls.

Les automates d'arbres bottom-up onstituent le modèle d'automates d'arbres le plus utilisé ar ils possèdent de nombreuses propriétés : un automate d'arbre bottom-up peut être déterminisé, omplémenté, minimisé et on peut dé ider si le langagequ'ilre onnaît est videen temps polynomial.

De plus, les automates d'arbres bottom-up re onnaissent les langages réguliers quisont dénispar des formalismesalgébriquestels queles grammaireset les mor-phismes de

Σ

-algèbres et il est onnu depuis les années 60 que la logique

MSO

dénit exa tement les langages d'arbres réguliers. Les langages réguliers d'arbres sont les langages d'arbres re onnus par de nombreux autres modèles d'automates d'arbres dont le pouvoir d'expression que les bottom-up : les automates top-down non-déterministes, les automates d'arbres alternants, les automates d'arbres bidi-re tionnels alternants[23℄ ...Le modèle des automates d'arbres top-down a été in-troduitsparRabin. Lesautomates d'arbrestop-downévaluentun arbrede lara ine aux feuilles. Ce modèle est moins utilisé que le modèle des automates bottom-up ar la variante déterministe des top-down est moins puissante que lavariante non-déterministe: il existe des langages d'arbres réguliers qui ne sont pas re onnus par

(19)

les langagesréguliers ont un omportement parallèle, le ontrle de l'automate est ee tué sur plusieurs n÷uds de l'automate en même temps.

L'existen ed'unmodèled'automatesséquentielre onnaissantleslangagesd'arbres réguliersest un problème ouvert.

Lemodèled'automated'arbres séquentielleplusnaturelest elui desautomates heminants (tree-walkingautomata) introduits par Ahoet Ullman en 1971 omme une alternative aux automates d'arbres à bran hements [1℄. L'étude de e modèle s'est trouvée ré emment relan ée ave l'arrivée de XML, et plus parti ulièrement dulangageXPath.Lesautomates heminantsétendentnaturellementlesautomates bidire tionnelssur les arbres. Unautomate heminant aune unique tête de le ture qui se dépla e dans l'arbre d'un n÷ud à un autre en suivant les arêtes. Il hoisit son pro hain dépla ement en fon tion de l'étiquette du n÷ud ourant, de son état ourant et du type du n÷ud ourant. Le type d'un n÷ud est une informationnie qui nous indique si le n÷ud onsidéré est la ra ine, un ls droit ou un ls gau he et une feuille ou un n÷ud interne. Cette information est né essaire pour pouvoir ee tuerun par ours en profondeur [27℄.

Il est fa ile de prouver que les langagesre onnus par les automates heminants sont réguliers en utilisantla ara térisationlogique des langages. La ré iproque est restéependant longtempsun problème ouvert etest lapremière des trois questions fondamentales énon ées i-dessous qu'on peut se poser naturellement sur les auto-mates heminants.

1. Lesautomates heminants re onnaissent-ilstous les langagesréguliers? 2. Peut -on déterminiser n'importequel automate heminant?

3. Peut-on omplémenter un automate heminant?

Pour la première question,F. Neven etT. S hwenti k ont d'abord étudié le as des automates heminants qui, au ours d'une exé ution, ne retraversent jamais deux foisune arête dans le même sens [34℄. Ils ontmontré que les automates heminants ave ette nouvelle restri tion ne re onnaissent pas tous les langages réguliers. En 2005, M. Boja« zyk et T. Col ombet ont résolu la question dans le as général : ils ont montré que la lasse des langages re onnus par un automate heminant est stri tement in luse dans la lasse des langages réguliers [7℄. Ils ont également ré-pondu à la deuxième question en prouvant qu'il existe un langage re onnu par un automate heminant non-déterministe etqui ne peut être re onnu par au un auto-mate heminant déterministe. La troisième question sur la omplémentation d'un automate heminantresteunproblèmeouvert. Dans[34℄,F.Neven etT.S hwenti k ontétabliune ara térisationlogiquedes variantesdéterministeetnon-déterministe desautomates heminants:ilsontmontréqueleslangagesdénispar lesautomates heminants orrespondent aux langages dénis par la logique TC(FO) des formes normalesde ltures transitives de formule du premierordre mais il reste en ore à savoir si ette logiquesur lesarbres est fermée par omplément ounon.

Dans[20℄,J.Engelfriet,H.-J. HoogeboometJ.-P.VanBestonttravaillésur des extensions du modèle des automates heminants : les automates heminants à pile (pushdown tree-walkingautomata), lesautomates heminants à ouleurs (tree wal-kingmarbleautomata), lesautomates heminantsave tests

MSO

etlesautomates

(20)

séquentiel d'automatesd'arbres dont le pouvoir d'expression est entre elui des au-tomates heminantset eluides automatesd'arbres bottom-up[18℄.Commedans le as des automates à jetons sur lesmots une dis iplinede pileest imposée au pla e-ment des jetons an de ne pas dépasser le adre des langagesréguliers ( 'est-à-dire pour queleslangagesdénispar lesautomatesd'arbres à jetonssoienttoujours des langagesréguliers)

Dans[19℄,J.EngelfrietetH.-J. Hoogeboomontmontrélelientrèsfortentre les automatesd'arbresàjetons etlalogiquedu premierordreaugmentéd'un opérateur de lturetransitivesurlesarbres.Ilsontintroduitunnouveau modèled'automates à jetons et ont obtenu une ara térisation logique pour les variantes déterministe et non-déterministe de e modèle. Dans leur nouveau modèle d'automates à jeton appelé le modèle fort, le pla ement des jetons suit toujours une hiérar hie de pile mais l'automate peut lever le dernier jeton qu'il a posé à distan e : un jeton peut être levé au ours d'une exé ution à partir de n'importe quel n÷ud alors que dans lemodèle lassique des automates à jetons un jetonne peut être levé que sila tête de l'automate est dessus. Le modèle fort généralise don le modèle lassique que nousappelons le modèle faible.Il est alors naturel de sedemander si lesautomates d'arbres du modèle fort re onnaissent plus de langages que les automates d'arbres dumodèlefaible.Dansle as des mots, es deux modèlesd'automatesà jetonssont équivalentsetre onnaissentexa tementleslangagesréguliers:en eet,tous les lan-gagesre onnus par des automatesà jetons du modèle fortsontrégulierset lesdeux modèlesd'automatesàjetons sur lesmots sontdes extensions des automates unidi-re tionnelsquire onnaissentdéjàtous leslangagesréguliers.Dans[18℄,J.Engelfriet et H.-J. Hoogeboom ont onje turé que le modèle faibledes automates d'arbres à jetons est moins puissant que lemodèle des automates d'arbres bottom-up.

Un transdu teur heminant à jetons est une extension des automates à jetons quiproduit un arbre en sortie. Dans [31℄, T. Milo,D. Su iu etV. Vianu ont étudié les transdu teurs heminants à jetons et ont montré que le problème du vide est non-élémentaire pour les automates àjetons lorsque lenombre de jetons fait partie de l'entrée, 'est-à-dire lorsque le nombre de jetons n'est pas xé pour toutes les instan es du problème.

Notonsennqu'unmodèledetransdu teur heminantave unnombrenon-borné de jetons invisibles aété étudié par J. Engelfriet, H.-J. Hoogeboomdans [22℄ pour modéliserlesmé anismesde ré ursionde XSLT.Lesautomates orrespondantà es transdu teurs re onnaissent tous les langagesréguliers.

1.3 Organisation de la thèse et prin ipales ontri-butions

Ce travail porte sur l'étude de deux modèles séquentiels d'automates à jetons sur des arbres binairesnis étiquetéspar un alphabet ni.

Le hapitre 2 introduit les langages réguliers et les automates à jetons sur les motsetsurlesarbres.Lalogique

MSO

sur lesmotsetsurlesarbresesttoutd'abord dénie dans la se tion 2.1. La se tion 2.2 présente ensuite le modèle lassique des

(21)

motsqui orrespondentauxautomatesà0jetonsurlesmots.Lase tion2.3portesur les automates d'arbres bottom-up qui re onnaissent les langages d'arbres réguliers et le modèle séquentiel des automates heminants qui sont en fait les automates à 0jetonsur lesarbres. Nousdénissons alors dans lase tion 2.4le modèle fortet le modèle faible des automates à jetons sur les arbres et sur les mots. Notons qu'une dis iplinede pile est imposée au pla ement des jetons et que, dans le modèle fort, unjetonpeut êtrelevéàdistan e alors quedans lemodèlefaibleun jetonpeut être levéuniquements'ilest posé sur len÷ud ourant.De nombreux exemplesillustrent toutes es dénitions. Pour on lure e hapitre, nous rappelons dans lase tion 2.5 queleslangagesréguliersde mots,respe tivementd'arbres, sontleslangagesdénis par lalogique

MSO

, puis quetous lesmodèles d'automatesséquentiels sur lesmots dénis dans e hapitre ont le même pouvoir d'expression et enn que les langages d'arbresre onnuspar unautomated'arbresàjetonssontréguliers.Nouspré iserons e dernierrésultat dans le hapitre6.

M. Boja« zyk et T. Col ombet ont répondu ré emment dans [7℄ et [6℄ à deux des trois questions fondamentales qui se sont posées naturellement dès l'introdu -tion des automates heminants par Aho et Ulman en 1971. La omplémentation d'un automate heminantnon-déterministe reste don leprin ipal problème ouvert sur les automates heminants.Dans le hapitre3, nous prouvons que toutes les va-riantes déterministesdes diérents modèlesd'automatesd'arbres séquentiels dénis au hapitre pré édent sont fermées par omplémentation [32℄. Rappelons que pour omplémenter un automate unidire tionnel déterministe sur les mots il sut de le ompléterpuis d'intervertirlesétats a eptants etlesétatsnon-a eptants.Dans le asdesautomates heminantsetdesautomatesd'arbres àjetons déterministesnous montrons à l'aide d'un exemple que les exé utions innies posent problème. Pour résoudre ette di ulté, nous utilisons une idée de Sipser. Noustraitons ainsi dans lase tion3.2le asdesautomatesd'arbres heminantsdéterministes.Nousétendons sansdi ulté ettepreuveauxautomatesàjetons du modèlefaibledéterministeen 3.3.1:étantdonné

A

un automateàjetonsdu modèlefaible,nous onstruisonsave une omplexitéquadratiqueun automate dumodèlefaibleave lemêmenombre de jetonsquire onnaîtle omplément.Dansle as dumodèlefort,nousadaptons ette onstru tionen 3.3.2 etnous omplémentons ainsi un automate àjetons du modèle fortave une omplexitépolynomiale en multipliantpar 3 lenombre de jetons.

J.Engelfriet etH.J. Hoogeboomontétabli dans [19℄ une ara térisationlogique des variantes déterministe et non-déterministe du modèle fort des automates à je-tons. Leur résultat implique que la lasse des langages re onnus par un automates àjetons du modèle fort est fermée par omplément. Notons que la onstru tion du omplémentd'untelautomatedonnée par etteappro he n'estpase a eenterme de jetons. Le hapitre 4 présente ette ara térisation. La se tion 4.1 introduit les logiquesFO

+ pos

TCetFO+DTCquisontdes extensionsde lalogiquedu premier ordreaumoyen d'un opérateurde lturetransitive.Nousénonçons ensuitedans la se tion4.2 la ara térisationlogique des automates àjetons du modèle fortde [19℄ et nous proposons une nouvelle présentation de la onstru tion d'un automate à jetonsdéterministere onnaissantlelangagedéni parune formuleFO+DTCdans laquelle nous utilisonslesrésultats du hapitre 3.

(22)

mated'arbres àjetons ontlemêmepouvoird'expressiondans le as déterministeet dansle asnon-déterministe[8℄.Nousdonnonsdansunpremiertempslesidées prin- ipalesde lapreuveen traitant les as parti uliersdes automates non-déterministes à

1

et

2

jetons.Nousintroduisonsensuitedanslase tion5.2lanotionde omporte-ment d'unautomate à jetons du modèle faiblesur un arbre que nousutilisons pour le as général. Etant donné un automate à jetons du modèle fort, nous onstrui-sonsdans lase tion 5.3un automateéquivalentave le mêmenombre de jetons. La se tion5.4montre ommentpréserverle déterminismedans ette onstru tion. Les résultats de e hapitre impliquent une nouvelle onstru tion du omplément d'un automate à jetons du modèle fort dans laquelle on n'augmente pas le nombre de jetonset montrentquela ara térisationlogique du modèlefortd'automate àjeton de J. Engelfrietet H.J. Hoogebooms'applique égalementaumodèle faible.

Dans le hapitre 6, nous étendons auxautomates d'arbres à jetons les résultats de[6℄et[7℄surlesautomatesd'arbres heminants[8℄.M.Boja« zyketT.Col ombet ont prouvé que les automates d'arbres heminants non-déterministes re onnaissent plus de langages que les automates d'arbres heminants déterministes. Ils ont éga-lementmontré quelesautomates heminantsne re onnaissentpas tous leslangages réguliers.Nousmontronsen6.2.2quelepouvoird'expressiondesautomatesd'arbres à jetons augmente stri tement ave le nombre de jetons et en 6.2.3 que, pour tout entier

k

, il existe un langagere onnu par un automate heminantnon-déterministe quin'est re onnupar au unautomate déterministeà

k

jetons. Pour ela, nous uti-lisons deux famillesde langages dénies de manière indu tive dans la se tion 6.1 à partir des langages de séparation dénis dans [7℄ et [6℄. Nous démontrons dans la se tion 6.3 que les automates d'arbres à jetons ne re onnaissent pas tous les lan-gages réguliers. Ce résultat était onje turé par J. Engelfriet and H.J. Hoogeboom dans [18℄

Le hapitre 7 porte sur la omplexité des problèmes de dé ision du vide et de l'in lusionpour lesvariantes déterministe etnon-déterministe du modèle fortet du modèle faible d'automates d'arbres à

k

jetons où le nombre de jetons

k

est xé. Dans [31℄, T. Milo, D. Su iu and V. Vianu montrent que e problème est non-élémentaire si l'entier

k

fait partie de l'entrée. La se tion 7.1 introduit les notions et les théorèmes lassiques de omplexités en espa e et en temps utilisés dans la suite du hapitre. Nous rappelons ensuite la omplexité du problème du vide pour lesautomates d'arbresbottom-up etlatransformationd'unautomate heminanten unautomatebottom-up équivalentquiestprésentée dans[14℄ etquiimpliquequele problèmedu videestExpTimepourlesautomates heminants.Lase tion7.3étend ettetransformationauxautomatesàjetons du modèlefortetétablitainsilaborne supérieure des problèmes du videet de l'in lusionpour lesautomates à

k

jetons du modèle fort non-déterministes. Dans la se tion 7.4, pour tout entier

k

stri tement positif,noussimulonsunema hinede Turingalternanteàespa e

(k −1)

-exponentiel ave un automateà

k

jetons déterministedu modèlefaible.Nousprouvonsainsi que lesproblèmesduvideetdel'in lusionsontdesproblèmes

k

-ExpTime ompletspour touslesmodèlesd'automatesd'arbresà

k

jetons onsidérés[42℄.Nousmontronsaussi que es deux problèmes sont

(k − 1)

-ExpSpa e omplets pour les automates à

k

jetons sur les mots.

(23)

quelques perspe tives. Nous exposons d'abord quelques problèmes ouverts posés dansle adreabordé.Nousproposonsensuitedesextensionsdesautomatesd'arbres àjetonsqu'ilnoussembleimportantd'étudiermaintenantauregarddesmotivations exposées audébut de e premier hapitre.

(24)

2

Des automates sur les mots aux automates

d'arbres à jetons

Sommaire

2.1 Les arbres, les mots et la logique MSO . . . 24 2.1.1 Les motsetles arbres :desstru turesde données . . . 24 2.1.2 Des modèles pour les mots etlesarbres . . . 27 2.1.3 Logique dupremier ordre . . . 28 2.1.4 Logique

MSO

. . . 30 2.2 Automates surles mots . . . 32 2.2.1 Langages rationnels de mots . . . 32 2.2.2 Automates unidire tionnels . . . 33 2.2.3 Automates bidire tionnels . . . 36 2.3 Automates surles arbres . . . 38 2.3.1 Arbresnis derang borné . . . 39 2.3.2 Langagesd'arbresréguliersetautomatesd'arbresbottom-up 40 2.3.3 Automates d'arbres heminants . . . 43 2.4 Automates à jetons . . . 46 2.4.1 Automates d'arbres àjetons . . . 46 2.4.2 Automates à jetonssurles mots . . . 51 2.5 Automates et logique

MSO

. . . 52 2.5.1 Langages réguliers . . . 53 2.5.2 Automates à jetonsetlogique

MSO

. . . 56

(25)

etlesmots.Nousintroduisonsdansunpremiertempslesmotsetlesarbres:nous dé-nissonslesstru turesrelationnellesqui leursont asso iéesetlalogique monadique duse ondordresur esdiérentsmodèlesdestru turesdedonnées.Nousprésentons diérentsmodèlespour lesarbres dans lase tion2.1: lesarbresbinaires,lesarbres de rang borné et lesarbres de rang arbitraire. Notons que tous lesarbres que nous onsidérons ensuite sont des arbres binaires nis. Nous introduisons ensuite deux modèles d'automatessur les mots dans la se tion 2.2et deux modèles d'automates sur lesarbresdans lase tion2.3en utilisantde nombreux exemples.Lesautomates unidire tionnels et bidire tionnelssont des automates séquentiels sur les mots. Les automatesd'arbresquenousappelonslesautomatesd'arbresbottom-upetquenous notons

BU

ee tuent des al uls en parallèlepartant des feuilles et remontant à la ra ine. La lasse des automates d'arbres heminants qui sont appelés tree-walking automataenanglaisetquenousnotons

TWA

estunmodèled'automatesséquentiels quiétend sur les arbres lemodèle des automates bidire tionnelssur lesmots. Pour tous les modèles d'automates que nous dénissons, nous distinguons les variantes déterministesoùlestransitionssontdes fon tionsetlesvariantes non-déterministes. Nous présentons enn dans la se tion 2.4 les automates d'arbres à jetons qui sont appelés pebble tree automata en anglais et que nous notons

PTA

. Les automates d'arbres à jetons font l'objet de e travail et sont dénis de manière similaire sur lesmots. Nous onsidéronsdeux modèles d'automatesd'arbres à jetons : lemodèle fort pour lequel le jeton est onsidéré omme un pointeur et le modèle faible où le jetonestvu ommeunobjetphysique.Ladernière se tionétablitdesrapportsentre les langages dénis par les diérents modèles d'automates que nous avons présen-tés et la logique monadiquedu se ond ordre. Nousmontrons ainsi que les langages d'arbres re onnus par un automate d'arbres à jetons sont réguliers et que tous les automates séquentiels sur les mots que nous avons présentés ont le même pouvoir d'expression.Nousverronsdansle hapitre6quelesdiérentsmodèlesd'automates d'arbres (

BU

,

TWA

et

PTA

) que nous dénissons n'ont pas tous le même pouvoir d'expression.

2.1 Les arbres, les mots et la logique MSO

2.1.1 Les mots et les arbres : des stru tures de données Un alphabet est un ensemble ni de symboles. Les éléments d'un alphabetsont des lettres.

Un mot ni sur un alphabet

Σ

est une suite nie de lettres de

Σ

. Un mot est représenté par la juxtaposition des lettres qui le omposent. Par exemple,

logique

représente le mot a sept lettres asso ié à lasuite

l, o, g, i, q, u, e

. Lemot vide, 'est-à-direle mot asso ié à lasuite vide,est noté

ǫ

. Par la suite tous les mots que nous onsidéronsseront des mots nis.

Etantdonnésdeux mots

u

et

v

,la on aténation de

u

etde

v

sera notée

u · v

ou tout simplement

uv

.

(26)

mot

u

est un suxe d'un mot

v

s'il existe un mot

w

tel que

v = wu

. Un préxe propre de

u

(respe tivement un suxe propre de

u

) est un préxe (respe tivement un suxede

u

)distin tde

u

. Unensemble

L

de mots est fermé par préxe si,pour tout mot

u

dans

L

,tout préxe de

u

est dans

L

.

Soit

Σ

un alphabet, on note

Σ

l'ensembledes mots sur

Σ

.

Notation 2.1 Onnote

N

>0

l'ensembledes entiersstri tementpositifs etondésigne par

N

>0

l'ensembledes suitesniesd'entiersstri tementpositifs.Soient

i

et

j

deux entiers,l'ensemble desentiers ompris entre

i

et

j

est noté

[i, j]

etsi

n

est un entier

[n]

désigne l'ensemble

[1, n]

des entiers stri tement positifs et inférieurs ou égauxà

n

.

Nous avons déni un mot omme une suite nie de lettres. Un mot de longueur

n

surun alphabet

Σ

peutainsiêtre vu ommeuneappli ationde

[n]

dans

Σ

asso iant àtout

i

,

1 ≤ i ≤ n

, la

i

-ème lettre du mot.

Un domaine d'arbre

N

sur

N

>0

est un sous-ensemble de

N

>0

telque si

vi ∈ N

ave

v ∈

N

>0

et

i ≥ 1

alors

v ∈ N

etsideplus

i > 1

alors

v(i−1) ∈ N

.Lemotvide notée

ǫ

représentelara ine.On appellelesélémentsde

N

desn÷uds.Laprofondeur d'un n÷ud est égale à sa longueur. Laprofondeur de la ra ine d'un arbre est don nulle. Un n÷ud

w

est un ls d'un n÷ud

v

et

v

est le père de

w

s'il existe

i > 0

tel que

w = vi

. Des n÷uds

v

et

w

sont des frères s'ils ont le même père. Un n÷ud

w

est un des endant d'un n÷ud

v

et

v

est un an être de

w

s'ilexiste

u ∈

N

>0

telque

w = vu

.

Un arbre ni sur un alphabet

Σ

est un ouple

t = (N , λ)

N

est un domaine d'arbreni sur

N

>0

et

λ

est une appli ation de

N

vers

Σ

. Tous les arbresque nous onsidérons seront nis. L'arité ou le degré d'un n÷ud est le nombre de ls de e n÷ud.Unn÷ud interne est unn÷udd'aritéstri tementpositive.Unefeuille est un n÷udd'ariténulle. L'arité ouledegréd'un arbreest lenombre maximum de lsde ses n÷uds.Unarbre unaire est un arbre dont touslesn÷uds internessontd'arité

1

etun telarbre orrespondàunmot. Latailled'un arbreest lenombre desesn÷uds etlahauteur d'unarbreestlaprofondeurmaximaledesesn÷uds.Parlasuite,nous travaillonssur des arbres de degré 2.Cette restri tion est importante ar lesarbres représentantdesdo umentsXMLn'ontpasundegréxé.Nousreviendronssur ette restri tion en 8.2 On peut dénir de diérentes manières les arbres d'arité bornée. Pour

n > 0

un arbre de degré

n

est un arbre dont le domaineest un sous-ensemble de

{1, · · · , n}

. Dansde nombreux ouvrages,on utilisela notiond'alphabet gradué pourintroduirelesarbresd'aritébornée.Unalphabetgradué

Σ

d

est un ouple

(Σ, d)

Σ

est un alphabetni et

d

est unefon tion de

Σ

vers

N

.Unarbre sur l'alphabet gradué

Σ

est un arbre sur l'alphabet

Σ

tel que haque n÷ud

v

a exa tement

d(v)

ls. Nouspouvons remarquer qu'un arbre sur l'alphabetgradué

(Σ, d)

est un arbre de degré

d

m

d

m

est la valeur maximale de la fon tion

d

sur

Σ

.

Exemple 2.1 Nousreprésentons dans lagure2.1un arbrede degré

2

sur l'alpha-bet

{a, b, c}

. Un n÷udinternepeut avoirun oudeux ls.

Pour simplier en ore d'avantage les di ultés te hniques des preuves de nos résultats nous nous restreignons aux arbres binaires pour lesquels haque n÷ud a soit zéro su esseur soit deux su esseurs qui sont son ls gau he et son ls droit

(27)

b

c

c

b

a

b

c

a

b

b

b

Fig. 2.1Représentation d'un arbre de degré

2

maistouslesrésultatsquenousprouveronsdans le adredesarbresbinairesrestent en fait vraisdans le adre des arbres de degré xé.Les n÷uds d'un arbre vont être représentés par des mots sur l'alphabet

{1, 2}

1

signie bran he gau he et

2

signie bran he droite. Un domaine d'arbre binaire ni est un ensemble ni

N

de

{1, 2}

fermé par préxe tels que pour haque

w ∈ N

,

w1 ∈ N

si et seulement si

w2 ∈ N

. Un n÷ud interne a don toujours deux ls. La ra ine d'un arbre, notée

ǫ

est le n÷ud qui orrespond au mot vide sur l'alphabet

{1, 2}

. Tous les arbres que nous onsidéronsdans les hapitres 3à 7sont des arbresbinaires.

Exemple 2.2 Nousreprésentons dans la gure 2.2un arbrebinaire sur l'alphabet

{a, b, c}

.

b

b

c

b

a

b

c

b

a

c

c

Fig. 2.2 Représentation d'unarbre binaire

On dénit un graphe orienté en indexant les sommets, qui sont aux graphes e queles n÷uds sontaux arbres, par les éléments d'un ensemble muni d'une relation binaire.Un graphe orienté est don un ouple

G = (V, E)

V

est un ensemble de sommets et

E ⊆ V × V

est une relation binaire sur

V

appelée ensemble des ar s. Par lasuite, tous les graphes que nous verrons sont orientés.

Ladénition pré édente ne dé ritquela stru tureetpas un étiquetage éventuel dessommetsoudesar s.Ungraphedontlessommetssontétiquetésparunalphabet

Σ

est alors un triplet

(V, λ, E)

telque

(V, E)

est un grapheet

λ

est une appli ation de

V

dans

Σ

. Un graphe qui possède un sommet liéà tous les autres sommets par ununique hemin est un arbrenon-ordonné dontlesommetlié àtouslesautres est lara ine.Un arbre

(N , λ)

peut aussi être vu ommele graphe

(N , λ, E)

telque les su esseursd'un sommetsont ordonnés ettelquel'ensembledes ar s

E

orrespond à la relation "ls" dans l'arbre :

E = {(v, vi) | i > 0

et

vi ∈ N }

. Pour représenter

(28)

un graphe, on représente un sommet

u

par un er le dans lequel on é rit

u

et un ar

(v, w)

par uneè he partantdu sommet

v

etallantausommet

w

.Lataille d'un grapheest lasommedunombrede sesn÷udsetdunombrede sesarêtes.Attention, latailled'un arbre n'est don pas égale à latailledu graphe qui lui orrespond.

Exemple 2.3 Nousreprésentonsdanslagure2.3legraphe

(V, E)

ave

V = {1, 2, 3, 4}

et

E = {(1, 2), (2, 1), (2, 4)(3, 2), (4, 1)})

.

2

1

4

3

Fig. 2.3 Représentation du graphe

(V, E)

2.1.2 Des modèles pour les mots et les arbres

Une signature

S

est un ensemble ni de symboles relationnels, haque symbole

R ∈ S

possédant une arité entière notée

|R|

. Une stru ture relationnelle

S

sur une signature

S

est une paire

(U, I)

U

est un ensemble appelé univers et

I

est une appli ationasso ianta haque symbole

R

de la signatureson interprétation, 'est à dire une partie de

U

|R|

.

Dénition 2.1 Soit

Σ

un alphabet et soit

w = w

1

· · · w

n

un mot sur

Σ

. Le mot

w

est représenté par la stru ture relationnelle

([n], I)

sur la signature

{S, <, (P

a

)

a∈Σ

}



I(S)

est la relation su esseur sur

[n]

ave

(i, i + 1) ∈ I(S)

pour

1 ≤ i < n

, 

I(<)

est l'ordre naturel sur

[n]

et

 pour haque

a ∈ Σ

,

I(P

a

)

est une relation unaire ontenant les positions des lettres

a

dans

w

.

Parlasuiteonutiliseralamêmenotationpourunmot

w

etsastru turerelationnelle. Dénition 2.2 Un arbre binaire

t = (N , λ)

sur l'alphabet ni

Σ

est représenté par lastru ture relationnelle

(N , I)

sur la signature

(S

1

, S

2

, <, (P

a

)

a∈Σ

)



I(S

1

)

est la relation "ls gau he"sur

N

ave

(u, u1) ∈ I(S)

pour

u1 ∈ N

, 

I(S

2

)

est la relation "ls droit" sur

N (w)

ave

(u, u2) ∈ I(S

2

)

pour

u2 ∈ N

, 

I(<)

est larelation "an être" sur lesn÷uds ave

(u, v) ∈ I(<)

pour

v ∈ N

et

u

préxe de

v

et

 pour haque

a ∈ Σ

,

I(P

a

)

estunerelationunaire ontenantlesn÷udsétiquetés par

a

dans

t

.

Par la suite on utiliserala même notation pour un arbre

t

et sastru ture relation-nelle.

(29)

borné. Le modèle pour les arbres d'arité

k

est déni en remplaçant les prédi ats binaires

S

1

et

S

2

par

k

prédi ats

S

1

, · · · , S

k

tels que pour haque

i ∈ [k]

l'interpré-tationde

S

i

est la relation "

i

-ème ls" qui ontient tous les ouples

(u, ui)

tels que

ui

est un n÷ud de l'arbre.

Remarque 2.2 Andedénirun modèlepour lesarbresd'ariténon-bornée,onne peutrajouterunnombreinnideprédi atspuisqu'unesignatureestunensembleni desymbolesrelationnels.On introduitalorsun nouveau prédi atquisera interprété par la relation "frère suivant". Ainsi, un arbre d'arité non-borné

t = (N , λ)

sur l'alphabetni

Σ

est représenté par lastru turerelationnelle

(N , I)

sur lasignature

(S

, S

, <, (P

a

)

a∈Σ

)



I(S

)

est la relation"premierls" sur

N

ave

(u, u1) ∈ I(S)

pour

u1 ∈ N

, 

I(S

)

est la relation "frère suivant "sur

N

ave

(ui, u(i + 1)) ∈ I(S

)

pour

ui, u(i + 1) ∈ N

,



I(<)

est la relationan être sur lesn÷udsave

(u, v) ∈ I(w)

pour

v ∈ N

et

u

préxede

v

et

 pour haque

a ∈ Σ

,

I(P

a

)

estune relationunaire ontenantlesn÷udsétiqueté par

a

dans

t

.

Tous les modèles i-dessus pour lesarbres peuvent être redénis sans leprédi at

<

interprété parlarelationan être maislesmodèles quenous onsidéronspar lasuite sont eux ave le prédi at

<

.

2.1.3 Logique du premier ordre

Lespropriétés des mots, des arbres etdes graphespeuvent êtreformalisées ave desformuleslogiques. Nous ommençonspar lalogiquedu premierordre également appelée logique

FO

qui est à labase de toutesles autres logiques onsidéréesi i. Dénition 2.3 On se xe un ensemble dénombrablede variables du premier ordre notées

x, y, · · ·

Etant donnée une signature

S

, les formules du premier ordre sur

S

sont déniesindu tivement au moyen des onstru tions i-dessous :

 la onstante

vrai

,

 la onjon tion :

φ ∧ ψ

φ

et

ψ

sont des formules du premier ordre,  lanégation :

¬φ

φ

est une formule du premier ordre,

 laquanti ationexistentielle du premier ordre:

∃x.φ

x

est une variabledu premier ordre et

φ

une formule du premier ordre,

 l'égalitéde variablesdu premierordre :

x = y

ave

x

et

y

variables du premier ordre,

 larelationentrevariablesdu premier ordre:

R(x

1

, · · · , x

|R|

)

R

estun sym-bole relationnel de

S

d'arité

|R|

et

x

1

,

· · ·

,

x

|R|

sont des variables du premier ordre.

Lesautres onne teurs lassiquesne sontque des ombinaisonsdes pré édents :  la onstante

faux

équivaut à

¬vrai

 ladisjon tion:

φ ∨ ψ

équivaut à

¬((¬φ) ∧ (¬ψ))

,  l'impli ation:

φ ⇒ ψ

équivaut à

(¬φ) ∨ ψ

(30)

 l'équivalen e :

φ ⇔ ψ

équivaut à

(φ ⇒ ψ) ∧ (ψ ⇒ φ)

 laquanti ationuniverselle du premier ordre :

∀x φ

équivaut à

¬(∃x¬φ)

. On omet le plus souvent de pré iserla signature

S

quand il n'y a pas d'ambiguïté. Dansuneformulelogique,unevariablequin'estpasliéeàunquanti ateur existen-tielou universel est dite libre. De manièreplus formelle, étant donnée une formule

φ

,on dénitl'ensemble

VL(φ)

des variables librespar indu tion sur la stru ture de

φ

ommesuit : 

VL(vrai) = ∅



VL(φ ∧ ψ) = VL(φ) ∪ VL(ψ)



VL(¬φ) = VL(φ)



VL(∃xφ) = VL(φ) − {x}



VL(x = y) = {x, y}



VL(R(x

1

, · · · , x

|R|

) = {x

1

, · · · , x

|R|

}

Une formule est lose si elle n'a au une variable libre. Par abus de langage et pour un ensemble

V

de nomsde variables,on ditqu'une formule

φ

apourvariables libres

V

si

V

ontient

VL(φ)

.

Etant données une stru ture relationnelle

S = (U, I)

, une formule du premier ordre

φ

de variableslibres

V

et uneappli ation

γ

de

V

dans

U

appelévaluation,on dénitpar ré uren e sur

φ

larelation de satisfa tionde

φ

par

S

dans le ontexte

γ

, notée

γ,

S |= φ

de la manièresuivante :



γ,

S |= vrai



γ,

S |= φ ∧ ψ

si

γ,

S |= φ

et

γ,

S |= ψ



γ,

S |= ¬φ

si

γ,

S 6|= φ

( 'est-à-diresi l'on n'a pas

γ,

S |= φ

) 

γ,

S |= R(x

1

, · · · , x

|R|

)

si

(γ(x

1

), · · · , γ(x

|R|

)) ∈ I(R)



γ,

S |= x = y

si

γ(x) = γ(y)



γ,

S |= ∃xφ

s'ilexiste

u ∈ U

telque

γ

x→u

,

S |= φ

γ

x→u

représentelafon tion partoutégale a

γ

sauf pour

x

où ellevaut

u

.

Pour une formule lose

φ

, si

f

,

S |= φ

f

est l'appli ation de domaine vide, on dit que

S

satisfait

φ

ou que

S

est un modèle de

φ

e que l'on note simplement

S |= φ

.

Il est parfois utile de rendre expli ite les variables libres d'une formule. Ainsi, on notera

φ(x

1

, · · · , x

n

)

une formule logique de variables libres

x

1

, · · · , x

n

. Soient

e

1

, · · · , e

n

desélémentsde

U

et

γ

lavaluationquifait orrespondreà haquevariable

x

i

l'élément

e

i

.

S, e

1

, · · · , e

n

|= φ(x

1

, · · · , x

n

)

signie alors que

γ,

S |= φ

. S'il n'y a pas d'ambi-guitésur

S

, onditque

φ

est satisfaitepar

e

1

, · · · , e

n

.

An d'illustrerles notions dénies i-dessus nous donnons maintenant quelques exemplesde formuledu premier ordre sur les motset sur les arbres.

Exemple 2.4 Considérons les formules

FO pre, der

et

mil

à une variable libre sur lesmots étiquetés par un alphabet

Σ

dénies respe tivement par :



pre(x) = ¬(∃y S(y, x))



der(x) = ¬(∃y S(x, y))



mil(x) = ¬(pre(x) ∨ der(x))

La formule

pre

est satisfaite par la première position d'un mot, la formule

der

par ladernière positionet laformule

mil

par toutes lesautres positions du mot.

Figure

Fig. 1.2  Arbre représentant le do
ument XML de la gure 1.1
Fig. 2.2  Représentation d'un arbre binaire
Fig. 2.4  Représentations graphiques des 1NFA A 1 et A 2
Fig. 2.5  Représentation graphique du 1DFA A 2 et de son 
omplément A 3
+7

Références

Documents relatifs

◮ le fini dans l’infini : exemple de r´eels, triadique de Cantor (si cela passe). D´ecalages : notation fonction et somme (un peu de dualit´e sous forme de

◮ le fini dans l’infini : exemple de r´eels, triadique de Cantor (si cela passe).. D´ecalages : notation fonction et somme (un peu de dualit´e sous forme de

◮ Matrice(s) de transition, pb des arˆetes multiples avec diff´erentes.. ´etiquettes, avec

Nouveaux exemples d’automates des d´ecalages (exemples finis et infinis) sur des langages s’exprimant avec des conditions (mots avec pr´efixe impos´e, avec facteur impos´e).. Tous

Donnez les langages générés par les expressions

Licence Informatique –L1 Automates. Théorie des

● Théorème : pour tout automate, il existe une expression régulière reconnaissant le même langage. – Possibilité de transformer un automate en

On montre que tout langage régulier simple à droite est d'une manière unique produit d'un langage régulier pur à droite et d'un langage régulier étoile obtenu à partir d'un