Results 1  10
of
11
Relating CASL with Other Specification Languages: the Institution Level
, 2000
"... In this work, we investigate various specification languages and their relation to Casl, the recently developed Common Algebraic Specification Language. In particular, we consider the languages Larch, OBJ3, CafeOBJ, ACT ONE, ASF, and HEPtheories, as well as various sublanguages of Casl that more or ..."
Abstract

Cited by 38 (16 self)
 Add to MetaCart
(Show Context)
In this work, we investigate various specification languages and their relation to Casl, the recently developed Common Algebraic Specification Language. In particular, we consider the languages Larch, OBJ3, CafeOBJ, ACT ONE, ASF, and HEPtheories, as well as various sublanguages of Casl that more or less directly correspond to these. All these languages are translated to an appropriate sublanguage of Casl. The translation mainly concerns the level of specification inthesmall: the logics underlying the languages are formalized as institutions, and representations among the institutions are developed. However, it is also considered how these translations interact with specification inthelarge. Thus, we obtain one hand translations of any of the abovementioned specification languages to an appropriate sublanguage of Casl. This allows us to take libraries and case studies that have been developed for other languages and reuse them in Casl. On the other hand, we set up institution repre...
The ABCs of Specification: AsmL, Behavior, and Components
, 2001
"... We show how to use AsmL, an executable specification... ..."
Abstract

Cited by 22 (4 self)
 Add to MetaCart
We show how to use AsmL, an executable specification...
Foundations of Heterogeneous Specification
"... We provide a semantic basis for heterogeneous specifications that not only involve different logics, but also different kinds of translations between these. We show that Grothendieck institutions based on spans of (co)morphisms can serve as a unifying framework providing a simple but powerful semant ..."
Abstract

Cited by 17 (3 self)
 Add to MetaCart
