Nondeterminism in algebraic specifications and algebraic programs

Bibliographic Information

Nondeterminism in algebraic specifications and algebraic programs

Heinrich Hussmann

(Progress in theoretical computer science)

Birkhäuser, c1993

Available at  / 16 libraries

Search this Book/Journal

Note

Includes bibliographical references (p. [205]-214)

Description and Table of Contents

Volume

ISBN 9780817637002

Description

Algebraic specification, nondeterminism and term rewriting are three active research areas aiming at concepts for the abstract description of software systems: Algebraic specifications are well-suited for describing data structures and sequential software systems in an abstract way. Term rewriting methods are used in many prototyping systems and form the basis for executing specifi­ cations. Nondeterminism plays a major role in formal language theory; in programming it serves for delaying design decisions in program development and occurs in a "natural" way in formalisations of distributed processes. Heinrich Hussmann presents an elegant extension of equational specification and term rewriting to include nondeterminism. Based on a clean modeltheoretic semantics he considers term rewriting systems without confluence restrictions as a specification language and shows that fundamental properties such as the existence of initial models or the soundness and completeness of narrowing, the basic mechanism for executing equational specifications, can be extended to nondeterministic computations. The work of Heinrich Hussmann is an excellent contribution to Algebraic Programming; it gives a framework that admits a direct approach to program verification, is suitable for describing concurrent and distributed processes, and it can be executed as fast as Prolog.

Table of Contents

0: Introduction.- 0.1 Preview.- 0.2 Historical Background.- 0.3 Basic Notions.- 1: Nondeterministic Algebraic Specifications.- 1.1 Nondeterministic Algebras.- 1.2 Inclusion Rules as a Specification Language.- 2: Specifications with a Deterministic Basis.- 2.1 Deterministic Basis.- 2.2 Additive Specifications.- 2.3 Junk-Free Models.- 2.4 Hierarchical Specifications.- 3: Structure of the Model Classes.- 3.1 Homomorphisms and Extremal Algebras.- 3.2 Initial Models.- 3.3 Initial Models with Deterministic Basis.- 4: Nondeterministic Specifications as a General Framework.- 4.1 Equational Logic.- 4.2 Term Rewriting.- 4.3 Conditional Axioms.- 4.4 Algebraic Programming.- 4.5 Logic Programming.- 5: Implementation and Examples.- 5.1 Term Rewriting.- 5.2 Graph Rewriting.- 5.3 Examples.- 6: Partial Nondeterministic Specifications.- 6.1 Partial Operations.- 6.2 Partiality and Term Rewriting.- 6.3 Partial Specifications with Constructor Basis.- 6.4 Structure of the Model Classes.- 7: Communicating Processes: An Example.- 7.1. Communicating Processes (CP).- 7.2. Semantics of CP.- 7.3. Improvements and Applications.- 8: Concluding Remarks.- 8.1. Summary and Evaluation.- 8.2. Future Work.- References.- Appendix A: Proofs.- Appendix B: Experiments with RAP.
Volume

ISBN 9783764337001

Description

"Nondeterminism in Algebraic Specifications and Algebraic Programs" presents a mathematical theory for the integration of three concepts: non-determinism, axiomatic specification and term rewriting. For non-deterministic programs, an algebraic specification language is provided which admits the application of automated tools based on term rewriting techniques. This general framework is used to explore connections between logic programming and algebraic programming. Examples from various areas of computer science are given, including results of computer experiments with a prototypical implementation. This book should be of interest to readers working within several fields of theoretical computer science, from algebraic specification theory to formal descriptions of distributed systems.

by "Nielsen BookData"

Related Books: 1-1 of 1

Details

Page Top