9780521641708

Data Refinement: Model-Oriented Proof Methods and their Comparison

by
  • ISBN13:

    9780521641708

  • ISBN10:

    0521641705

  • Format: Hardcover
  • Copyright: 1999-01-28
  • Publisher: Cambridge University Press
  • Purchase Benefits
  • Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $154.00 Save up to $4.62
  • Buy New
    $149.38
    Add to Cart Free Shipping

    SPECIAL ORDER: 1-2 WEEKS

Supplemental Materials

What is included with this book?

  • The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

Summary

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.

Table of Contents

Preface viii
Part I: Theory 1(254)
1 Introduction to Data Refinement
2(17)
1.1 Goal and Motivation
2(2)
1.2 Introduction to Data Refinement
4(13)
1.3 Historical Background
17(2)
2 Simulation as a Proof Method for Data Refinement
19(30)
2.1 Introducing Simulation
19(3)
2.2 Soundness and (In)completeness of Simulation
22(3)
2.3 Data Invariants, Abstraction Relations, and Normal Variables
25(9)
2.4 Towards a Syntactic Characterization of Simulation
34(12)
2.5 Historical Background
46(3)
3 Relations and Recursion
49(24)
3.1 Partial Orders and Monotonicity
49(1)
3.2 Binary Relations
50(5)
3.3 Recursion and Termination -- the Mu-Calculus
55(1)
3.4 Relational Semantics of Recursion -- the Continuous Mu-Calculus
56(6)
3.5 Reasoning about Termination -- the Monotone Mu-Calculus
62(9)
3.6 Historical Background
71(2)
4 Properties of Simulation
73(17)
4.1 Composing Simulation Diagrams
74(3)
4.2 Implications between Simulations
77(3)
4.3 Data Invariants and Totality of Abstraction Relations
80(1)
4.4 Soundness of Simulation
81(1)
4.5 Maximal Data Types
82(1)
4.6 Completeness
83(4)
4.7 Historical Background
87(3)
5 Notation and Semantics
90(31)
5.1 Introduction
91(2)
5.2 Predicates
93(15)
5.3 Programs
108(4)
5.4 Relational Terms
112(3)
5.5 Correctness Formulae
115(4)
5.6 Historical Background
119(2)
6 A Hoare Logic
121(11)
6.1 Proof System
122(6)
6.2 Soundness and (Relative) Completeness
128(2)
6.3 Historical Background
130(2)
7 Simulation and Hoare Logic
132(14)
7.1 U-simulation in Hoare Logic
133(1)
7.2 L-simulation in Hoare Logic
133(10)
7.3 L^(-1)-simulation in Hoare Logic
143(1)
7.4 U^(-1)-simulation in Hoare Logic
144(1)
7.5 Historical Background
144(2)
8 An Extension to Total Correctness
146(35)
8.1 Semantic Model and Basic Fixed Point Theory
148(12)
8.2 Interpretation Functions for Total Correctness
160(18)
8.3 Historical Background
178(3)
9 Simulation and Total Correctness
181(13)
9.1 Simulation
181(8)
9.2 An L-Simulation Theorem for Total Correctness
189(4)
9.3 Historical Background
193(1)
10 Refinement Calculus
194(61)
10.1 Lattice-theoretical Framework
196(10)
10.2 Predicate Transformer Semantics
206(9)
10.3 Predicate Transformers and Data Refinement
215(8)
10.4 Predicate Transformers and Partial Correctness
223(11)
10.5 Historical Background
234(2)
Picture Gallery
236(19)
Part II: Applications 255(108)
11 Reynolds' Method
257(32)
11.1 Introduction
257(1)
11.2 Running Example: Finding Paths in Directed Graphs
258(14)
11.3 Analysis of Data Refinement a la Reynolds
272(15)
11.4 Historical Background
287(2)
12 VDM
289(28)
12.1 Introduction
289(2)
12.2 Example: Dictionary
291(10)
12.3 Analysis of Data Refinement in VDM
301(14)
12.4 Historical Background
315(2)
13 Z, Hehner's Method, and Back's Refinement Calculus
317(23)
13.1 Z
318(9)
13.2 Hehner's Method for Data Refinement
327(5)
13.3 Back's Refinement Calculus
332(8)
14 Refinement Methods due to Abadi and Lamport and to Lynch
340(23)
14.1 Auxiliary Variables and Refinement Mappings
341(17)
14.2 Possibilities Mappings
358(3)
14.3 Historical Background
361(2)
Appendix A An Introduction to Hoare Logic 363(24)
Appendix B A Primer on Ordinals and Transfinite Induction 387(7)
Appendix C Notational Convention 394(8)
Appendix D Precedences 402(2)
Bibliography 404(15)
Index 419

Rewards Program

Write a Review