Thèse soutenue

Analyse statique certifiée en logique du premier ordre multi-sortée

FR  |  
EN
Auteur / Autrice : Pierre-Emmanuel Cornilleau
Direction : Thomas Jensen
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 25/03/2013
Etablissement(s) : Cachan, Ecole normale supérieure
Ecole(s) doctorale(s) : École doctorale Mathématiques, télécommunications, informatique, signal, systèmes, électronique (Rennes)
Partenaire(s) de recherche : Laboratoire : INRIA - IRISA - CELTIQUE
Jury : Examinateurs / Examinatrices : Viktor Kuncak, Olivier Ridoux, Frédéric Besson
Rapporteurs / Rapporteuses : Andy M. King, Stephan Merz

Mots clés

FR  |  
EN

Résumé

FR  |  
EN

L'analyse statique est utilisée pour vérifier de manière formelle qu'un programme ne fait pas d'erreurs, mais un analyseur statique est lui même un programme complexe sujet aux erreurs. Une analyse statique formalisée comme un interpreteur abstrait peut être prouvée correcte, cependant un telle preuve ne porte pas directement sur l'implementation de l'analyseur. Pour résoudre cette difficultée, nous proposons de générer des conditions de vérification (VCs, des formules logiques valides seulement si le résultat de l'analyseur est correct), et de les décharger à l'aide d'un prouveur de théorèmes automatique (ATP). Les VCs générées appartiennent à la logic du premier ordre multi-sortée (MSFOL), une logique utilisée avec succés en vérification déductive, suffisament expressive pour encoder les résultats d'analyses complexes et pour formaliser la sémantique operationnelle d'un langage objet, ce qui nous permet de prouver la correction des VCs générées à l'aide d'outils de vérification deductive. Pour assurer que les VCs puissent être déchargée automatiquement pour des analyses du tas, nous introduisons un calcul de VCs appartenant à un fragment décidable de MSFOL, et afin de pouvoir utiliser le même calcul pour différentes analyses, nous décrivons une famille d'analyses à l'aide d'une fonction de concretisation et d'un instrumentation de la sémantique paramétrées. Pour améliorer la fiabilité des ATPs, nous étudions aussi la certification de résultat des proveurs de satisfiabilité modulo théories, une famille d'ATPs dédiée à MSFOL. Nous proposons un système de preuve et un vérifieur modulaires, qui s'appuient sur des vérifieur dédiés aux théories sous-jacentes.