Results 1  10
of
17
Modet: Report on the Larch Shared Language, Version 2.3
, 1990
"... work may not be copied or reproduced in whole or in part for any commercial purpose. ..."
Abstract

Cited by 28 (1 self)
 Add to MetaCart
(Show Context)
work may not be copied or reproduced in whole or in part for any commercial purpose.
Proving the correctness of algebraically specified software modularity and observability issues
 In Proc. of AMAST2, Second Conference of Algebraic Methodology and Software Technology
, 1991
"... We investigate how far modularity and observability issues can contribute to a better understanding of software correctness. We detail the impact of modularity on the semantics of algebraic specifications and we show that, with the stratified loose semantics, software correctness can be established ..."
Abstract

Cited by 24 (7 self)
 Add to MetaCart
(Show Context)
We investigate how far modularity and observability issues can contribute to a better understanding of software correctness. We detail the impact of modularity on the semantics of algebraic specifications and we show that, with the stratified loose semantics, software correctness can be established on a module per module basis. We discuss observability issues and we introduce an observational semantics where sort observation is refined by specifying that some operations do not allow observations. Then the stratified loose approach and our observational semantics are integrated together. As a result, we obtain a framework (modular observational specifications) where the definition of software correctness is adequate, i.e. fits with actual software correctness. 1
Observational Specifications and the Indistinguishability Assumption
 Theoretical Computer Science
, 1995
"... To establish the correctness of some software w.r.t. its formal specification is widely recognized as a difficult task. A first simplification is obtained when the semantics of an algebraic specification is defined as the class of all algebras which correspond to the correct realizations of the spec ..."
Abstract

Cited by 19 (0 self)
 Add to MetaCart
(Show Context)
To establish the correctness of some software w.r.t. its formal specification is widely recognized as a difficult task. A first simplification is obtained when the semantics of an algebraic specification is defined as the class of all algebras which correspond to the correct realizations of the specification. A software is then declared correct if it corresponds to some algebra of this class. We approach this goal by defining an observational satisfaction relation which is less restrictive than the usual satisfaction relation. Based on this notion we provide an institution for observational specifications. The idea is that the validity of an equational axiom should depend on an observational equality, instead of the usual equality. We show that it is not reasonable to expect an observational equality to be a congruence. We define an observational algebra as an algebra equipped with an observational equality which is an equivalence relation but not necessarily a congruence. We assume th...
A General Framework for Modular Implementations of Modular System Specifications
, 1993
"... . We investigate the impact of modularity on the semantics and on the implementation of software specifications. Based on the stratified loose semantics approach we develop a suitable specification framework which meets our basic requirements: the independent construction of implementations for the ..."
Abstract

Cited by 13 (6 self)
 Add to MetaCart
. We investigate the impact of modularity on the semantics and on the implementation of software specifications. Based on the stratified loose semantics approach we develop a suitable specification framework which meets our basic requirements: the independent construction of implementations for the single constituent parts (modules) of a system specification and the encapsulated development of each implementation part using the principle of stepwise refinement. Our paper is not aimed at providing an elaborated specification language but rather to concentrate on the modularity issues of system development. Hence, only few but powerful constructs are provided which can be seen as a kernel for further extensions. In particular, we will show that implementation and parameterization can be handled within a uniform concept and we will prove compatibility theorems like the horizontal composition property. All constructs are defined on top of a very general logical framework thus being applica...
Architectural specifications in CASL
, 1999
"... One of the most novel features of Casl, the Common Algebraic Specification Language, is the provision of socalled architectural specifications for describing the modular structure of software systems. A brief discussion of refinement of Casl specifications provides the setting for a presentation of ..."
Abstract

Cited by 11 (6 self)
 Add to MetaCart
One of the most novel features of Casl, the Common Algebraic Specification Language, is the provision of socalled architectural specifications for describing the modular structure of software systems. A brief discussion of refinement of Casl specifications provides the setting for a presentation of the rationale behind architectural specifications. This is followed by some details of the features provided in Casl for architectural specifications, hints concerning their semantics, and simple results justifying their usefulness in the development process.
Structuring and Modularity
 on Algebraic Foundations of Systems Specification, chapter 6
