Utiliser des démonstrateurs automatiques dans un assistant à la preuve
Auteur / Autrice : | Yacine El haddad |
Direction : | Frédéric Blanqui, Guillaume Burel |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 09/09/2021 |
Etablissement(s) : | université Paris-Saclay |
Ecole(s) doctorale(s) : | École doctorale Sciences et technologies de l'information et de la communication (Orsay, Essonne ; 2015-....) |
Partenaire(s) de recherche : | référent : École normale supérieure Paris-Saclay (Gif-sur-Yvette, Essonne ; 1912-....) |
Laboratoire : Laboratoire Méthodes formelles (Gif-sur-Yvette, Essonne ; 2021-....) | |
Jury : | Président / Présidente : David Delahaye |
Examinateurs / Examinatrices : Pascal Fontaine, Stéphane Lengrand, Sophie Tourret, Véronique Benzaken, Cézary Kaliszyk | |
Rapporteurs / Rapporteuses : Pascal Fontaine, Stéphane Lengrand |
Mots clés
Résumé
Lambdapi est un assistant de preuve qui permet à l’utilisateur la construction d’une preuve d’un théorème donné dans un langage universel basé sur le lambda-pi-calcul. Le but de cette thèse est de rajouter de l’automatisation à Lambdapi pour faire gagner du temps à l’utilisateur. Cette thèse présente trois contributions liées à l’intégration des démonstrateurs automatiques dans les assistants de preuve. La première contribution consiste en l’implémentation d’une tactique qui fait appel au démonstrateurs automatiques depuis Lambdapi à travers une plateforme tiers appelé Why3. Généralement, les démonstrateurs automatiques ne génèrent pas un certificat de preuve complet, d’où la deuxième contribution présentée dans cette thèse: la reconstruction de preuves générées par les démonstrateurs automatiques du premier ordre dans Lambdapi implémenté dans un outil appelé Ekstrakto. Enfin, ces démonstrateurs peuvent parfois effectuer des modifications sur la formule qu'ils sont en train de prouver. Le dernier résultat de la thèse est consacré à la certification des étapes de Skolemisation faites par les démonstrateurs automatiques. Un algorithme est présenté, montré correct et impleménté dans l'outil Skonverto.