ISBN: 3540637729
TITLE: Algebraic Foundations of Systems Specification
AUTHOR: Astesiano, Egidio; Kreowski, Hans-Jrg; Krieg-Brckner, Bernd (Eds.)
TOC:

1 The Role of Formal Specifications 1
Marie-Claude Gaudel, Gilles Bernot
1.1 The role of specifications in software development 1
1.2 Formal specifications 3
1.3 Requirement engineering and validation 6
1.4 Refinements 8
1.5 Mechanization of formal specifications 10
2 Algebraic Preliminaries 13
Donald Sannella, Andrzej Tarlecki
2.1 Many-sorted sets 13
2.2 Signatures and algebras 14
2.3 Homomorphisms and congruences 16
2.4 Term algebras 18
2.5 Signature morphisms 20
2.6 Equations 22
2.7 Presentations and theories 22
2.8 Equational calculus 25
2.9 Initialmodels 26
2.10 Variations on a theme 27
3 From Total Equational to Partial First-Order Logic 31
Maura Cerioli, Till Mossakowski, Horst Reichel
3.1 Conditional axioms 35
3.2 Partial data types 47
3.3 Partial first-order logic 57
3.4 More advanced problems 97
4 Institutions An Abstract Framework
for Formal Specifications 105
Andrzej Tarlecki
4.1 Working with an arbitrary logical system 105
4.2 Institutions 107
4.3 Flat specifications in an arbitrary institution 113
4.4 Institutions with composable signatures 115
4.5 Entailment relations 119
4.6 Specifications in an arbitrary institution 123
4.7 Further remarks 128
5 Specification Semantics 131
Horst Reichel
5.1 Isomorphism class semantics 133
5.2 Loose semantics 140
5.3 Constraints  144
5.4 Observability 151
5.5 Data types and systems as fixed points 156
6 Structuring and Modularity 159
Fernando Orejas
6.1 Introduction 159
6.2 Preliminaries 159
6.3 Basic operations for building specifications 162
6.4 Parameterizations and parameter passing 172
6.5 Modules and modular systems 189
7 Refinement and Implementation 201
Hartmut Ehrig, Hans-Jrg Kreowski
7.1 Introduction 201
7.2 Examples 204
7.3 Implementation concepts 211
7.4 Syntactic aspects 220
7.5 Composition 224
7.6 Refinement of modular specifications 227
7.7 Implementation of modular systems 235
8 Specification Languages 243
Donald Sannella, Martin Wirsing
8.1 Introduction 243
8.2 Existing specification languages 244
8.3 Design decisions 252
8.4 Future trends 271
9 Term Rewriting 273
Hlne Kirchner
9.1 Rewriting as an abstract reduction system 274
9.2 Rewriting as a relation on terms 278
9.3 Rewriting as a logic for concurrent computations 293
9.4 Superposition and simplification 298
9.5 Order sorted rewriting 306
9.6 Inductive proofs  312
9.7 Further reading 320.
10 Proof in Flat Specifications 321
Peter Padawitz
10.1 Introduction 321
10.2 Standard specifications 325
10.3 Final semantics and bisimilarity 339
10.4 Gentzen proofs and program synthesis 346
10.5 Confluence and consistency 352
10.6 Implicit induction 365
10.7 Unfolding and explicit induction 369
10.8 Goalsolving 379
11 Proof Systems for Structured Specifications and Their Refinements 385
Michel Bidoit, Mara Victoria Cengarle, Rolf Hennicker
11.1 Introduction 385
11.2 The kernel specification language 387
11.3 Noncompositional proof systems 395
11.4 Structured proof systems 402
11.5 Proof systems for refinement 405
11.6 Parameterization 406
11.7 Reachability and observability operators 415
12 Object Specification 435
Hans-Dieter Ehrich
12.1 Introduction 435
12.2 Basic concepts 436
12.3 A denotational class model 445
12.4 Class specification in the small 449
12.5 Class specification in the large 452
12.6 Object systems 458
12.7 Related work 462
12.8 Concluding remarks 464
13 Algebraic Specification of Concurrent Systems 467
Egidio Astesiano, Manfred Broy, Gianna Reggio
13.1 Process algebras 469
13.2 Algebraic specification of static data types 478
13.3 Dynamic-data types (A3) 500
13.4 Dynamic data-types (A4) 510
13.5 Conclusion 518
A Specifications of data types used by Bit 520
14 Formalization of the Development Process 521
David Basin, Bernd Krieg-Brckner
14.1 Introduction 521
14.2 Simple schematic development rules 531
14.3 General development rules 548
14.4 Developments 555
14.5 Conclusions 561
Bibliography 563
Subject Index 611
Author Index 617
END
