Auxiliary Variables in TLA+ - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Rapport (Rapport De Recherche) Année : 2017

Auxiliary Variables in TLA+

Résumé

With state-based methods, checking that an implementation satisfies a higher-level specification requires describing how the higher-level concepts in the specification are represented by the lower-level data structures of the implementation. This approach was first proposed in the domain of sequential systems by Hoare in 1972. Hoare called the description an abstraction function. The generalization to concurrent systems was called a refinement mapping by Abadi and Lamport. They observed that constructing a refinement mapping may require adding auxiliary variables to the implementation–variables that do not alter the behavior of the actual variables and need not be implemented. This paper is about adding auxiliary variables to TLA+ specifications. The ideas we present should be applicable to other state-based specification methods, but we make no attempt to translate them into those other methods. We hope that a future paper will present the basic ideas in a language-independent way and will contain soundness and completeness proofs. Our goal here is to teach engineers writing TLA+ specifications how to add auxiliary variables when they need them.
Fichier principal
Vignette du fichier
auxiliary.pdf (475.94 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01488617 , version 1 (13-03-2017)
hal-01488617 , version 2 (28-05-2017)

Identifiants

Citer

Leslie Lamport, Stephan Merz. Auxiliary Variables in TLA+. [Research Report] Inria Nancy - Grand Est (Villers-lès-Nancy, France); Microsoft Research. 2017. ⟨hal-01488617v1⟩
257 Consultations
107 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More