Results 1 -
2 of
2
A Model Inference System for Generic Specification with Application to Code Sharing
- In Proc. of TAPSOFT-95, 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
. 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...
Modular Specifications: Constructions With Finite Colimits, Diagrams, Isomorphisms
, 1996
"... : The composition of modular specifications can be modeled, in a category theoretic framework, by colimits of diagrams. Pushouts in particular describe the combination of two specifications sharing a common part. This work extends this classic idea along three lines. First, we define a term language ..."
Abstract
- Add to MetaCart
: The composition of modular specifications can be modeled, in a category theoretic framework, by colimits of diagrams. Pushouts in particular describe the combination of two specifications sharing a common part. This work extends this classic idea along three lines. First, we define a term language to represent modular specifications built with colimit constructions over a category of base specifications. This language is formally characterized by a finitely cocomplete category. Then, we propose to associate with each term a diagram. This interpretation provides us with a more abstract representation of modular specifications because irrelevant steps of the construction are eliminated. We define a category of diagrams, which is a completion of the base category with finite colimits. We prove that the interpretation of terms as diagrams defines an equivalence between the corresponding categories, which shows the correctness of this interpretation. At last, we propose an algorithm to no...

