Refinement Calculus A Systematic Introduction
Much current research in computer science is concerned with two questions: is a program correct? And how can we improve a correct program preserving correctness? This latter question is known as the refinement of programs and the purpose of this book is to consider these questions in a formal settin...
Main Authors: | , |
---|---|
Format: | eBook |
Language: | English |
Published: |
New York, NY
Springer New York
1998, 1998
|
Edition: | 1st ed. 1998 |
Series: | Texts in Computer Science
|
Subjects: | |
Online Access: | |
Collection: | Springer Book Archives -2004 - Collection details see MPG.ReNa |
Table of Contents:
- 1 Introduction
- 1.1 Contracts
- 1.2 Using Contracts
- 1.3 Computers as Agents
- 1.4 Algebra of Contracts
- 1.5 Programming Constructs
- 1.6 Specification Constructs
- 1.7 Correctness
- 1.8 Refinement of Programs
- 1.9 Background
- 1.10 Overview of the Book
- I Foundations
- 2 Posets, Lattices, and Categories
- 3 Higher-Order Logic
- 4 Functions
- 5 States and State Transformers
- 6 Truth Values
- 7 Predicates and Sets
- 8 Boolean Expressions and Conditionals
- 9 Relations
- 10 Types and Data Structures
- II Statements
- 11 Predicate Transformers
- 12 The Refinement Calculus Hierarchy
- 13 Statements
- 14 Statements as Games
- 15 Choice Semantics
- 16 Subclasses of Statements
- 17 Correctness and Refinement of Statements
- III Recursion and Iteration
- 18 Well-founded Sets and Ordinals
- 19 Fixed Points
- 20 Recursion
- 21 Iteration and Loops
- 22 Continuity and Executable Statements
- 23 Working with Arrays
- 24 The N-Queens Problem
- 25 Loops and Two-Person Games
- IV Statement Subclasses
- 26 Statement Classes and Normal Forms
- 27 Specification Statements
- 28 Refinement in Context
- 29 Iteration of Conjunctive Statements
- References