Specifying Systems by Leslie Lamport

Specifying Systems

The TLA+ Language and Tools for Hardware and Software Engineers

Leslie Lamport

Pearson Education · Print & ebook · July 19, 2002

This book is the distillation of over 25 years of work by one of the world's most renowned computer scientists.

Buy on Amazon

We earn from qualifying purchases.

Who it’s for
Learn to describe systems precisely, check whether they work, and consult TLA+ language and tools references.
Themes
System specification and verification, TLA+ language and tools, Hardware and software systems
Genres
Systems Design, Computer Science, Programming Basics

Nearest books

Matched by what the books are about, then ordered by what their readers also loved. Most of these share its genre: Programming Basics.

  1. Understanding Software DynamicsRichard L. Sites43% match
  2. Rust in ActionTim McNamara42% match
  3. Clojure ProgrammingChas Emerick, Christophe Grand40% match
  4. Build a Large Language Model (from Scratch)Sebastian Raschka44% match
  5. The Linux Programming InterfaceMichael Kerrisk49% match
  6. Programming RustJim Blandy, Jason Orendorff38% match
  7. C++ Programming Language, theBjarne Stroustrup39% match
  8. Domain-driven DesignEric Evans42% matchAlso shares Systems Design

Start with three books, and this one can be the first.

Members get a new edition every morning: a route out from their books to essays, research and talks, with the reason for each.

Start with this book

About this book

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.

Continue reading

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.

System Specifications

Learn to describe systems precisely, check whether they work, and consult TLA+ language and tools references.

Come here for

  • Writing precise system specifications with TLA and TLA+
  • Advanced material for more sophisticated readers

Expect

  • Guidance on writing specifications for programmers and engineers
  • Separate language and tools reference sections

Where it sits

Systems Design86%
Computer Science33%
Programming Basics25%

Percentages are BookFrontier’s reading of the book.

Publisher categories

  • Parallel Programming
  • Software Development
Authors
Leslie Lamport
Publisher
Pearson Education
Published
July 19, 2002
Format
Print & ebook
Theme
System specification and verification · TLA+ language and tools · Hardware and software systems
Reading lane
Parallel Programming