Thèse soutenue

Extraction de code fonctionnel certifié à partir de spécifications inductives

FR  |  
EN
Auteur / Autrice : Pierre-Nicolas Tollitte
Direction : Catherine DuboisDavid Delahaye
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 06/12/2013
Etablissement(s) : Paris, CNAM
Ecole(s) doctorale(s) : École doctorale Informatique, télécommunications et électronique de Paris
Partenaire(s) de recherche : Laboratoire : Centre d'études et de recherche en informatique et communications (Paris)
Jury : Président / Présidente : Xavier Leroy
Examinateurs / Examinatrices : Hugo Herbelin, Mathieu Jaume
Rapporteurs / Rapporteuses : Pierre Letouzey, Vlad Rusu

Résumé

FR  |  
EN

Les outils d’aide à la preuve basés sur la théorie des types permettent à l’utilisateur d’adopter soit un style fonctionnel, soit un style relationnel (c’est-à-dire en utilisant des types inductifs). Chacun des deux styles a des avantages et des inconvénients. Le style relationnel peut être préféré parce qu’il permet à l’utilisateur de décrire seulement ce qui est vrai, de s’abstraire temporairement de la question de la terminaison, et de s’en tenir à une description utilisant des règles. Cependant, une spécification relationnelle n’est pas exécutable.Nous proposons un cadre général pour transformer une spécification inductive en une spécification fonctionnelle, en extrayant à partir de la première une fonction et en produisant éventuellement la preuve de correction de la fonction extraite par rapport à sa spécification inductive. De plus, à partir de modes définis par l’utilisateur, qui permettent de considérer les arguments de la relation comme des entrées ou des sorties (de fonction), nous pouvons extraire plusieurs comportements calculatoires à partir d’un seul type inductif.Nous fournissons également deux implantations de notre approche, l’une dans l’outil d’aide à la preuve Coq et l’autre dans l’environnement Focalize. Les deux sont actuellement distribuées avec leurs outils respectifs.