Results 1 - 10
of
64
A Hidden Agenda
- Theoretical Computer Science
, 2000
"... This paper publicly reveals, motivates, and surveys the results of an ambitious hidden agenda for applying algebra to software engineering. The paper reviews selected literature, introduces a new perspective on nondeterminism, and features powerful hidden coinduction techniques for proving behaviora ..."
Abstract
-
Cited by 104 (22 self)
- Add to MetaCart
This paper publicly reveals, motivates, and surveys the results of an ambitious hidden agenda for applying algebra to software engineering. The paper reviews selected literature, introduces a new perspective on nondeterminism, and features powerful hidden coinduction techniques for proving behavioral properties of concurrent systems, especially renements; some proofs are given using OBJ3. We also discuss where modularization, bisimulation, transition systems and combinations of the object, logic, constraint and functional paradigms t into our hidden agenda. 1 Introduction Algebra can be useful in many dierent ways in software engineering, including specication, validation, language design, and underlying theory. Specication and validation can help in the practical production of reliable programs, advances in language design can help improve the state of the art, and theory can help with building new tools to increase automation, as well as with showing correctness of the whole e...
Towards an Algebraic Semantics for the Object Paradigm
- In Hartmut Ehrig and Fernando Orejas, editors, Proceedings, Tenth Workshop on Abstract Data Types
, 1994
"... This paper surveys our current state of knowledge (and ignorance) on the use of hidden sorted algebra as a foundation for the object paradigm. Our main goal is to support equational reasoning about properties of concurrent systems of objects, because of its simple and ecient mechanisation. We sho ..."
Abstract
-
Cited by 85 (34 self)
- Add to MetaCart
This paper surveys our current state of knowledge (and ignorance) on the use of hidden sorted algebra as a foundation for the object paradigm. Our main goal is to support equational reasoning about properties of concurrent systems of objects, because of its simple and ecient mechanisation. We show how equational speci cations can describe objects, inheritance and modules; our treatment of the latter topic emphasises the importance of reuse, and the r^ole of the so-called Satisfaction Condition. We then consider how to prove things about objects, how to unify the object and logic paradigms by using logical variables that range over objects, and how to connect objects into concurrent systems.
A Theory of Mixin Modules: Basic and Derived Operators
- Mathematical Structures in Computer Science
, 1996
"... Mixins are modules in which some components are deferred , i.e. their definition has to be provided by another module. Moreover, differently from parameterized modules (like ML functors), mixin modules can be mutually dependent and their composition supports redefinition of components (overriding). ..."
Abstract
-
Cited by 35 (12 self)
- Add to MetaCart
Mixins are modules in which some components are deferred , i.e. their definition has to be provided by another module. Moreover, differently from parameterized modules (like ML functors), mixin modules can be mutually dependent and their composition supports redefinition of components (overriding). In this paper, we present a formal model of mixins and their basic composition operators. These operators can be viewed as a kernel language with clean semantics in which to express more complex operators of existing modular languages, including variants of inheritance in object oriented programming. Our formal model is given in an "institution independent" way, i.e. is parameterized by the semantic framework modeling the underlying core language. Introduction In object oriented languages, the definition of an heir class H from a parent class P takes usually the form H = extend P by M , where M denotes a collection of definitions of components (typically methods) which are either new, or re...
An Implementation-Oriented Semantics for Module Composition
, 1997
"... This paper describes an approach to module composition by executing "module expressions" to build systems out of component modules; the paper also gives a novel semantics intended to aid implementers. The semantics is based on set theoretic notions of tuple set, partial signature, and institution, t ..."
Abstract
-
Cited by 31 (14 self)
- Add to MetaCart
This paper describes an approach to module composition by executing "module expressions" to build systems out of component modules; the paper also gives a novel semantics intended to aid implementers. The semantics is based on set theoretic notions of tuple set, partial signature, and institution, thus avoiding more difficult mathematics theory. Language features include information hiding, both vertical and horizontal composition, and views for binding modules to interfaces. Vertical composition refers to the hierarchical structuring of a system into layers, while horizontal composition refers to the structure of a given layer. Modules may involve information hiding, and views may involve behavioral satisfaction of a theory by a module. Several "Laws of Software Composition" are given, which show how the various module composition operations relate. Taken together, this gives foundations for an algebraic approach to software engineering. 1.1 Introduction The approach to module compos...
Proving Correctness Of Refinement And Implementation
, 1996
"... The notions of state and observable behaviour are fundamental to many areas of computer science. Hidden sorted algebra, an extension of many sorted algebra, captures these notions through hidden sorts and the behavioural satisfaction of equations. This makes it a powerful formalisation of abstract m ..."
Abstract
-
Cited by 28 (4 self)
- Add to MetaCart
The notions of state and observable behaviour are fundamental to many areas of computer science. Hidden sorted algebra, an extension of many sorted algebra, captures these notions through hidden sorts and the behavioural satisfaction of equations. This makes it a powerful formalisation of abstract machines, and many results suggest that it is also suitable for the semantics of the object paradigm. Another extension of many sorted algebra, namely order sorted algebra, has proved useful in system specification and prototyping because of the way it handles subtypes and errors. The combination of these two algebraic approaches, hidden order sorted algebra, has also been proposed as a foundation for object paradigm, and has much promise as a foundation for Software Engineering. This paper extends recent work on hidden order sorted algebra by investigating the refinement and implementation of hidden order sorted specifications. We present definitions of refinement and implementation for suc...
Extra Theory Morphisms for Institutions: logical semantics for multi-paradigm languages
, 1996
"... We extend the ordinary concept of theory morphism in institutions to extra theory morphisms. Extra theory morphism map theories belonging to different institutions across institution morphisms. We investigate the basic mathematical properties of extra theory morphisms supporting the semantics of log ..."
Abstract
-
Cited by 26 (7 self)
- Add to MetaCart
We extend the ordinary concept of theory morphism in institutions to extra theory morphisms. Extra theory morphism map theories belonging to different institutions across institution morphisms. We investigate the basic mathematical properties of extra theory morphisms supporting the semantics of logical multiparadigm languages, especially structuring specifications (module systems) a la OBJ-Clear. They include model reducts, free constructions (liberality), co-limits, model amalgamation (exactness), and inclusion systems. We outline a general logical semantics for languages whose semantics satisfy certain "logical" principles by extending the institutional semantics developed within the Clear-OBJ tradition. Finally, in the Appendix, we briefly illustrate it with the concrete example of CafeOBJ. Keywords Algebraic specification, Institutions, Theory morphism. AMS Classifications 68Q65, 18C10, 03G30, 08A70 2 1 Introduction Computing Motivation This work belongs to the research are...
Category-based Semantics for Equational and Constraint Logic Programming
, 1994
"... This thesis proposes a general framework for equational logic programming, called categorybased equational logic by placing the general principles underlying the design of the programming language Eqlog and formulated by Goguen and Meseguer into an abstract form. This framework generalises equation ..."
Abstract
-
Cited by 24 (10 self)
- Add to MetaCart
This thesis proposes a general framework for equational logic programming, called categorybased equational logic by placing the general principles underlying the design of the programming language Eqlog and formulated by Goguen and Meseguer into an abstract form. This framework generalises equational deduction to an arbitrary category satisfying certain natural conditions; completeness is proved under a hypothesis of quantifier projectivity, using a semantic treatment that regards quantifiers as models rather than variables, and regards valuations as model morphisms rather than functions. This is used as a basis for a model theoretic category-based approach to a paramodulation-based operational semantics for equational logic programming languages. Category-based equational logic in conjunction with the theory of institutions is used to give mathematical foundations for modularisation in equational logic programming. We study the soundness and completeness problem for module imports i...
An Algebraic Approach to Mixins and Modularity
- ALP '96 - 5th Intl. Conf. on Algebraic and Logic Programming, number 1139 in Lecture Notes in Computer Science
, 1996
"... . We present an algebraic formalization of the notion of mixin module, i.e. a module where the definition of some components is deferred . Moreover, we define a set of basic operators for composing mixin modules, intended to be a kernel language with clean semantics in which to express more complex ..."
Abstract
-
Cited by 22 (4 self)
- Add to MetaCart
. We present an algebraic formalization of the notion of mixin module, i.e. a module where the definition of some components is deferred . Moreover, we define a set of basic operators for composing mixin modules, intended to be a kernel language with clean semantics in which to express more complex operators of existing modular languages, including variants of inheritance in object oriented programming. The semantics of the operators is given in an "institution independent" way, i.e. is parameterized on the semantic framework modeling the underlying core language. Introduction One of the major contributions of object oriented programming has been the discover of inheritance as primary mean for incremental software development. In object oriented languages, an heir class can extend the definition of the parent class adding new methods, as well as redefining old methods, overriding their preceding definitions (sometimes the precedence is given to the parent, see [7]). Note that, since ...
Can you tell the difference between DL-Lite ontologies
- IN PROCEEDINGS OF KR’08
, 2008
"... We develop a formal framework for comparing different versions of DL-Lite ontologies. Four notions of difference and entailment between ontologies are introduced and their applications in ontology development and maintenance discussed. These notions are obtained by distinguishing between differences ..."
Abstract
-
Cited by 22 (6 self)
- Add to MetaCart
We develop a formal framework for comparing different versions of DL-Lite ontologies. Four notions of difference and entailment between ontologies are introduced and their applications in ontology development and maintenance discussed. These notions are obtained by distinguishing between differences that can be observed among concept inclusions, answers to queries over ABoxes, and by taking into account additional context ontologies. We compare these notions, study their meta-properties, and determine the computational complexity of the corresponding reasoning tasks. Moreover, we show that checking difference and entailment can be automated by means of encoding into QBF satisfiability and using off-the-shelf QBF solvers. Finally, we explore the relationship between the notion of forgetting (or uniform interpolation) and our notions of difference between ontologies.
Interpolation in Grothendieck Institutions
- THEORETICAL COMPUTER SCIENCE
, 2003
"... It is well known that interpolation properties of logics underlying specification formalisms play an important role in the study of structured specifications, they have also many other useful logical consequences. In this paper, we solve the interpolation problem for Grothendieck institutions which ..."
Abstract
-
Cited by 21 (3 self)
- Add to MetaCart
It is well known that interpolation properties of logics underlying specification formalisms play an important role in the study of structured specifications, they have also many other useful logical consequences. In this paper, we solve the interpolation problem for Grothendieck institutions which have recently emerged as an important mathematical structure underlying heterogenous multi-logic specification. Our main result can be used in the applications in several different ways. It can be used to establish interpolation properties for multi-logic Grothendieck institutions, but also to lift interpolation properties from unsorted logics to their many sorted variants. The importance of the latter resides in the fact that, unlike other structural properties of logics, many sorted interpolation is a non-trivial generalisation of unsorted interpolation. The concepts, results, and the applications discussed in this paper are illustrated with several examples from conventional logic and algebraic specification theory.

