Raisonnement automatisé sur les arbres avec des contraintes de cardinalité / Ismael Barcenas Patino ; sous la direction de Nabil Layaida

Date :

Type : Livre / Book

Type : Thèse / Thesis

Langue / Language : anglais / English

Logiciels -- Vérification

Classification Dewey : 004

Layaida, Nabil (Directeur de thèse / thesis advisor)

Rousset, Marie-Christine (19..-.... ; auteur en informatique) (Président du jury de soutenance / praeses)

Lugiez, Denis (19..-.... ; auteur en informatique) (Rapporteur de la thèse / thesis reporter)

Benzaken, Véronique (19..-....) (Rapporteur de la thèse / thesis reporter)

Université de Grenoble (2009-2014) (Organisme de soutenance / degree-grantor)

École doctorale mathématiques, sciences et technologies de l'information, informatique (Grenoble ; 199.-....) (Ecole doctorale associée à la thèse / doctoral school)

Laboratoire d'informatique de Grenoble (Laboratoire associé à la thèse / thesis associated laboratory)

Résumé / Abstract : Les contraintes arithmétiques sont largement utilisées dans les langages formels comme les expressions, les grammaires d'arbres et les chemins réguliers. Ces contraintes sont utilisées dans les modéles de contenu des types (XML Schemas) pour imposer des bornes sur le nombre d'occurrences de nœuds. Dans les langages de requêtes (XPath, XQuery), ces contraintes permettent de sélectionner les nœuds ayant un nombre limité de nœuds accessibles par une expression de chemin donnée. Les types et chemins étendus avec les contraintes de comptage constituent le prolongement naturel de leurs homologues sans comptage déjà considérés comme des constructions fondamentales dans les langages de programmation et les systèmes de type pour XML. Un des défis majeurs en programmation XML consiste à développer des techniques automatisées permettant d'assurer statiquement un typage correct et des optimisations de programmes manipulant les données XML. À cette fin, il est nécessaire de résoudre certaines tâches de raisonnement qui impliquent des constructions telles que les types et les expressions XPath avec des contraintes de comptage. Dans un futur proche, les compilateurs de programmes XML devront résoudre des problèmes de base tels que le sous-typage afin de s'assurer au moment de la compilation qu'un programme ne pourra jamais générer de documents non valides à l'exécution. Cette thèse étudie les logiques capables d'exprimer des contraintes de comptage sur les structures d'arbres. Il a été montré récemment que le mu-calcul sur les graphes, lorsqu'il est étendu à des contraintes de comptage portant exclusivement sur les nœuds successeurs immédiats est indécidable. Dans cette thèse, nous montrons que, sur les arbres finis, la logique avec contraintes de comptage est décidable en temps exponentiel. En outre, cette logique fournit des opérateurs de comptage selon des chemins plus généraux. En effet, la logique peut exprimer des contraintes numériques sur le nombre de nœuds descendants ou même ascendants. Nous présentons également des traductions linéaires d'expressions XPath et de types XML comportant des contraintes de comptage dans la logique.

Résumé / Abstract : Arithmetical constraints are widely used in formal languages like regular expressions, tree grammars and paths. In XML they are used to impose bounds on the number of occurrences described by content models of schema languages (XML Schema, RelaxNG). In query languages (XPath, XQuery), they allow selecting nodes that have a bounded number of nodes reachable by a given path expression. Counting types and paths are thus natural extensions of their countless counterparts already regarded as the core constructs in XML languages and type systems. One of the biggest challenges in XML is to develop automated techniques for ensuring static-type safety and optimization techniques. To this end, there is a need to solve some basic reasoning tasks that involve constructions such as counting XML schemas and XPath expressions. Every compiler of XML programs will have to routinely solve problems such as type and path type- checking, for ensuring at compile time that invalid documents can never arise as the output of XML processing code. This thesis studies efficient reasoning frameworks able to express counting constraints on tree structures. It was recently shown that the mu-calculus, when extended with counting constraints on immediate successor nodes is undecid able over graphs. Here we show that, when interpreted over finite trees, the logic with counting constraints is decidable in single exponential time. Furthermore, this logic allows more general counting operators. For example, the logic can pose numerical constraints on number of ancestors or descendants. We also present linear translations of counting XPath expressions and XML schemas into the logic.