| 000 | 01081camuu2200313 a 4500 | |
| 001 | 000045410855 | |
| 005 | 20080108163734 | |
| 008 | 971124s1998 nyua b 001 0 eng | |
| 010 | ▼a 97047336 | |
| 020 | ▼a 0387984178 (alk. paper) | |
| 020 | ▼a 9780387984179 | |
| 035 | ▼a (KERIS)REF000004613255 | |
| 040 | ▼a DLC ▼c DLC ▼d DLC ▼d 211009 | |
| 050 | 0 0 | ▼a QA76.6 ▼b .B28 1998 |
| 082 | 0 0 | ▼a 005.1/4 ▼2 22 |
| 090 | ▼a 005.14 ▼b B126r | |
| 100 | 1 | ▼a Back, Ralph-Johan. |
| 245 | 1 0 | ▼a Refinement calculus : ▼b a systematic introduction / ▼c Ralph-Johan Back, Joakim von Wright. |
| 260 | ▼a New York : ▼b Springer , ▼c c1998. | |
| 300 | ▼a xv, 519 p. : ▼b ill. ; ▼c 25 cm. | |
| 490 | 1 | ▼a Graduate texts in computer science |
| 504 | ▼a Includes bibliographical references (p. [501]-508) and index. | |
| 650 | 0 | ▼a Computer programming. |
| 650 | 0 | ▼a Calculus. |
| 650 | 0 | ▼a Computer logic. |
| 700 | 1 | ▼a Wright, J. von ▼q (Joakim) , ▼d 1955- |
| 830 | 0 | ▼a Graduate texts in computer science (Springer-Verlag New York Inc.) |
| 945 | ▼a KINS |
소장정보
| No. | 소장처 | 청구기호 | 등록번호 | 도서상태 | 반납예정일 | 예약 | 서비스 |
|---|---|---|---|---|---|---|---|
| No. 1 | 소장처 과학도서관/Sci-Info(2층서고)/ | 청구기호 005.14 B126r | 등록번호 121155540 (1회 대출) | 도서상태 대출가능 | 반납예정일 | 예약 | 서비스 |
컨텐츠정보
책소개
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 setting. In fact, correctness turns out to be a special case of refinement and so the focus is on refinement. Although a reasonable background knowledge is assumed from mathematics and CS, the book is a self-contained introduction suitable for graduate students and researchers coming to this subject for the first time. There are numerous exercises provided of varying degrees of challenge.
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 setting. In fact, correctness turns out to be a special case of refinement and so the focus is on refinement. Although a reasonable background knowledge is assumed from mathematics and CS, the book is a self-contained introduction suitable for graduate students and researchers coming to this subject for the first time. There are numerous exercises provided of varying degrees of challenge.
정보제공 :
목차
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.- 2.1 Partially Ordered Sets.- 2.2 Lattices.- 2.3 Product and Function Spaces.- 2.4 Lattice Homomorphisms.- 2.5 Categories.- 2.6 Summary and Discussion.- 2.7 Exercises.- 3 Higher-Order Logic.- 3.1 Types and Terms.- 3.2 Semantics.- 3.3 Deductive Systems.- 3.4 Theories.- 3.5 Summary and Discussion.- 3.6 Exercises.- 4 Functions.- 4.1 Properties of Functions.- 4.2 Derivations.- 4.3 Definitions.- 4.4 Product Type.- 4.5 Summary and Discussion.- 4.6 Exercises.- 5 States and State Transformers.- 5.1 State Transformers.- 5.2 State Attributes and Program Variables.- 5.3 Reasoning with Program Variables.- 5.4 Straight-Line Programs.- 5.5 Procedures.- 5.6 Blocks and Value Parameters.- 5.7 Summary and Discussion.- 5.8 Exercises.- 6 Truth Values.- 6.1 Inference Rules for Boolean Lattices.- 6.2 Truth Values.- 6.3 Derivations with Logical Connectives.- 6.4 Quantification.- 6.5 Assumptions.- 6.6 Derivations with Local Assumptions.- 6.7 Summary and Discussion.- 6.8 Exercises.- 7 Predicates and Sets.- 7.1 Predicates and Sets.- 7.2 Images and Indexed Sets.- 7.3 Inference Rules for Complete Lattices.- 7.4 Bounded Quantification.- 7.5 Selection and Individuals.- 7.6 Summary and Discussion.- 7.7 Exercises.- 8 Boolean Expressions and Conditionals.- 8.1 Boolean Expressions.- 8.2 Reasoning About Boolean Expressions.- 8.3 Conditional Expressions.- 8.4 Proving Properties About Conditional State Transformers.- 8.5 Summary and Discussion.- 8.6 Exercises.- 9 Relations.- 9.1 Relation Spaces.- 9.2 State Relation Category.- 9.3 Coercion Operators.- 9.4 Relational Assignment.- 9.5 Relations as Programs.- 9.6 Correctness and Refinement.- 9.7 Summary.- 9.8 Exercises.- 10 Types and Data Structures.- 10.1 Postulating a New Type.- 10.2 Constructing a New Type.- 10.3 Record Types.- 10.4 Array Types.- 10.5 Dynamic Data Structures.- 10.6 Summary and Discussion.- 10.7 Exercises.- II Statements.- 11 Predicate Transformers.- 11.1 Satisfying Contracts.- 11.2 Predicate Transformers.- 11.3 Basic Predicate Transformers.- 11.4 Relational Updates.- 11.5 Duality.- 11.6 Preconditions and Guards.- 11.7 Summary and Discussion.- 11.8 Exercises.- 12 The Refinement Calculus Hierarchy.- 12.1 State Categories.- 12.2 Homomorphisms.- 12.3 Summary and Discussion.- 12.4 Exercises.- 13 Statements.- 13.1 Subtyping, Sublattices and Subcategories.- 13.2 Monotonic Predicate Transformers.- 13.3 Statements and Monotonic Predicate Transformers.- 13.4 Derived Statements.- 13.5 Procedures.- 13.6 Summary and Discussion.- 13.7 Exercises.- 14 Statements as Games.- 14.1 Game Interpretation.- 14.2 Winning Strategies.- 14.3 Correctness and Refinement.- 14.4 Summary and Discussion.- 14.5 Exercises.- 15 Choice Semantics.- 15.1 Forward and Backward Semantics.- 15.2 Comparing Semantics for Contract Statements.- 15.3 Refinement in the Choice Semantics.- 15.4 Summary and Discussion.- 15.5 Exercises.- 16 Subclasses of Statements.- 16.1 Homomorphic Predicate Transformers.- 16.2 Subcategories of Statements.- 16.3 Summary and Discussion.- 16.4 Exercises.- 17 Correctness and Refinement of Statements.- 17.1 Correctness.- 17.2 Stepwise Refinement.- 17.3 Refinement Laws.- 17.4 Refinement in Context.- 17.5 Refinement with Procedures.- 17.6 Example: Data Refinement.- 17.7 Summary and Conclusions.- 17.8 Exercises.- III Recursion and Iteration.- 18 Well-founded Sets and Ordinals.- 18.1 Well-Founded Sets and Well-Orders.- 18.2 Constructing the Natural Numbers.- 18.3 Primitive Recursion.- 18.4 Ordinals.- 18.5 Ordinal Recursion.- 18.6 How Far Can We Go?.- 18.7 Summary and Discussion.- 18.8 Exercises.- 19 Fixed Points.- 19.1 Fixed Points.- 19.2 Fixed points as Limits.- 19.3 Properties of Fixed Points.- 19.4 Summary and
정보제공 :