We provide a semantic basis for heterogeneous specifications that not only involve different logics, but also different kinds of translations between these. We show that Grothendieck institutions based on spans of (co)morphisms can serve as a unifying framework providing a simple but powerful semantics for heterogeneous specification.
Heterogeneous development graphs and heterogeneous borrowing
 In M. Nielsen (Ed.) Foundations of Software Science and Computation Structures (FOSSACS02
, 2002
"... Abstract. Development graphs are a tool for dealing with structured specifications in a formal program development in order to ease the management of change and reusing proofs. Often, different aspects of a software system have to be specified in different logics, since the construction of a huge lo ..."
Abstract

Cited by 13 (7 self)
 Add to MetaCart
(Show Context)
Abstract. Development graphs are a tool for dealing with structured specifications in a formal program development in order to ease the management of change and reusing proofs. Often, different aspects of a software system have to be specified in different logics, since the construction of a huge logic covering all needed features would be too complex to be feasible. Therefore, we introduce heterogeneous development graphs as a means to cope with heterogeneous specifications. We cover both the semantics and the proof theory of heterogeneous development graphs. A proof calculus can be obtained either by combining proof calculi for the individual logics, or by representing these in some “universal ” logic like higherorder logic in a coherent way and then “borrowing” its calculus for the heterogeneous language. 1
Type class polymorphism in an institutional framework
 IN JOSÉ FIADEIRO, EDITOR, 17TH WADT, LECTURE NOTES IN COMPUTER SCIENCE
, 2005
"... Higherorder logic with shallow type class polymorphism is widely used as a specification formalism. Its polymorphic entities (types, operators, axioms) can easily be equipped with a ‘naive ’ semantics defined in terms of collections of instances. However, this semantics has the unpleasant property ..."
Abstract

Cited by 13 (8 self)
 Add to MetaCart
(Show Context)
Higherorder logic with shallow type class polymorphism is widely used as a specification formalism. Its polymorphic entities (types, operators, axioms) can easily be equipped with a ‘naive ’ semantics defined in terms of collections of instances. However, this semantics has the unpleasant property that while model reduction preserves satisfaction of sentences, model expansion generally does not. In other words, unless further measures are taken, type class polymorphism fails to constitute a proper institution, being only a socalled rps preinstitution; this is unfortunate, as it means that one cannot use institutionindependent or heterogeneous structuring languages, proof calculi, and tools with it. Here, we suggest to remedy this problem by modifying the notion of model to include information also about its potential future extensions. Our construction works at a high level of generality in the sense that it provides, for any preinstitution, an institution in which the original preinstitution can be represented. The semantics of polymorphism used in the specification language HasCasl makes use of this result. In fact, HasCasl’s polymorphism is a special case of a general notion of polymorphism in institutions introduced here, and our construction leads to the right notion of semantic consequence when applied to this generic polymorphism. The appropriateness of the construction for other frameworks that share the same problem depends on methodological questions to be decided case by case. In particular, it turns out that our method is apparently unsuitable for observational logics, while it works well with abstract state machine formalisms such as statebased Casl.
Institution independent static analysis for Casl
 Recent Trends in Algebraic Development Techniques, 15th International Workshop, WADT'01
, 2002
"... Abstract. We describe a way to make the static analysis for the inthelarge part of the Common Algebraic Specification Language (Casl) independent of the underlying logic that is used for specification inthesmall. The logic here is formalized as an institution with some extra components. Following ..."
Abstract

Cited by 2 (2 self)
 Add to MetaCart
(Show Context)
Abstract. We describe a way to make the static analysis for the inthelarge part of the Common Algebraic Specification Language (Casl) independent of the underlying logic that is used for specification inthesmall. The logic here is formalized as an institution with some extra components. Following the institution independent semantics of Casl inthelarge, we thus get an institution independent static analysis for Casl inthelarge. With this, it is possible to reuse the Casl static analysis for extensions of Casl, or even completely different logics. One only has to provide a static analysis for specifications inthesmall for the given logic. This then can be plugged into the generic static analysis for Casl inthelarge. 1
Datatypes in Memory
"... Abstract. Besides functional correctness, specifications must describe other properties of permissible implementations. We want to use simple algebraic techniques to specify resource usage alongside functional behaviour. In this paper we examine the space behaviour of datatypes, which depends on the ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
(Show Context)
Abstract. Besides functional correctness, specifications must describe other properties of permissible implementations. We want to use simple algebraic techniques to specify resource usage alongside functional behaviour. In this paper we examine the space behaviour of datatypes, which depends on the representation of values in memory. In particular, it varies according to how much values are allowed to overlap, and how much they must be kept apart to ensure correctness for destructive spacereusing operations. We introduce a mechanism for specifying datatypes represented in a memory, with operations that may be destructive to varying degrees. We start from an abstract model notion for datainmemory and then show how to specify the observable behaviour of models. The method is demonstrated by specifications of listsinmemory and pointers; with a suitable definition of implementation, we show that listsinmemory may be implemented by pointers. We then present a method for proving implementations correct and show that it is sound and, under certain assumptions, complete. 1
Feature Specification: a LogicIndependent Approach
 FUNDAMENTA INFORMATICAE
, 2004
"... In this paper, we investigate the formal specification of features and feature systems in the mathematical paradigm often called "logicindependent", and formally capture in this paradigm the underlying important notions of feature integration and feature interactions. The complexity of ..."
Abstract

Cited by 1 (0 self)
 Add to MetaCart
In this paper, we investigate the formal specification of features and feature systems in the mathematical paradigm often called "logicindependent", and formally capture in this paradigm the underlying important notions of feature integration and feature interactions. The complexity of
The Common Framework Initiative for algebraic specification and development of software
, 1999
"... . The Common Framework Initiative (CoFI) is an open international collaboration which aims to provide a common framework for algebraic specification and development of software. The central element of the Common Framework is a specification language called Casl for formal specification of functiona ..."
Abstract
 Add to MetaCart
. The Common Framework Initiative (CoFI) is an open international collaboration which aims to provide a common framework for algebraic specification and development of software. The central element of the Common Framework is a specification language called Casl for formal specification of functional requirements and modular software design which subsumes many previous algebraic specification languages. This paper is a brief summary of past and present work on CoFI. 1 Introduction Algebraic specification is one of the most extensivelydeveloped approaches in the formal methods area. The most fundamental assumption underlying algebraic specification is that programs are modelled as manysorted algebras consisting of a collection of sets of data values together with functions over those sets. This level of abstraction is commensurate with the view that the correctness of the input/output behaviour of a program takes precedence over all its other properties. Another common element is tha...