Back to Search Start Over

Démonstration de Steel, une logique de séparation concurrente pour prouver des programmes F* (démonstration)

Authors :
Fromherz, Aymeric
Reitz, Antonin
Programming securely with cryptography (PROSECCO)
Inria de Paris
Institut National de Recherche en Informatique et en Automatique (Inria)-Institut National de Recherche en Informatique et en Automatique (Inria)
Chantal Keller
Timothy Bourke
Bourke, Timothy
Source :
Journées Francophones des Langages Applicatifs, 33èmes Journées Francophones des Langages Applicatifs, 33èmes Journées Francophones des Langages Applicatifs, Jun 2022, Saint-Médard-d'Excideuil, France. pp.269-271
Publication Year :
2022
Publisher :
HAL CCSD, 2022.

Abstract

National audience; Steel est un framework pour développer et prouver des programmes concurrents écrits en F , un langage de programmation avec types dépendants ainsi qu'un assistant de preuve. Inspiré par Iris, Steel repose sur une logique de séparation concurrente imprédicative qui inclut un modèle mémoire fondé sur des monoïdes commutatifs partiels et permet l'utilisation d'invariants alloués dynamiquement pour raisonner sur des interactions concurrentes sans recourir à des verrous ("locks"). Afin d'offrir une vérification semi-automatique, Steel sépare les obligations de preuves générées en deux parties : une procédure de décision partielle, implémentée à l'aide du moteur de tactiques de F , raisonne sur la logique de séparation tandis qu'un solveur SMT permet de décharger automatiquement des obligations de preuves exprimées en logique du premier ordre, par exemple liées à de l'arithmétique. Dans cette démonstration, nous présentons plusieurs bibliothèques vérifiées qui illustrent l'expressivité et la programmabilité de Steel.

Details

Language :
French
Database :
OpenAIRE
Journal :
Journées Francophones des Langages Applicatifs, 33èmes Journées Francophones des Langages Applicatifs, 33èmes Journées Francophones des Langages Applicatifs, Jun 2022, Saint-Médard-d'Excideuil, France. pp.269-271
Accession number :
edsair.dedup.wf.001..629cb18555497ee6ac34f577316b042d