current edition

You can download the book right here. It is 6+236 pages.


  1. Preface
  2. Basic Theories
  3. Basic Data Structures
  4. Function Theory
  5. Program Theory
  6. Programming Language
  7. Recursive Definition
  8. Theory Design and Implementation
  9. Concurrency
  10. Interaction
  11. Exercises
  12. Reference

solutions to exercises are available to course instructors
pages 223 through 235 (laws etc.) for printing
change log

中文版 (Chinese version)

The course Formal Methods of Software Design based on the book is available online free. It includes lectures and transcripts.

author's website