Hiding More of Hidden Algebra

Behavioral specification is a rapidly advancing area of algebraic semantics that supports practical applications by allowing models (implementations) that only behaviorally satisfy specifications, infinitary data structures (such as streams), behavioral refinements, and coinduction proof methods. This paper generalizes the hidden algebra approach to allow: (P1) operations with multiple hidden arguments, and (P2) defining behavioral equivalence with a subset of operations, in addition to the already present (P3) built-in data types, (P4) nondeterminism, (P5) concurrency, and (P6) non-congruent operations. All important results generalize, but more elegant formulations use the new institution in Section 5. Behavioral satisfaction appeared 1981 in [20], hidden algebra 1989 in [9], multiple hidden arguments 1992 in [1], congruent and behavioral operations in [1 18], behavioral equivalence defined by a subset of operations in [1], and non-congruent operations in [5]; all this was previously integrated in [21], but this paper gives new examples, institutions, and results relating hidden algebra to information hiding. We assume familiarity with basics of algebraic specification, e.g., [11 13].

[1]  B. Jacobs,et al.  A tutorial on (co)algebras and (co)induction , 1997 .

[2]  Joseph A. Goguen,et al.  Institutions: abstract model theory for specification and programming , 1992, JACM.

[3]  Razvan Diaconescu,et al.  Behavioural Coherence in Object-Oriented Algebraic Specification , 2000, J. Univers. Comput. Sci..

[4]  Michel Bidoit,et al.  Modular correctness proofs of behavioural implementations , 1998, Acta Informatica.

[5]  Petros S. Stefaneas,et al.  Logical support for modularisation , 1993 .

[6]  Michel Bidoit,et al.  Observational Logic , 1998, AMAST.

[7]  Razvan Diaconescu,et al.  Cafeobj Report - The Language, Proof Techniques, and Methodologies for Object-Oriented Algebraic Specification , 1998, AMAST Series in Computing.

[8]  Michel Bidoit,et al.  Observational Specifications and the Indistinguishability Assumption , 1995, Theor. Comput. Sci..

[9]  Joseph A. Goguen,et al.  Types as theories , 1991 .

[10]  Rolf Hennicker,et al.  Context Induction: a Proof Principle for Behavioural Abstractions , 1990, DISCO.

[11]  Joseph A. Goguen,et al.  Algebraic semantics of imperative programs , 1996, Foundations of computing series.

[12]  Peter Padawitz,et al.  Swinging Data Types: Syntax, Semantics, and Theory , 1995, COMPASS/ADT.

[13]  Peter Padawitz Towards the one-tiered design of data types and transition systems , 1997, WADT.

[14]  Michel Bidoit,et al.  Behavioural Theories and the Proof of Behavioural Properties , 1996, Theor. Comput. Sci..

[15]  Grigore Rosu,et al.  Hidden Congruent Deduction , 1998, FTP.

[16]  Joseph A. Goguen,et al.  A hidden agenda , 2000, Theor. Comput. Sci..