## TLA: Lamport's Temporal Logic of Actions

TLA is a linear-time temporal logic introduced by Leslie Lamport in The Temporal Logic of Actions (ACM TOPLAS 16(3), 1994, 872-923). Unlike other temporal logics, both systems and properties are represented as logical formulas, and logical connectives such as implication, conjunction, and existential quantification represent structural relations such as refinement, parallel composition, and hiding. TLA has been applied to numerous case studies.

This directory formalizes TLA in Isabelle/HOL, as follows:

- Theory Intensional prepares the ground by introducing basic syntax for "lifted", possibl-world based logics.
- Theories Stfun and Action represent the state and transition level formulas of TLA, evaluated over single states and pairs of states.
- Theory Init introduces temporal logic and defines conversion functions from nontemporal to temporal formulas.
- Theory TLA axiomatizes proper temporal logic.

Please consult the design notes for further information regarding the setup and use of this encoding of TLA.

The theories are accompanied by a small number of examples:

- Inc: Lamport's increment example, a standard TLA benchmark, illustrates an elementary TLA proof.
- Buffer: a proof that two buffers in a row implement a single buffer, uses a simple refinement mapping.
- Memory: a verification of (the untimed part of) Broy and Lamport's RPC-Memory case study, more fully explained in LNCS 1169 (the TLA solution is available separately).

Last modified: Sat Mar 5 00:54:49 CET 2005