Results 1 - 10
of
16
Essential Concepts of Algebraic Specification and Program Development
, 1996
"... The main ideas underlying work on the model-theoretic foundations of algebraic specification and formal program development are presented in an informal way. An attempt is made to offer an overall view, rather than new results, and to focus on the basic motivation behind the technicalities presente ..."
Abstract
-
Cited by 54 (15 self)
- Add to MetaCart
The main ideas underlying work on the model-theoretic foundations of algebraic specification and formal program development are presented in an informal way. An attempt is made to offer an overall view, rather than new results, and to focus on the basic motivation behind the technicalities presented elsewhere.
The definition of Extended ML: a gentle introduction
- THEORETICAL COMPUTER SCIENCE
, 1995
"... Extended ML (EML) is a framework for the formal development of modular Standard ML (SML) software systems. Development commences with a specification of the behaviour required and proceeds via a sequence of partial solutions until a complete solution, an executable SML program, is obtained. All s ..."
Abstract
-
Cited by 33 (12 self)
- Add to MetaCart
Extended ML (EML) is a framework for the formal development of modular Standard ML (SML) software systems. Development commences with a specification of the behaviour required and proceeds via a sequence of partial solutions until a complete solution, an executable SML program, is obtained. All stages in this development process are expressed in the EML language, an extension of SML with axioms for describing properties of module components. This is an overview of the formal definition of the EML language. To complement the full technical details presented elsewhere, it provides an informal explanation of the main ideas, gives the rationale for certain design decisions, and outlines some of the technical issues involved. EML is unusual in being built around a "real" programming language having a formally-defined syntax and semantics. Interesting and complex problems arise both from the nature of this relationship and from interactions between the features of the language.
Behavioural Theories and The Proof of Behavioural Properties
, 1996
"... Behavioural theories are a generalization of first-order theories where the equality predicate symbol is interpreted by a behavioural equality of objects (and not by their identity). In this paper we first consider arbitrary behavioural equalities determined by some (partial) congruence relation and ..."
Abstract
-
Cited by 33 (8 self)
- Add to MetaCart
Behavioural theories are a generalization of first-order theories where the equality predicate symbol is interpreted by a behavioural equality of objects (and not by their identity). In this paper we first consider arbitrary behavioural equalities determined by some (partial) congruence relation and we show how to reduce the behavioural theory of any class of algebras to (a subset of) the standard theory of some corresponding class of algebras. This reduction is the basis of a method for proving behavioural theorems whenever an axiomatization of the behavioural equality is provided. Then we focus on the important special case of (partial) observational equalities where two elements are observationally equal if they cannot be distinguished by observable computations over some set of input values. We provide general conditions under which an obvious infinite axiomatization of the observational equality can be replaced by a finitary one and we provide methodological guidelines for finding such...
Behavioural Satisfaction and Equivalence in Concrete Model Categories
, 1996
"... . We use the well-known framework of concrete categories to show how much of standard universal algebra may be done in an abstract and still rather intuitive way. This is used to recast the unifying view of behavioural semantics of specications based on behavioural satisfaction and, respectively ..."
Abstract
-
Cited by 30 (9 self)
- Add to MetaCart
. We use the well-known framework of concrete categories to show how much of standard universal algebra may be done in an abstract and still rather intuitive way. This is used to recast the unifying view of behavioural semantics of specications based on behavioural satisfaction and, respectively, on behavioural equivalence of models abstracting away from many particular features of standard algebras. We also give an explicit representation of behavioural equivalence between models in terms of behavioural correspondences. 1 Introduction Behavioural semantics for specications plays a crucial role in the formalisation of the development process, where a specication need not be implemented exactly but only so that the required system behaviour is achieved | the idea goes back to [GGM76], [Hoa72]; see e.g. [ST95] for the context in which we view it now. There have been two basic approaches to behavioural semantics of speci cations. One introduces a new behavioural satisfaction o...
Proof Systems for Structured Specifications and Their Refinements
, 1999
"... Reasoning about specifications is one of the fundamental activities in the process of formal program development. This ranges from proving the consequences of a specification, during the prototyping or testing phase for a requirements speci cation, to proving the correctness of refinements (or imple ..."
Abstract
-
Cited by 12 (5 self)
- Add to MetaCart
Reasoning about specifications is one of the fundamental activities in the process of formal program development. This ranges from proving the consequences of a specification, during the prototyping or testing phase for a requirements speci cation, to proving the correctness of refinements (or implementations) of specifications. The main proof techniques for algebraic specifications have their origin in equational Horn logic and term rewriting. These proof methods have been well studied in the case of nonstructured speci cations (see Chapters 9 and 10). For large systems of specifications built using the structuring operators of speci cation languages, relatively few proof techniques have been developed yet; for such proof systems, see [SB83, HST94, Wir91, Far92, Cen94, HWB97]. In this chapter we focus on proof systems designed particularly for modular specifications. The aim is to concentrate on the structuring concepts, while abstracting as much as possible from the par...
On the Duality between Observability and Reachability
- PROC. 4TH INT. CONF. FOUNDATIONS OF SOFTWARE SCIENCE AND COMPUTATION STRUCTURES (FOSSACS'01
, 2001
"... Observability and reachability are important concepts in formal software development. While observability concepts allow to specify the required observable behavior of a program or system, reachability concepts are used to describe the underlying data in terms of datatype constructors. In this paper ..."
Abstract
-
Cited by 9 (4 self)
- Add to MetaCart
Observability and reachability are important concepts in formal software development. While observability concepts allow to specify the required observable behavior of a program or system, reachability concepts are used to describe the underlying data in terms of datatype constructors. In this paper, we show that there is a duality between observability and reachability, both from a methodological and from a formal point of view. In particular, we establish a correspondence between observer operations and datatype constructors, observational algebras and constructor-based algebras, and observational and inductive properties of specifications. Our study is based on the observational logic institution [11] and on a novel treatment of reachability which introduces the constructor-based logic institution. Both institutions are tailored to capture the semantically correct realizations of a specification from the observational and reachability points of view. The duality between the observability and reachability concepts is then formalized in a category-theoretic setting.
From Algebras and Coalgebras to Dialgebras
, 2001
"... This paper investigates the notion of dialgebra, which generalises the notions of algebra and coalgebra. We show that many (co)algebraic notions and results can be generalised to dialgebras, and investigate the essential dierences between (co)algebras and arbitrary dialgebras. ..."
Abstract
-
Cited by 8 (0 self)
- Add to MetaCart
This paper investigates the notion of dialgebra, which generalises the notions of algebra and coalgebra. We show that many (co)algebraic notions and results can be generalised to dialgebras, and investigate the essential dierences between (co)algebras and arbitrary dialgebras.
Specification Refinement with System F
- In Proc. CSL'99, volume 1683 of LNCS
, 1999
"... . Essential concepts of algebraic specification refinement are translated into a type-theoretic setting involving System F and Reynolds' relational parametricity assertion as expressed in Plotkin and Abadi's logic for parametric polymorphism. At first order, the type-theoretic setting provides a ..."
Abstract
-
Cited by 6 (3 self)
- Add to MetaCart
. Essential concepts of algebraic specification refinement are translated into a type-theoretic setting involving System F and Reynolds' relational parametricity assertion as expressed in Plotkin and Abadi's logic for parametric polymorphism. At first order, the type-theoretic setting provides a canonical picture of algebraic specification refinement. At higher order, the type-theoretic setting allows future generalisation of the principles of algebraic specification refinement to higher order and polymorphism. We show the equivalence of the acquired type-theoretic notion of specification refinement with that from algebraic specification. To do this, a generic algebraic-specification strategy for behavioural refinement proofs is mirrored in the type-theoretic setting. 1 Introduction This paper aims to express in type theory certain essential concepts of algebraic specification refinement. The benefit to algebraic specification is that inherently first-order concepts are tra...
Algebraic specification and program development by stepwise refinement (Extended Abstract)
- 9th international workshop, LOPSTR ’99
, 1999
"... . Various formalizations of the concept of "refinement step" as used in the formal development of programs from algebraic specifications are presented and compared. 1 Introduction Algebraic specification aims to provide a formal basis to support the systematic development of correct programs fro ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
. Various formalizations of the concept of "refinement step" as used in the formal development of programs from algebraic specifications are presented and compared. 1 Introduction Algebraic specification aims to provide a formal basis to support the systematic development of correct programs from specifications by means of verified refinement steps. Obviously, a central piece of the puzzle is how best to formalize concepts like "specification", "program" and "refinement step". Answers are required that are simple, elegant and general and which enjoy useful properties, while at the same time taking proper account of the needs of practice. Here I will concentrate on the last of these concepts, but first I need to deal with the other two. For "program", I take the usual approach of algebraic specification whereby programs are modelled as many-sorted algebras consisting of a collection of sets of data values together with functions over those sets. This level of abstraction is commens...
Behavioural Theories
- In Recent Trends in Data Type Specification
, 1995
"... Behavioural theories are a generalization of standard theories where the equality predicate is interpreted by an arbitrary (possibly partial) congruence relation, called behavioural equality. In this paper we first show how to reduce the behavioural theory of any class C of -algebras to (a subset of ..."
Abstract
-
Cited by 5 (1 self)
- Add to MetaCart
Behavioural theories are a generalization of standard theories where the equality predicate is interpreted by an arbitrary (possibly partial) congruence relation, called behavioural equality. In this paper we first show how to reduce the behavioural theory of any class C of -algebras to (a subset of) the standard theory of some corresponding class of algebras. Then we consider infinitary axiomatizations of the behavioural equality and we define a general condition under which the in nitary axiomatization can be replaced by a finitary one. As a consequence, behav...

