## 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).

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