L'arithmétique de séparation - Laboratoire Méthodes Formelles Access content directly
Conference Papers Year : 2023

L'arithmétique de séparation

Abstract

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 (411.72 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

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

Identifiers

  • HAL Id : hal-03886759 , version 1

Cite

Jean-Christophe Filliâtre, Andrei Paskevich. L'arithmétique de séparation. JFLA 2023 - Journées Francophones des Langages Applicatifs, Jan 2023, Praz-sur-Arly, France. ⟨hal-03886759v1⟩
135 View
164 Download

Share

Gmail Facebook X LinkedIn More