Méthodes et outils pour la spécification et la preuve de propriétés difficiles de programmes séquentiels

Martin Clochard 1, 2
1 TOCCATA - Certified Programs, Certified Tools, Certified Floating-Point Computations
LRI - Laboratoire de Recherche en Informatique, UP11 - Université Paris-Sud - Paris 11, Inria Saclay - Ile de France, CNRS - Centre National de la Recherche Scientifique : UMR8623
Résumé : Cette thèse se positionne dans le domaine de la vérification déductive de programmes, qui consiste à transformer une propriété à vérifier sur un programme en un énoncé logique, pour ensuite démontrer cet énoncé. La vérification effective d'un programme peut poser de nombreuses difficultés pratiques. En fait, les concepts mis en jeu derrière le programme peuvent suffire à faire obstacle à la vérification. En effet, certains programmes peuvent être assez courts et n'utiliser que des constructions simples, et pourtant s'avérer très difficiles à vérifier. Cela nous amène à la question suivante: dans le contexte d'un environnement de vérification déductive de programmes basé sur les démonstrateurs automatiques, quelles méthodes appliquer pour réduire l'effort nécessaire à la fois pour spécifier des comportements attendus complexes, ainsi que pour démontrer qu'un programme respecte ces comportements attendus? Pour mener notre étude, nous nous sommes placés dans le cadre de l'environnement de vérification déductive de programmes Why3. La vérification de programmes en Why3 est basée sur la génération de conditions de vérification, et l'usage de démonstrateurs externes pour les prouver, que ces démonstrateurs soient automatiques ou interactifs. Nous avons développé plusieurs méthodes, certaines générales et d'autres spécifiques à des classes de programmes, pour réduire l'effort manuel. Nos contributions sont les suivantes. Tout d'abord, nous ajoutons des fonctionnalités à Why3 pour assister le processus de vérification, notamment un mécanisme léger de preuve déclarative basé sur la notion d'indicateurs de coupures. Ensuite, nous présentons une méthode de vérification d'absence de débordement arithmétique pour une classe d'utilisation des entiers difficile à traiter par les méthodes standards. Enfin, nous nous intéressons au développement d'une bibliothèque générique pour la spécification et la preuve de programmes générateurs de code.
Type de document :
Thèse
Autre [cs.OH]. Université Paris-Saclay, 2018. Français. 〈NNT : 2018SACLS071〉
Liste complète des métadonnées

Littérature citée [76 références]  Voir  Masquer  Télécharger

https://tel.archives-ouvertes.fr/tel-01787689
Contributeur : Abes Star <>
Soumis le : lundi 7 mai 2018 - 17:09:08
Dernière modification le : mercredi 9 mai 2018 - 01:12:26

Fichier

76309_CLOCHARD_2018_archivage....
Version validée par le jury (STAR)

Identifiants

  • HAL Id : tel-01787689, version 1

Citation

Martin Clochard. Méthodes et outils pour la spécification et la preuve de propriétés difficiles de programmes séquentiels. Autre [cs.OH]. Université Paris-Saclay, 2018. Français. 〈NNT : 2018SACLS071〉. 〈tel-01787689〉

Partager

Métriques

Consultations de la notice

410

Téléchargements de fichiers

91