Section: Software

The TLA+ proof system

Participants : Stephan Merz [correspondent] , Hernán-Pablo Vanzetto.

TLAPS, the TLA+ proof system, is a platform for developing and mechanically verifying TLA+ proofs. It is developed at the Joint MSR-Inria Centre. The TLA+ proof language is declarative and based on standard mathematical logic; it supports hierarchical and non-linear proof construction and verification. TLAPS consists of a proof manager that interprets the proof language and generates a collection of proof obligations that are sent to backend verifiers that include theorem provers, proof assistants, SMT solvers, and decision procedures.

TLAPS is publically available at http://msr-inria.inria.fr/~doligez/tlaps/ , it is distributed under a BSD-like license. It handles the non-temporal part of TLA+ and can currently be used to prove safety, but not liveness properties. Its backends include a tableau prover for first-order logic, an encoding of TLA+ in the proof assistant Isabelle, and a backend for interfacing with SMT solvers. The SMT backend has been improved significantly in 2012 and is now considered by users as the most useful backend prover for system verification. Version 1.0 of TLAPS was released in January 2012, followed by version 1.1 in November, and the system was presented at the conference FM 2012 [15] .