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�
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
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
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.
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
. . . 302.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
. . . 522.5.2 Automates àjetons etlogique
MSO
. . . 563 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
. . . 633.2 Constru tion du omplémentd'un
DTWA
. . . 683.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
. . . 955.2.1 Dénition du omportement d'un
wPTA
. . . 955.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
. . . 1156.1.3 La famillede langages
M
n
. . . 1196.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
. . . 1286.3.1 A propos de l'union des
L
n
. . . 1336.3.2 Le langagerégulier
L
r
. . . 1336.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 . . . 1577.4.2 Comparer deux
k
-nombres ave des jetons . . . 1587.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
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
<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 depersonne
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
<!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'arbret
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
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
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 etT
une fon tion dénie par un programme d'un ensemble d'entréesD
vers un ensemble d'arbres et nous voulons dé idersi pour toute entréex ∈ D
, ona bienT (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 :
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
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 parA
.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 sontk
-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
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 logiqueMSO
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 parles 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
etlesautomatessé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 desmotsqui 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.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
et2
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 jetonsk
est xé. Dans [31℄, T. Milo, D. Su iu and V. Vianu montrent que e problème est non-élémentaire si l'entierk
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 entierk
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èmesk
-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.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.
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 logiqueMSO
. . . 52 2.5.1 Langages réguliers . . . 53 2.5.2 Automates à jetonsetlogiqueMSO
. . . 56etlesmots.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 automataenanglaisetquenousnotonsTWA
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 notonsPTA
. 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
etPTA
) 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é à lasuitel, 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
etv
,la on aténation deu
etdev
sera notéeu · v
ou tout simplementuv
.mot
u
est un suxe d'un motv
s'il existe un motw
tel quev = wu
. Un préxe propre deu
(respe tivement un suxe propre deu
) est un préxe (respe tivement un suxedeu
)distin tdeu
. UnensembleL
de mots est fermé par préxe si,pour tout motu
dansL
,tout préxe deu
est dansL
.Soit
Σ
un alphabet, on noteΣ
∗
l'ensembledes mots sur
Σ
.Notation 2.1 Onnote
N
>0
l'ensembledes entiersstri tementpositifs etondésigne parN
>0
∗
l'ensembledes suitesniesd'entiersstri tementpositifs.Soient
i
etj
deux entiers,l'ensemble desentiers ompris entrei
etj
est noté[i, j]
etsin
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 àtouti
,1 ≤ i ≤ n
, lai
-ème lettre du mot.Un domaine d'arbre
N
surN
>0
est un sous-ensemble deN
>0
∗
telque si
vi ∈ N
avev ∈
N
>0
∗
et
i ≥ 1
alorsv ∈ N
etsideplusi > 1
alorsv(i−1) ∈ N
.Lemotvide notéeǫ
représentelara ine.On appellelesélémentsdeN
desn÷uds.Laprofondeur d'un n÷ud est égale à sa longueur. Laprofondeur de la ra ine d'un arbre est don nulle. Un n÷udw
est un ls d'un n÷udv
etv
est le père dew
s'il existei > 0
tel quew = vi
. Des n÷udsv
etw
sont des frères s'ils ont le même père. Un n÷udw
est un des endant d'un n÷udv
etv
est un an être dew
s'ilexisteu ∈
N
>0
∗
telque
w = vu
.Un arbre ni sur un alphabet
Σ
est un ouplet = (N , λ)
oùN
est un domaine d'arbreni surN
>0
etλ
est une appli ation deN
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. Pourn > 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)
oùΣ
est un alphabetni etd
est unefon tion deΣ
versN
.Unarbre sur l'alphabet graduéΣ
est un arbre sur l'alphabetΣ
tel que haque n÷udv
a exa tementd(v)
ls. Nouspouvons remarquer qu'un arbre sur l'alphabetgradué(Σ, d)
est un arbre de degréd
m
oùd
m
est la valeur maximale de la fon tiond
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
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}
où1
signie bran he gau he et2
signie bran he droite. Un domaine d'arbre binaire ni est un ensemble niN
de{1, 2}
∗
fermé par préxe tels que pour haque
w ∈ N
,w1 ∈ N
si et seulement siw2 ∈ 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)
oùV
est un ensemble de sommets etE ⊆ V × V
est une relation binaire surV
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 deV
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 sE
orrespond à la relation "ls" dans l'arbre :E = {(v, vi) | i > 0
etvi ∈ N }
. Pour représenterun graphe, on représente un sommet
u
par un er le dans lequel on é ritu
et un ar(v, w)
par uneè he partantdu sommetv
etallantausommetw
.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)
aveV = {1, 2, 3, 4}
etE = {(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 symboleR ∈ S
possédant une arité entière notée|R|
. Une stru ture relationnelleS
sur une signatureS
est une paire(U, I)
oùU
est un ensemble appelé univers etI
est une appli ationasso ianta haque symboleR
de la signatureson interprétation, 'est à dire une partie deU
|R|
.
Dénition 2.1 Soit
Σ
un alphabet et soitw = w
1
· · · w
n
un mot surΣ
. Le motw
est représenté par la stru ture relationnelle([n], I)
sur la signature{S, <, (P
a
)
a∈Σ
}
où
I(S)
est la relation su esseur sur[n]
ave(i, i + 1) ∈ I(S)
pour1 ≤ i < n
,I(<)
est l'ordre naturel sur[n]
etpour haque
a ∈ Σ
,I(P
a
)
est une relation unaire ontenant les positions des lettresa
dansw
.Parlasuiteonutiliseralamêmenotationpourunmot
w
etsastru turerelationnelle. Dénition 2.2 Un arbre binairet = (N , λ)
sur l'alphabet niΣ
est représenté par lastru ture relationnelle(N , I)
sur la signature(S
1
, S
2
, <, (P
a
)
a∈Σ
)
où
I(S
1
)
est la relation "ls gau he"surN
ave(u, u1) ∈ I(S)
pouru1 ∈ N
,I(S
2
)
est la relation "ls droit" surN (w)
ave(u, u2) ∈ I(S
2
)
pouru2 ∈ N
,I(<)
est larelation "an être" sur lesn÷uds ave(u, v) ∈ I(<)
pourv ∈ N
etu
préxe dev
etpour haque
a ∈ Σ
,I(P
a
)
estunerelationunaire ontenantlesn÷udsétiquetés para
danst
.Par la suite on utiliserala même notation pour un arbre
t
et sastru ture relation-nelle.borné. Le modèle pour les arbres d'arité
k
est déni en remplaçant les prédi ats binairesS
1
etS
2
park
prédi atsS
1
, · · · , S
k
tels que pour haquei ∈ [k]
l'interpré-tationdeS
i
est la relation "i
-ème ls" qui ontient tous les ouples(u, ui)
tels queui
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∈Σ
)
où
I(S
↓
)
est la relation"premierls" surN
ave(u, u1) ∈ I(S)
pouru1 ∈ N
,I(S
→
)
est la relation "frère suivant "surN
ave(ui, u(i + 1)) ∈ I(S
→
)
pourui, u(i + 1) ∈ N
,
I(<)
est la relationan être sur lesn÷udsave(u, v) ∈ I(w)
pourv ∈ N
etu
préxedev
etpour haque
a ∈ Σ
,I(P
a
)
estune relationunaire ontenantlesn÷udsétiqueté para
danst
.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éesx, y, · · ·
Etant donnée une signatureS
, les formules du premier ordre surS
sont déniesindu tivement au moyen des onstru tions i-dessous :la onstante
vrai
,la onjon tion :
φ ∧ ψ
oùφ
etψ
sont des formules du premier ordre, lanégation :¬φ
oùφ
est une formule du premier ordre,laquanti ationexistentielle du premier ordre:
∃x.φ
oùx
est une variabledu premier ordre etφ
une formule du premier ordre,l'égalitéde variablesdu premierordre :
x = y
avex
ety
variables du premier ordre,larelationentrevariablesdu premier ordre:
R(x
1
, · · · , x
|R|
)
oùR
estun sym-bole relationnel deS
d'arité|R|
etx
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 à(¬φ) ∨ ψ
l'équivalen e :
φ ⇔ ψ
équivaut à(φ ⇒ ψ) ∧ (ψ ⇒ φ)
laquanti ationuniverselle du premier ordre :
∀x φ
équivaut à¬(∃x¬φ)
. On omet le plus souvent de pré iserla signatureS
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'ensembleVL(φ)
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 libresV
siV
ontientVL(φ)
.Etant données une stru ture relationnelle
S = (U, I)
, une formule du premier ordreφ
de variableslibresV
et uneappli ationγ
deV
dansU
appelévaluation,on dénitpar ré uren e surφ
larelation de satisfa tiondeφ
parS
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'ilexisteu ∈ U
telqueγ
x→u
,
S |= φ
oùγ
x→u
représentelafon tion partoutégale aγ
sauf pourx
où ellevautu
.Pour une formule lose
φ
, sif
∅
,
S |= φ
oùf
∅
est l'appli ation de domaine vide, on dit queS
satisfaitφ
ou queS
est un modèle deφ
e que l'on note simplementS |= φ
.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 libresx
1
, · · · , x
n
. Soiente
1
, · · · , e
n
desélémentsdeU
etγ
lavaluationquifait orrespondreà haquevariablex
i
l'élémente
i
.S, e
1
, · · · , e
n
|= φ(x
1
, · · · , x
n
)
signie alors queγ,
S |= φ
. S'il n'y a pas d'ambi-guitésurS
, onditqueφ
est satisfaitepare
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
etmil
à 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