L'arithmétique de séparation - Laboratoire Méthodes Formelles
Communication Dans Un Congrès Année : 2023

L'arithmétique de séparation

Résumé

Nous, praticiens de la preuve de programmes, souhaitons que le processus de la vérification soit le plus automatique possible. Les meilleurs outils pour cela sont à l'heure actuelle les démonstrateurs SMT, qui combinent notamment la logique du premier ordre et l'arithmétique linéaire. Par opposition, le raisonnement inductif n'est pas un point fort des démonstrateurs automatiques. Or, les programmes utilisant des pointeurs le font souvent pour manipuler des structures récursives : listes, arbres, etc. Dans cet article, nous décrivons une approche qui permet d'amener la preuve de programmes avec pointeurs à la portée des démonstrateurs automatiques. L'idée consiste à projeter une structure récursive sur un domaine numérique, de sorte que les propriétés de possession et de séparation deviennent exprimables en terme de simples inégalités arithmétiques. En plus de simplifier la preuve, cela permet une spécification claire et naturelle. On illustre cette approche avec l'exemple classique du renversement en place d'une liste simplement chaînée.
Fichier principal
Vignette du fichier
main.pdf (413.96 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03886759 , version 1 (06-12-2022)
hal-03886759 , version 2 (04-01-2023)

Identifiants

  • HAL Id : hal-03886759 , version 2

Citer

Jean-Christophe Filliâtre, Andrei Paskevich. L'arithmétique de séparation. JFLA 2023 - 34èmes Journées Francophones des Langages Applicatifs, Jan 2023, Praz-sur-Arly, France. pp.274-283. ⟨hal-03886759v2⟩
207 Consultations
212 Téléchargements

Partager

More