Refinement Types for TLA+

Stephan Merz 1 Hernán Vanzetto 1, 2
1 VERIDIS - Modeling and Verification of Distributed Algorithms and Systems
MPII - Max-Planck-Institut für Informatik, Inria Nancy - Grand Est, LORIA - FM - Department of Formal Methods
Abstract : TLA+ is a specification language, mainly intended for concurrent and distributed systems. Its non-temporal fragment is based on a variant of (untyped) ZF set theory. Motivated by the integration of the TLA+ Proof System with SMT solvers or similar tools based on multi-sorted first-order logic, we define a type system for TLA+ and we prove its soundness. The system includes refinement types, which fit naturally in set theory. Combined with dependent function types, we obtain type annotations on top of an untyped specification language, getting the best of both the typed and untyped approaches. After implementing the type inference algorithm, we show that the resulting typing discipline improves the verification capabilities of the proof system.
Document type :
Conference papers
Complete list of metadatas

https://hal.inria.fr/hal-01063516
Contributor : Stephan Merz <>
Submitted on : Friday, September 12, 2014 - 11:57:28 AM
Last modification on : Tuesday, February 19, 2019 - 3:40:03 PM

Identifiers

Collections

Citation

Stephan Merz, Hernán Vanzetto. Refinement Types for TLA+. NASA Formal Methods - 6th International Symposium, 2014, Houston, Texas, United States. pp.143-157, ⟨10.1007/978-3-319-06200-6_11⟩. ⟨hal-01063516⟩

Share

Metrics

Record views

321