{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

8-Casl – the Common Algebraic Specification

8-Casl – the Common Algebraic Specification...

Info iconThis preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
C asl – the Common Algebraic Specification Language Till Mossakowski 1 , Anne E. Haxthausen 2 , Donald Sannella 3 , and Andrezj Tarlecki 4 1 DFKI Lab Bremen and University of Bremen, DE-28334 Bremen (P.O. Box 330 440) Germany, [email protected] 2 Department of Informatics and Mathematical Modelling, Technical University of Denmark, DK-2800 Kgs. Lyngby, Denmark, [email protected] 3 LFCS, School of Informatics, University of Edinburgh, Edinburgh, UK, [email protected] 4 Institute of Informatics, Warsaw University and Institute of Computer Science, Polish Academy of Science, Warsaw, Poland, [email protected] Summary. Casl is an expressive specification language that has been designed to supersede many existing algebraic specification languages and provide a standard. Casl consists of several layers, including basic (unstructured) specifications, struc- tured specifications and architectural specifications; the latter are used to prescribe the modular structure of implementations. We describe a simplified version of the Casl syntax, semantics and proof calculus for each of these three layers and state the corresponding soundness and complete- ness theorems. The layers are orthogonal in the sense that the semantics of a given layer uses that of the previous layer as a “black box”, and similarly for the proof calculi. In particular, this means that Casl can easily be adapted to other logical systems. We conclude with a detailed example specification of a warehouse, which serves to illustrate the application of both Casl and the proof calculi for the various layers. Key words: Algebraic specification, formal software development, logic, cal- culus, institution 1 Introduction Algebraic specification is one of the most extensively developed approaches in the formal-methods area. The most fundamental assumption underlying alge- braic specification is that programs are modelled as algebraic structures that include a collection of sets of data values together with functions over those sets. This level of abstraction is commensurate with the view that the correct- ness of the input/output behaviour of a program takes precedence over all its
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
242 T. Mossakowski, A. Haxthausen, D. Sannella and A. Tarlecki other properties. Another common element is that specifications of programs consist mainly of logical axioms , usually in a logical system in which equality has a prominent role, describing the properties that the functions are re- quired to satisfy – often just by their interrelationship. This property-oriented approach is in contrast to model-oriented specifications in frameworks such as VDM [28] which consist of a simple realization of the required behaviour. However, the theoretical basis of algebraic specification is largely in terms of constructions on algebraic models, so it is at the same time much more model- oriented than approaches such as those based on type theory (see e.g. [52]), where the emphasis is almost entirely on syntax and formal systems of rules, and semantic models are absent or regarded as of secondary importance.
Background image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

Page1 / 58

8-Casl – the Common Algebraic Specification...

This preview shows document pages 1 - 3. Sign up to view the full document.

View Full Document Right Arrow Icon bookmark
Ask a homework question - tutors are online