Logique De Requêtes À La Xpath : Systèmes De Preuve Et Pertinence Pratique Anthony Lick
Total Page:16
File Type:pdf, Size:1020Kb
Logique de requêtes à la XPath : systèmes de preuve et pertinence pratique Anthony Lick To cite this version: Anthony Lick. Logique de requêtes à la XPath : systèmes de preuve et pertinence pratique. Logique en informatique [cs.LO]. Université Paris-Saclay, 2019. Français. NNT : 2019SACLN016. tel-02276423 HAL Id: tel-02276423 https://tel.archives-ouvertes.fr/tel-02276423 Submitted on 2 Sep 2019 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. XPath-like uery Logics: Proof Systems and Real-World Applicability hèse de doctorat préparée à l’École Normale Supérieure Paris-Saclay au sein du Laboratoire Spéciication & Vériication Présentée et soutenue à Cachan, le 8 juillet 2019, par Anthony Lick Composition du jury : Joachim N Rapporteur Professeur, INRIA Lille Alwen T Rapporteur Senior Lecturer, Australian National University Véronique B Examinatrice Professor, Université Paris-Sud Diego F Examinateur Chargé de Recherche, CNRS Andrzej I Examinateur Professor, University of Łódź Sara N Présidente du Jury Professor, University of Helsinki David B Co-encadrant de thèse Maître de Conférences, ENS Paris-Saclay Sylvain S Directeur de thèse Maître de Conférences, ENS Paris-Saclay hèse de doctorat ED STIC, NNT 2019SACLN016 XPath-like uery Logics: Proof Systems and Real-World Applicability Doctoral Thesis Anthony Lick c 2019 Anthony Lick licensed under Creative Commons License CC-BY-ND Abstract Motivated by applications ranging from XML processing to runtime veriication of pro- grams, many logics on data trees and data streams have been developed in the literature. hese ofer diferent trade-ofs between expressiveness and computational complexity; their satisi- ability problem has oten non-elementary complexity or is even undecidable. Moreover, their study through model-theoretic or automata-theoretic approaches can be computationally im- practical or lacking modularity. In a irst part, we investigate the use of proof systems as a modular way to solve the satisiability problem of data logics on linear structures. For each logic we consider, we develop a sound and complete hypersequent calculus and describe an optimal proof search strategy yielding an NP decision procedure. In particular, we exhibit an NP-complete fragment of the tense logic over data ordinals—the full logic being undecidable—, which is exactly as expressive as the two-variable fragment of the irst-order logic on data ordinals. In a second part, we run an empirical study of the main decidable XPath-like logics pro- posed in the literature. We present a benchmark we developed to that end, and examine how these logics could be extended to capture more real-world queries without impacting the com- plexity of their satisiability problem. Finally, we discuss the results we gathered from our benchmark, and identify which new features should be supported in order to increase the practical coverage of these logics. i Acknowledgements ∗ First of all, I would like to thank my two PhD advisors, David Baelde and Sylvain Schmitz, for being the best advisors one could hope for. hese three years would not have been the same without all your precious advices and support. It has been a pleasure working with you! I would also like to thank the reviewers of my thesis, Joachim Niehren and Alwen Tiu, for their valuable comments and thorough proofreading, especially given the tight deadline we asked you to meet. I also thank the other members of the jury—Véronique Benzaken, Diego Figueira, Andrzej Indrzejczak, and Sara Negri—for accepting to evaluate my work. More generally, I say thank you to every member of LSV for making this lab such an amazing place. his lab really has a unique atmosphere, and I wish you all the best for your new adventures in Saclay. As for me, I will now begin a new career as a teacher in Prépa, ater a irst taste at the ENS Paris-Saclay. In that regard, I thank everyone who teaches at the département d’informatique. I especially thank Claudine Picaronny, as I gave exercise sessions in maths and computer science under her direction for the irst two years. She gave me numerous advices, and I am grateful for all the teaching experience that she shared with me. Equivalently, I thank Stéphane Leroux and Philippe Schnoebelen, for whom I did the same during this last year. I really enjoyed working with you. I also thank Virginie, Imane, Pierre, Alexis, Francis and Hugues for keeping this lab running. hank you Jean for all your fascinat- ing stories. I thank Alain and Serge for all their quotes for the best of. Speaking of quotes from the best of, I thank Simon for being the greatest oice neighbour, even though he could not concentrate without performing some air batery (or just batery…). I also thank Antoine—my other oice neighbour—whom, I am sure, shared my pain about the air batery but was too polite to complain. I say thank you to all the PhD students, for the laughs and discussions we shared during lunch, gouter, cofee breaks or sometimes dinner. I thank Alessio for our shared adventures in India. And I thank his oice mate Adrien, even if I am disappointed he failed his duty to show OSS 117 to Alessio. I thank Poli, Marco, Biatch, Papy and Vincent for the tentative tennis sessions which lasted for a solid six weeks, and for the beer sessions which lasted longer. I also thank them, along with Grosxor, Kulu, Gac, Edwin, Meliss, Mathilde, and Aurianne, for all the “potatoes and cheese” holidays. I thank Nobody for buying me food every time he needed me to reinstall Linux on his computer. I now thank everybody who should have found the hidden word on this page. Président & Présidente, for hosting the upcoming party at their place, for all the movie nights, and all the dog walks. Samy & Sarah for all the cinema sessions, and the game nights on the Switch. Joris for his pétanque balls. Romaing for his improbable adventures. I thank Davy, Doc, Japan Boy, Skippy. ∗Work funded by ANR-14-CE28-0005 . iii iv ACKNOWLEDGEMENTS I thank Alpha & Écho for helping me writing this thesis, and I thank Isaac for creating a diversion at the maternity in the meantime. hank you Aloa for warming my lap, Yang for drooling a bit on me, and Miete for the cuddles and the scars. hank you Caramelle for always wanting more belly rubs. I thank my family, all those who could came to my defence, and all those who could not. I thank my parents and my brother for always supporting me, and for helping organise the pot! Finally, thank you StackOverlow, for always being there for me. Contents Chapter 1. Introduction 1 1.1. Structures with Data 1 1.1.1. Data Trees 1 1.1.2. Data Words and Ordinals 2 1.2. Data Logics 3 1.2.1. he Satisiability Problem 3 1.2.2. Data Logics 4 1.2.3. Fragments and Complexity 7 1.3. Contributions 10 1.3.1. Efective Proof Systems 10 1.3.2. XPath in the Real World 11 Part 1. Efective Proof Systems for Tense Logic 13 Chapter 2. Preliminaries 15 2.1. Introduction 15 2.2. Propositional Logic 16 2.2.1. Syntax 16 2.2.2. Semantics 17 2.2.3. Sequent Calculus 17 2.2.4. Soundness and Completeness 18 2.3. Future Looking Logic on Linear Frames 19 2.3.1. Syntax 19 2.3.2. Semantics 19 2.3.3. Sequent Calculus 20 2.4. Tense Logic on Linear Frames 21 2.4.1. Modal Logic on Weak Total Orders 22 2.4.2. Semantics 22 2.4.3. Axiomatisation 23 2.4.4. First-Order Logic with Two Variables 23 2.4.5. A First Proof System for Kt4.3 25 2.4.6. Finite Model Property 26 Chapter 3. Tense Logic over Linear Frames 29 3.1. Introduction 29 3.2. Hypersequents with Clusters 30 3.2.1. Weak Total Orders 30 v vi CONTENTS 3.2.2. Finite Models and Hypersequents with Clusters 30 3.2.3. Deinitions and Basic Meta-heory 31 3.2.4. Proof System 33 3.2.5. Soundness 37 3.2.6. Completeness and Complexity 37 3.3. Extensions 41 3.4. First-Order Logic with Two Variables 43 3.5. Discussion 43 Chapter 4. Tense Logic over Ordinals 45 4.1. Introduction 45 4.2. Tense Logic over Ordinals 46 4.2.1. Syntax 46 4.2.2. Ordinal Semantics 46 4.3. Axiomatisation 47 4.4. Hypersequents with Clusters 48 4.4.1. Semantics 48 4.4.2. Proof System 48 4.4.3. Soundness 50 4.4.4. Completeness and Complexity 53 4.5. Logic on Given Ordinals 56 4.6. Related Work and Conclusion 58 Chapter 5. Tense Logic over Data Ordinals 59 5.1. Introduction 59 5.2. Freeze Tense Logic over Ordinals 60 5.2.1. Syntax 60 5.2.2. Data Ordinal Semantics 61 5.3. Hypersequents with Clusters 62 5.3.1. Semantics 62 5.3.2. Proof System 63 5.3.3. Soundness 64 5.4. Restricted Logic and Completeness 64 5.4.1. Restricted Syntax 65 5.4.2. Completeness and Complexity 65 5.5. Restricted Logic on Given Ordinals 70 5.6.