Results 1  10
of
18
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 136 (23 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 93 (35 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 socalled 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 Categorybased Equational Logic Semantics to Constraint Programming
 IN MAGNE HAVERAAEN, OLAF OWE, AND OLEJOHAN DAHL, EDITORS, RECENT TRENDS IN DATA TYPE SPECIFICATION
, 1996
"... This paper exploits the point of view of constraint programming as computation in a logical system, namely constraint logic. We define the basic ingredients of constraint logic, such as constraint models and generalised polynomials. We show that constraint logic is an institution, and we interna ..."
Abstract

Cited by 14 (4 self)
 Add to MetaCart
This paper exploits the point of view of constraint programming as computation in a logical system, namely constraint logic. We define the basic ingredients of constraint logic, such as constraint models and generalised polynomials. We show that constraint logic is an institution, and we internalise the study of constraint logic to the framework of categorybased equational logic. By showing that constraint logic is a special case of categorybased equational logic, we integrate the constraint logic programming paradigm into equational logic programming. Results include a Herbrand theorem for constraint logic programming characterising Herbrand models as initial models in constraint logic.
Completeness of CategoryBased Equational Deduction
 Mathematical Structures in Computer Science
, 1995
"... Equational deduction is generalised within a categorybased abstract model theory framework, and proved complete 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 tha ..."
Abstract

Cited by 13 (7 self)
 Add to MetaCart
(Show Context)
Equational deduction is generalised within a categorybased abstract model theory framework, and proved complete 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. Applications include many and order sorted [conditional] equational logics, Horn clause logic, equational deduction modulo a theory, constraint logics, and more, as well as any possible combination among them. In the cases of equational deduction modulo a theory and of constraint logic the completeness result is new. One important consequence is an abstract version of Herbrand's Theorem, which provides an abstract model theoretic foundations for equational and constraint logic programming. 1 Introduction A uniform treatment of the model theory of classical equational logic is now possible due to the comprehensive development of categorical universal algebra; without any c...
A Hidden Herbrand Theorem: Combining the Object and Logic Paradigms
 Principles of Declarative Programming
, 1998
"... : The benefits of the object, logic (or relational), functional, and constraint paradigms ..."
Abstract

Cited by 11 (3 self)
 Add to MetaCart
(Show Context)
: The benefits of the object, logic (or relational), functional, and constraint paradigms
Categorybased Constraint Logic
, 1999
"... This paper presents an (abstract) model theoretic semantics for ECLP, without directly addressing the computational aspect. This is a rather novel approach on the area of constraints where almost all efforts have been devoted to computational and operational issues; it is important the reader unders ..."
Abstract

Cited by 7 (3 self)
 Add to MetaCart
This paper presents an (abstract) model theoretic semantics for ECLP, without directly addressing the computational aspect. This is a rather novel approach on the area of constraints where almost all efforts have been devoted to computational and operational issues; it is important the reader understands the modeltheoretic and foundational orientation of this paper. However, we plan to gradually develop the computational side based on these foundations as further research (Section 7.2 sketches some of the directions of such further research). Some computational aspects of this theory can already be found in (Diaconescu, 1996c). This semantics is
QuasiBoolean Encodings and Conditionals in Algebraic Specification
"... We develop a general study of the algebraic specification practice, originating from the OBJ tradition, which encodes atomic sentences in logical specification languages as Boolean terms. This practice originally motivated by operational aspects, but also leading to significant increase in expressiv ..."
Abstract

Cited by 5 (3 self)
 Add to MetaCart
(Show Context)
We develop a general study of the algebraic specification practice, originating from the OBJ tradition, which encodes atomic sentences in logical specification languages as Boolean terms. This practice originally motivated by operational aspects, but also leading to significant increase in expressivity power, has recently become important within the context of some formal verification methodologies mainly because it allows the use of simple equational reasoning for frameworks based on logics that do not have an equational nature. Our development includes a generic rigorous definition of the logics underlying the above mentioned practice, based on the novel concept of ‘quasiBoolean encoding’, a general result on existence of initial semantics for these logics, and presents a general method for employing Birkhoff calculus of conditional equations as a sound calculus for these logics. The high level of generality of our study means that the concepts are introduced and the results are obtained at the level of abstract institutions (in the sense of Goguen and Burstall [12]) and are therefore applicable to a multitude of logical systems and environments.
A Hidden Herbrand Theorem
"... . The benefits of the object, logic (or relational), functional, and constraint paradigms can be combined, by providing existential queries over objects and their attributes, subject to constraints. This paper provides a precise mathematical foundation for this novel programming paradigm, and sh ..."
Abstract

Cited by 5 (2 self)
 Add to MetaCart
. The benefits of the object, logic (or relational), functional, and constraint paradigms can be combined, by providing existential queries over objects and their attributes, subject to constraints. This paper provides a precise mathematical foundation for this novel programming paradigm, and shows that it is computationally feasible by reducing it to familiar problems over term algebras (i.e., Herbrand universes) . We use the formalism of hidden logic, and our main result is a version of Herbrand's Theorem for that setting. By extending a result of Diaconescu, we lift our results from equational logic to Horn clause logic with equality. ? The research reported in this paper has been supported in part by the Science and Engineering Research Council, the EC under ESPRIT2 BRA Working Groups 6071, ISCORE and 6112, COMPASS, Fujitsu Laboratories Limited, and a contract under the management of the Information Technology Promotion Agency (IPA), Japan, as part of the Industrial Sc...
Categorybased Modularisation for Equational Logic Programming
 Acta Informatica
, 1996
"... : Although modularisation is basic to modern computing, it has been little studied for logicbased programming. We treat modularisation for equational logic programming using the institution of categorybased equational logic in three different ways: (1) to provide a generic satisfaction conditio ..."
Abstract

Cited by 5 (5 self)
 Add to MetaCart
(Show Context)
: Although modularisation is basic to modern computing, it has been little studied for logicbased programming. We treat modularisation for equational logic programming using the institution of categorybased equational logic in three different ways: (1) to provide a generic satisfaction condition for equational logics; (2) to give a categorybased semantics for queries and their solutions; and (3) as an abstract definition of compilation from one (equational) logic programming language to another. Regarding (2), we study soundness and completeness for equational logic programming queries and their solutions. This can be understood as ordinary soundness and completeness in a suitable "nonlogical" institution. Soundness holds for all module imports, but completeness only holds for conservative module imports. Categorybased equational signatures are seen as modules, and morphisms of such signatures as module imports. Regarding (3), completeness corresponds to compiler correc...
Situated Adaptive Software: Beyond the Object Paradigm
 In Proceedings, International Symposium on New Models of Software Architecture
, 1995
"... : This paper reviews our progress towards a new software paradigm extending the object paradigm, based on hidden order sorted algebra. Our goal is to produce software that is much more adaptable to context, and is also highly reliable and predictable. We find the logic of algebra, which is equati ..."
Abstract

Cited by 4 (2 self)
 Add to MetaCart
(Show Context)
: This paper reviews our progress towards a new software paradigm extending the object paradigm, based on hidden order sorted algebra. Our goal is to produce software that is much more adaptable to context, and is also highly reliable and predictable. We find the logic of algebra, which is equational logic, especially convenient because of its simple and efficient mechanisation of reasoning. We show how equational specifications can describe objects, inheritance and modules, and support reasoning about them. Our treatment of modules emphasises the importance of reuse, and the role of the socalled Satisfaction Condition. We then show how to unify the object and logic paradigms by using logical variables that range over objects, and how to connect objects into concurrent systems, using a universal characterisation of parallel connection, and more generally, of parallel connection with synchronisation. We also discuss situated adaptive modules, which extend the power of paramet...