Observational interpretation of Casl specifications

We explore the way in which the refinement of individual ‘local’ components of a specification relates to the development of a ‘global’ system from a specification of requirements. The observational interpretation of specifications and refinements adds expressive power and flexibility, but introduces some subtle problems. Our study of these issues is carried out in the context of Casl architectural specifications. We introduce a definition of observational equivalence for Casl models, leading to an observational semantics for architectural specifications for which we prove important properties. Overall, this fulfills the long-standing goal of complementing the standard semantics of Casl specifications with an observational view that supports observational refinement of specifications in combination with Casl-style architectural design.

[1]  Oliver Schoett,et al.  Data abstraction and the correctness of modular programming , 1986 .

[2]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[3]  Hartmut Ehrig,et al.  Algebraic Implementation of Abstract Data Types , 1982, Theor. Comput. Sci..

[4]  Michel Bidoit,et al.  Behavioural Satisfaction and Equivalence in Concrete Model Categories , 1996, CAAP.

[5]  Ugo Montanari,et al.  Observability Concepts in Abstract Data Type Specifications , 1976, MFCS.

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

[7]  Michel Bidoit,et al.  Proving Behavioral Refinements of COL-specifications , 2006, Essays Dedicated to Joseph A. Goguen.

[8]  Joseph A. Goguen,et al.  The Semantics of CLEAR, A Specification Language , 1979, Abstract Software Specifications.

[9]  Till Mossakowski,et al.  Checking Amalgamability Conditions for C ASL Architectural Specifications , 2001, MFCS.

[10]  Donald Sannella,et al.  Toward formal development of programs from algebraic specifications: Implementations revisited , 1987, TAPSOFT, Vol.1.

[11]  Andrei Popescu,et al.  Behavioral Extensions of Institutions , 2005, CALCO.

[12]  Donald Sannella,et al.  Toward Formal Development of ML Programs: Foundations and Methodology (Extended Abstract) , 1989, TAPSOFT, Vol.2.

[13]  Till Mossakowski,et al.  HASCASL: Towards Integrated Specification and Development of Functional Programs , 2002, AMAST.

[14]  Hartmut Ehrig,et al.  Refinement and Implementation , 1999, Algebraic Foundations of Systems Specification.

[15]  C. A. R. Hoare,et al.  Proof of correctness of data representations , 1972, Acta Informatica.

[16]  C. A. R. Hoare,et al.  Proof of Correctness of Data Representations (Reprint) , 2002, Software Pioneers.

[17]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Specification 1 , 1985, EATCS Monographs on Theoretical Computer Science.

[18]  Andrzej Tarlecki Abstract specification theory: an overview , 2003 .

[19]  Stephen J. Garland,et al.  Larch: Languages and Tools for Formal Specification , 1993, Texts and Monographs in Computer Science.

[20]  Peter D. Mosses,et al.  CASL: the Common Algebraic Specification Language , 2002, Theor. Comput. Sci..

[21]  Harald Ganzinger,et al.  Parameterized Specifications: Parameter Passing and Implementation with Respect to Observability , 1983, TOPL.

[22]  Donald Sannella,et al.  Observability Concepts in Abstract Data Type Specification, 30 Years Later , 2008, Concurrency, Graphs and Models.

[23]  Peter D. Mosses,et al.  CASL User Manual , 2004, Lecture Notes in Computer Science.

[24]  Donald Sannella,et al.  The Definition of Extended ML: A Gentle Introduction , 1997, Theor. Comput. Sci..

[25]  M. Dal Cin,et al.  The Algebraic Theory of Automata , 1980 .

[26]  Robin Milner,et al.  An Algebraic Definition of Simulation Between Programs , 1971, IJCAI.

[27]  Furio Honsell,et al.  Constructive Data Refinement in Typed Lambda Calculus , 2000, FoSSaCS.

[28]  Till Mossakowski,et al.  Semantics of Architectural Specifications in CASL , 2001, FASE.

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

[30]  Peter D. Mosses,et al.  Casl Reference Manual , 2004, Lecture Notes in Computer Science.

[31]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Specification 1: Equations and Initial Semantics , 1985 .

[32]  Donald Sannella,et al.  Essential concepts of algebraic specification and program development , 1997, Formal Aspects of Computing.

[33]  Oliver Schoett,et al.  Behavioural Correctness of Data Representations , 1990, Sci. Comput. Program..

[34]  Till Mossakowski,et al.  Amalgamation in the semantics of CASL , 2005, Theor. Comput. Sci..

[35]  Gilles Bernot,et al.  Good Functors... are Those Preserving Philosophy , 1987, Category Theory and Computer Science.

[36]  Donald Sannella,et al.  Toward Component-Oriented Formal Software Development: An Algebraic Approach , 2002, RISSEF.

[37]  Donald Sannella,et al.  Specifications in an Arbitrary Institution , 1988, Inf. Comput..

[38]  Donald Sannella,et al.  Global Development via Local Observational Construction Steps , 2002, MFCS.

[39]  Donald Sannella,et al.  Architectural Specifications in CASL , 2002, Formal Aspects of Computing.

[40]  Martin Wirsing,et al.  Behavioural and Abstractor Specifications , 1995, Sci. Comput. Program..

[41]  Egidio Astesiano,et al.  Algebraic Foundations of Systems Specification , 1999, IFIP State-of-the-Art Reports.