Specifying systems: the TLA+ language and tools for hardware and software engineers

Front Cover
Addison-Wesley, 2003 - Computers - 364 pages
1 Review
-- Written by one of the leaders of computer science in the fields of concurrent computing and distributed systems.

-- Both a tutorial on specifying systems and a complete reference to TLA+ - the Temporal Logic of Actions language - by its inventor.

-- Useful for software and hardware engineers working in areas such as networking, communications, and data management.

This book is the distillation of over 25 years of work by one of the world's most renowned computer scientists. A specification is a written description of what a system is supposed to do, plus a way of checking to make sure that it works. Specifying a system helps us understand it. It's a good idea to understand a system before building it, so it's a good idea to write a specification of a system before implementing it. The most effective tool to describe a specification is the Temporal Logic of Actions, or TLA, because it provides a mathematical, i.e. precise, foundation for describing systems. TLA+ is the language the author developed to write the mathematical specifications. TLA+ is available freely on the web. It can be used for both software and hardware. In fact, Intel is using TLA+ with great success in the design of a new chip. The book is divided into four parts. The first part contains all that most programmers and engineers need to know about writing specifications. The second part contains more advanced material for more sophisticated readers. The third and fourth parts comprise a reference manual for TLA+ - both the language itself as well as its tools.

From inside the book

What people are saying - Write a review

Review: Specifying Systems: The Tla+ Language and Tools for Hardware and Software Engineers

User Review  - Max Lybbert - Goodreads

I've been reading several books by mathematician programmers (Donal Knuth, Alexander Stepanov, Edsger Dijkstra), and one book about UML. TLA+ does what UML is supposed to: provide a solid foundation ... Read full review


A Little Simple Math
Specifying a Simple Clock
An Asynchronous Interface

14 other sections not shown

Common terms and phrases

References to this book

All Book Search results »

About the author (2003)

Leslie Lamport, a computer scientist, is well known for his contributions to concurrent computing and distributed systems. His "Time, Clocks, and the Ordering of Events in a Distributed System" paper has been honored for its enduring influence on the field. Lamport is also known for creating the LaTeX typesetting system and the best-selling book, LaTeX, Second Edition, which documents it (Addison-Wesley, 1994). Now at Microsoft Research in Mountain View, California, he began his work on TLA+ at the Digital (later Compaq) Systems Research Center in Palo Alto. Lamport, who earned his Ph.D. in mathematics from Brandeis University, is a member of the National Academy of Engineering.


Bibliographic information