Data Refinement
The goal of this book is to provide a comprehensive and systematic introduction to the important and highly applicable method of data refinement and the simulation methods used for proving its correctness. The authors concentrate in the first part on the general principles needed to prove data refinement correct. They begin with an explanation of the fundamental notions, showing that data refinement proofs reduce to proving simulation. The topics of Hoare Logic and the Refinement Calculus are introduced and a general theory of simulations is developed and related to them. Accessibility and comprehension are emphasized in order to guide newcomers to the area.
The book's second part contains a detailed survey of important methods in this field, such as VDM, and the methods due to Abadi & Lamport, Hehner, Lynch and Reynolds, Back's refinement calculus and Z. All these methods are carefully analysed, and shown to be either imcomplete, with counterexamples to their application, or to be always applicable whenever data refinement holds. This is shown by proving, for the first time, that all these methods can be described and analyzed in terms of two simple notions: forward and backward simulation.
The book is self-contained, going from advanced undergraduate level and taking the reader to the state of the art in methods for proving simulation.
- Broad-based and comparative treatment of methods
- Exercises provided for students
- Historical illustrations
Reviews & endorsements
"The presentation of the theory is backed up by some substantial examples...and this together with the extensive historical notes makes the book an extremely useful reference manual and graduate text."
Product details
January 1999Hardback
9780521641708
436 pages
236 × 159 × 32 mm
0.827kg
18 b/w illus. 93 exercises
Available
Table of Contents
- Part I. Theory:
- 1. Introduction to data refinement
- 2. Simulation as a proof method for data refinement
- 3. Relations and recursion
- 4. Properties of simulation
- 5. Notation and semantics
- 6. A Hoare logic
- 7. Simulation and Hoare logic
- 8. An extension to total correctness
- 9. Simulation and total correctness
- 10. Refinement calculus
- Part II. Applications:
- 11. Reynolds' method
- 12. VDM
- 13. Z, Hehner's method and Back's refinement calculus
- 14. Refinement methods due to Abadi & Lamport and Lynch. Appendix A. An introduction to Hoare logic
- Appendix B. A primer on ordinals and transfinite induction
- Appendix C. Notational convention
- Appendix D. Precedences
- Bibliography
- Index.