From automata to cyclic proofs : equivalence algorithms and descriptive complexity - TEL - Thèses en ligne
Thèse Année : 2021

From automata to cyclic proofs : equivalence algorithms and descriptive complexity

Des automates aux preuves cycliques : algorithmes d’équivalence et complexité descriptive

Résumé

Computational models allow us to reason about programs by abstracting their operatingprocess. The choice of a suitable model for a given situation takes into account both itsexpressivity and properties such as the complexity of the associated problems. This thesisstudies computational models in order to develop tools for conception and analysis ofprograms.First we consider the language equivalence problem for automata, which has variousapplications especially in the formal verification field. Our starting point is a coinductivealgorithm HKC developed by Bonchi and Pous that exploits up-to techniques to comparefinite automata. We present a version of this algorithm that works in a slighty extendedsetting, so we can adapt it to Büchi automata. We also give a linear version of a test usedas a subroutine in HKC and a framework based on automata learning to evaluate theefficiency of equivalence algorithms.Secondly we explore the expressivity of a cyclic proof system seen as a calculation deviceby comparing it with existing computational models (multiheads automata and Gödel’sSystem T). This proof system corresponds to a type system for functional programs.If we restrict ourselves to functions from words to boolean, we get exactly the regularlanguages in the affine subsystem, and Logspace if we add the contraction rule. Withoutthis restriction the system coincides with System T on natural functions: the primitiverecursive functions in the affine case et the Peano definable functions with the contraction.
Les modèles de calcul permettent d'abstraire le fonctionnement des programmes afin de raisonner sur ceux-ci. Selon le problème étudié il est important de choisir un modèle approprié en terme d'expressivité mais aussi de propriétés. Cette thèse étudie différents modèles de calcul afin de développer des outils pour la conception et l'analyse de programmes.Dans un premier temps nous nous intéressons au problème d'équivalence d'automates, qui a de nombreuses applications notamment dans le domaine de la vérification de programmes. Le point de départ est un algorithme coinductif exploitant les techniques up-to développé par Bonchi et Pous pour comparer des automates finis. Nous redonnons cet algorithme dans un cadre légèrement plus général afin de l'étendre aux automates de Büchi.Nous donnons aussi une version linéaire d'une sous-routine de l'algorithme initial et présentons un cadre de test utilisant de l'apprentissage d'automates pour comparer de tels algorithmes d'équivalence. Dans un deuxième temps nous explorons le contenu calculatoire d'un système de preuves cycliques en le comparant à des modèles de calculs préexistants (automates à plusieurs têtes de lecture et système T de Gödel). Ce système de preuve correspond à un système de type cyclique pour des programmes fonctionnels. Nous montrons que si on se restreint aux fonctions des mots dans les booléens on obtient les langages réguliers pour le système affine et LogSpace en présence de la contraction. Sans cette restriction, le système coïncide avec système T sur les fonctions d'entiers naturels : les fonctions primitives récursives dans le cas affine et les fonctions Peano définissables en présence de la contraction.
Fichier principal
Vignette du fichier
PINAULT_Laureline_2021LYSEN024_These.pdf (1.32 Mo) Télécharger le fichier
Origine Version validée par le jury (STAR)

Dates et versions

tel-03412556 , version 1 (03-11-2021)

Identifiants

  • HAL Id : tel-03412556 , version 1

Citer

Laureline Pinault. From automata to cyclic proofs : equivalence algorithms and descriptive complexity. Logic in Computer Science [cs.LO]. Université de Lyon, 2021. English. ⟨NNT : 2021LYSEN024⟩. ⟨tel-03412556⟩
112 Consultations
262 Téléchargements

Partager

More