TLA+ in Practice and Theory

This 4-part series and a 40-minute video of a summary talk covers in detail the mathematical theory and design principles used in TLA+.

  • Part 1: The Principles of TLA+

    TLA+ is a formal specification and verification language intended to help engineers specify, design and reason about complex, real-life algorithms and software or hardware systems. We explore its motivation, application and principles of design.

  • Part 2: The + in TLA+

    We explore the data logic of TLA+, the means by which TLA+ specifications describe a state of computation: its data structures. To do that, we first cover the basics of mathematical logic.

  • Part 3: The (Temporal) Logic of Actions

    TLA, the Temporal Logic of Actions is the core of TLA+. It is a temporal logic that minimizes the use of temporal reasoning in favor of more ordinary mathematics. It is a general mathematical framework for describing and reasoning about algorithms and systems.

  • Part 4: Order in TLA+

    We learn how to encapsulate and compose TLA+ specifications, of the precise mathematical definition of abstraction, and compare TLA+'s notion of abstraction with those of other formalisms. Plus some various cool stuff.

  • Curry On Talk: The Practice and Theory of TLA+

    My Curry On talk about TLA+