Langages d'ordre supérieur : dualités et techniques de bisimulation
Auteur / Autrice : | Jean-Marie Madiot |
Direction : | Daniel Hirschkoff, Davide Sangiorgi |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 31/03/2015 |
Etablissement(s) : | Lyon, École normale supérieure en cotutelle avec Università degli studi (Bologne, Italie) |
Ecole(s) doctorale(s) : | École doctorale InfoMaths (Lyon ; 2009-....) |
Partenaire(s) de recherche : | Laboratoire : Laboratoire de l'informatique du parallélisme (Lyon ; 1988-....) - Department of Computer Science and Engineering [Bologna] / DISI |
Jury : | Président / Présidente : Pierre-Louis Curien |
Examinateurs / Examinatrices : Daniel Hirschkoff, Davide Sangiorgi, Pierre-Louis Curien, Vasileios Koutavas, Daniele Varacca, Björn Victor | |
Rapporteur / Rapporteuse : Vasileios Koutavas, Daniele Varacca, Björn Victor |
Mots clés
Mots clés contrôlés
Mots clés libres
Résumé
Les comportements des processus concurrents peuvent être exprimés en utilisant des calculs de processus, des langages formels simples qui permettent de démontrer des résultats mathématiques précis sur les interactions entre processus. Un exemple très simple est CCS, un autre exemple est le pi-calcul, plus expressif grâce à un mécanisme de communication de canaux. Dans ce dernier, on peut instaurer un système de types (pour raffiner l'analyse aux environnements plus contraints) et encoder le lambda-calcul (qui représente les calculs séquentiels).Certains de ces calculs, comme CCS ou des variantes du pi-calcul comme les calculs de fusions, ont une certaine propriété de symétrie. On utilise dans un premier temps cette symétrie comme un outil, pour prouver que deux encodages du lambda-calcul dans le pi-calcul sont en fait équivalents.Cette preuve nécessitant un système de types et une forme de symétrie, on se pose la question de l'existence d'un système de types pour les autres calculs symétriques, notamment les calculs de fusion, à laquelle on répond par la négative avec un théorème d'impossibilité.En analysant ce théorème, on découvre un contrainte fondamentale de ces calculs qui empêche l'utilisation des types, à savoir la présence d'une notion de relation d'équivalence entre les canaux de communication. Le relâchement de cette contrainte pour obtenir une relation de pré-ordre engendre un calcul intéressant qui recouvre des notions importantes du pi-calcul, absentes dans les calculs de fusion : les types et les noms privés. La première partie de la thèse se concentre sur l'étude de ce calcul.La deuxième partie de la thèse se concentre sur la bisimulation, une méthode pour établir l'équivalence de deux agents dans des langages d'ordre supérieur, par exemple le pi-calcul ou le lambda-calcul. Une amélioration de cette méthode est la théorie des techniques modulo, très puissante, mais qui malheureusement s'applique uniquement aux systèmes de premier ordre, comme les automates ou CCS.Cette thèse s'applique alors à décrire les langages d'ordre supérieur en tant que systèmes du premier ordre. On récupère ainsi la théorie générale des techniques modulo pour ces langages, en prouvant correctes la correspondance induite et les techniques spécifiques à chaque langage. On détaille les tenants et aboutissants de cette approche, pour fournir les outils nécessaires à son utilisation pour d'autres langages d'ordre supérieur.