Spy Game: Verifying a Local Generic Solver in Iris - ANR - Agence nationale de la recherche Accéder directement au contenu
Article Dans Une Revue Proceedings of the ACM on Programming Languages Année : 2020

Spy Game: Verifying a Local Generic Solver in Iris

Résumé

We verify the partial correctness of a "local generic solver", that is, an on-demand, incremental, memoizing least fixed point computation algorithm. The verification is carried out in Iris, a modern breed of concurrent separation logic. The specification is simple: the solver computes the optimal least fixed point of a system of monotone equations. Although the solver relies on mutable internal state for memoization and for "spying", a form of dynamic dependency discovery, it is apparently pure: no side effects are mentioned in its specification. As auxiliary contributions, we provide several illustrations of the use of prophecy variables, a novel feature of Iris; we establish a restricted form of the infinitary conjunction rule; and we provide a specification and proof of Longley's modulus function, an archetypical example of spying.
Fichier principal
Vignette du fichier
main.pdf (682.89 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-02351562 , version 1 (06-11-2019)

Identifiants

Citer

Paulo Emílio de Vilhena, François Pottier, Jacques-Henri Jourdan. Spy Game: Verifying a Local Generic Solver in Iris. Proceedings of the ACM on Programming Languages, 2020, 4 (POPL), ⟨10.1145/3371101⟩. ⟨hal-02351562⟩
131 Consultations
101 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More