TLA+ Proofs
This work addresses the challenge of formal verification for researchers and engineers in computer science, but it is incremental as it focuses on tool usage rather than new theoretical advancements.
The paper tackles the problem of writing and verifying formal proofs in TLA+ by describing how to use TLAPS and the Toolbox, with Peterson's mutual exclusion algorithm as an example to demonstrate their features for managing complex proofs.
TLA+ is a specification language based on standard set theory and temporal logic that has constructs for hierarchical proofs. We describe how to write TLA+ proofs and check them with TLAPS, the TLA+ Proof System. We use Peterson's mutual exclusion algorithm as a simple example to describe the features of TLAPS and show how it and the Toolbox (an IDE for TLA+) help users to manage large, complex proofs.