Validating Traces of Distributed Programs Against TLA+ Specifications
Not on the map. Why?
Abstract (arXiv)
TLA+ is a formal language for specifying systems, including distributed algorithms, that is supported by powerful verification tools. In this work we present a framework for relating traces of distributed programs to high-level specifications written in TLA+. The problem is reduced to a constrained model checking problem, realized using the TLC model checker. Our framework consists of an API for instrumenting Java programs in order to record traces of executions, of a collection of TLA+ operators that are used for relating those traces to specifications, and of scripts for running the model checker. Crucially, traces only contain updates to specification variables rather than full values, and developers may choose to trace only certain variables. We have applied our approach to several distributed programs, detecting discrepancies between the specifications and the implementations in all cases. We discuss reasons for these discrepancies, best practices for instrumenting programs, and how to interpret the verdict produced by TLC.
Key facts. Cited by 5 papers in the map (data through 14 Oct 2026). First posted on arXiv 24 Apr 2024.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2025: 1; 2026: 4.
5 papers.
- 2025SysMoBench: Evaluating AI on Formally Modeling Complex Real-World Systemscited by 2
- 2026Can LLMs Write Correct TLA+ Specifications? Evaluating Natural-Language-to-TLA+ Generationcited by 1
- 2026TLA-Prover: Verifiable TLA+ Specification Synthesis via Preference-Optimized Low-Rank Adaptationcited by 1
- 2026Specula: Scaling formal specifications for autonomous model checking of system codecited by 0
- 2026TLA-Verus: Generating and Solving Temporal Proof Obligations with LLM Agentscited by 0
- 2026TLA-Verus: Generating and Solving Temporal Proof Obligations with LLM Agents10 Oct 2026
- 2026Specula: Scaling formal specifications for autonomous model checking of system code28 Jul 2026
- 2026TLA-Prover: Verifiable TLA+ Specification Synthesis via Preference-Optimized Low-Rank Adaptation4 Jun 2026
- 2026Can LLMs Write Correct TLA+ Specifications? Evaluating Natural-Language-to-TLA+ Generation4 Jun 2026
- 2025SysMoBench: Evaluating AI on Formally Modeling Complex Real-World Systems27 Sep 2025