, 1996
"... this paper, we will describe the main techniques for the semantic definition of some of the most used structuring and modular constructs. Our main aim will be to study the generic, "institutionindependent ", version of each construct. However, in order to provide intuition, in most cases, ..."
Abstract

Cited by 7 (0 self)
 Add to MetaCart
(Show Context)
this paper, we will describe the main techniques for the semantic definition of some of the most used structuring and modular constructs. Our main aim will be to study the generic, "institutionindependent ", version of each construct. However, in order to provide intuition, in most cases, we will first study these constructions in connection to equational logic.
Refinement of Parameterized Algebraic Specifications
 Proceedings of a Workshop on Algorithmic Languages and Calculii. Alsac FR. Chapman and
, 1997
"... A refinement relation for parameterized algebraic specifications is introduced in which the body specification is refined covariantly (i.e., specialized) while the parameter specification is refined contravariantly (i.e., generalized). This refinement is similar to the subtyping relation between fun ..."
Abstract

Cited by 7 (0 self)
 Add to MetaCart
(Show Context)
A refinement relation for parameterized algebraic specifications is introduced in which the body specification is refined covariantly (i.e., specialized) while the parameter specification is refined contravariantly (i.e., generalized). This refinement is similar to the subtyping relation between function types. Assuming a few relatively weak axioms about parameterized specifications, refinement is shown to satisfy the expected properties for software development inthelarge: independent refinement of body and parameter, and closure under sequential composition, instantiation and a suitable form of `horizontal' composition. Keywords Parameterized specifications, mixedvariance refinement, compositionality 1 INTRODUCTION The primary subject of this paper is a general notion of refinement for parameterized specifications. Many notions of refinement have been previously proposed in the literature (Ehrig & Kreowski 1982, Ganzinger 1983, Goguen & Meseguer 1982, Sannella & Tarlecki 1988, S...
An Object Oriented Specification Language based on Hierarchical Algebraic Petri Nets
 IN ISCORE WORKSHOP (ESPRIT
, 1994
"... During the last few years there has been significant interest in combining the benefits of an objectoriented approach with Petri net formalism which is suitable to modelling and simulation of concurrent systems. Nevertheless, for modelling some system behaviour dynamic creation of new components ..."
Abstract

Cited by 5 (1 self)
 Add to MetaCart
During the last few years there has been significant interest in combining the benefits of an objectoriented approach with Petri net formalism which is suitable to modelling and simulation of concurrent systems. Nevertheless, for modelling some system behaviour dynamic creation of new components is often needed. In this paper we introduce a formalism based on algebraic Petri nets using the objectorientation paradigm. Object classes are specified by means of algebraic Petri nets, synchronization expressions link the class instances and static as well as dynamic creation of objects is allowed. Inheritance and subtyping are considered as two different mechanisms. Inheritance is viewed as a duplication mechanism while subtyping is considered at a semantic level as a relation between models. The ordersorted algebras framework captures the subtyping notion between the objects which are identified by ordersorted values. Language semantics is defined through distributed transiti...
A Model Inference System for Generic Specification with Application to Code Sharing
 In Proc. of TAPSOFT95, Col. on Formal Approaches in Software Engineering, LNCS 915
, 1995
"... . This paper presents a model inference system to control instantiation of generic modules. Generic parameters are specified by properties which represent classes of modules sharing some common features. Just as type checking consists in verifying that an expression is well typed, model checking all ..."
Abstract

Cited by 4 (3 self)
 Add to MetaCart
(Show Context)
. This paper presents a model inference system to control instantiation of generic modules. Generic parameters are specified by properties which represent classes of modules sharing some common features. Just as type checking consists in verifying that an expression is well typed, model checking allows to detect whether a (possibly generic) instantiation of a generic module is valid, i.e. whether the instantiation module is a model of the parameterizing property. Equality of instances can be derived from a canonical representation of modules. At last, we show how the code of generic modules can be shared for all instances of modules. 1 Introduction Genericity is a useful feature for specification languages, and for programming languages alike, because it allows to reuse already written packages by instantiating them on various ways, thus limits the risk of bugs and reduces software costs. When a generic module is instantiated and imported into another module, one has to check that the...