Results 1 - 10
of
14
Automata and coinduction (an exercise in coalgebra
- LNCS
, 1998
"... The classical theory of deterministic automata is presented in terms of the notions of homomorphism and bisimulation, which are the cornerstones of the theory of (universal) coalgebra. This leads to a transparent and uniform presentation of automata theory and yields some new insights, amongst which ..."
Abstract
-
Cited by 51 (15 self)
- Add to MetaCart
The classical theory of deterministic automata is presented in terms of the notions of homomorphism and bisimulation, which are the cornerstones of the theory of (universal) coalgebra. This leads to a transparent and uniform presentation of automata theory and yields some new insights, amongst which coinduction proof methods for language equality and language inclusion. At the same time, the present treatment of automata theory may serve as an introduction to coalgebra.
Continuation Semantics for Prolog with Cut
, 1989
"... We present a denotational continuation semantics for Prolog with cut. First a uniform language B is studied, which captures the control flow aspects of Prolog. The denotational semantics for B is proven equivalent to a transition system based operational semantics. The congruence proof relies on the ..."
Abstract
-
Cited by 33 (5 self)
- Add to MetaCart
We present a denotational continuation semantics for Prolog with cut. First a uniform language B is studied, which captures the control flow aspects of Prolog. The denotational semantics for B is proven equivalent to a transition system based operational semantics. The congruence proof relies on the representation of the operational semantics as a chain of approximations and on a convenient induction principle. Finally, we interpret the abstract language B such that we obtain equivalent denotational and operational models for Prolog itself. Section 1 Introduction In the nice textbook of Lloyd [Ll] the cut, available in all Prolog-systems, is described as a controversial control facility. The cut, added to the Horn clause logic for efficiency reasons, affects the completeness of the refutation procedure. Therefore the standard declarative semantics using Herbrand models does not adequately capture the computational aspects of the Prolog-language. In the present paper we study the Prolog...
Retractions in Comparing Prolog Semantics
- in Proc. Computing Science in the Netherlands, Part 1, P.M.G. Apers
, 1989
"... We present an operational model O and a continuation based denotational model D for a uniform variant of Prolog, including the cut operator. The two semantical definitions make use of higher order transformations F and Y, respectively. We prove O and D equivalent in a novel way by comparing yet anot ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
We present an operational model O and a continuation based denotational model D for a uniform variant of Prolog, including the cut operator. The two semantical definitions make use of higher order transformations F and Y, respectively. We prove O and D equivalent in a novel way by comparing yet another pair of higher order transformations F and Y , that yield F and Y, respectively, by application of a suitable abstraction operator. Section 1 Introduction In [BV] we presented both an operational and a denotational continuation based semantics for the core of Prolog, and we proved these two semantics equivalent. We used a two step approach, by first deriving these results for an intermediate language, obtained by stripping the logic programming aspects (substitutions, most general unifiers and all that) from Prolog. This resulted in the abstract language B in which only the control structure from Prolog remained, such as the backtrack mechanism and the cut operator. After having co...
Coalgebra, Concurrency, and Control
- PROCEEDINGS OF THE 5TH WORKSHOP ON DISCRETE EVENT SYSTEMS (WODES 2000
, 1999
"... Coalgebra is used to generalize notions and techniques from concurrency theory, in order to apply them to problems concerning the supervisory control of discrete event systems. The main ingredients of this approach are the characterization of controllability in terms of (a variant of) the notion of ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Coalgebra is used to generalize notions and techniques from concurrency theory, in order to apply them to problems concerning the supervisory control of discrete event systems. The main ingredients of this approach are the characterization of controllability in terms of (a variant of) the notion of bisimulation, and the observation that the family of (partial) languages carries a final coalgebra structure. This allows for a pervasive use of coinductive definition and proof principles, leading to a conceptual unification and simplification and, in a number of cases, to more general and more efficient algorithms.
On Logic Programming and the Refinement Calculus: Semantics Based . . .
, 1990
"... This paper tries to bridge the gap between logic programming and a refinement calculus for imperative programs. In order to make an embedding of logic programming possible, we have to extend the refinement calculus in several ways. The result is a notion of stepwise refinement for logic programs ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
This paper tries to bridge the gap between logic programming and a refinement calculus for imperative programs. In order to make an embedding of logic programming possible, we have to extend the refinement calculus in several ways. The result is a notion of stepwise refinement for logic programs and the advantages of the refinement calculus become available for logic programming. For example, we can justify program transformation rules for logic programming in the calculus.
Transition System Specifications in Stalk Format With Bisimulation as a Congruence
- in Proceedings 11th Symposium on Theoretical Aspects of Computer Science
, 1994
"... A many-sorted variant, called stalk format, of the single sorted tyft-format for transition system specifications, introduced by Groote and Vaandrager, is proposed. The stalk format is shown to be a convenient formalism to express continuation-style transition systems for languages incorporating con ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
A many-sorted variant, called stalk format, of the single sorted tyft-format for transition system specifications, introduced by Groote and Vaandrager, is proposed. The stalk format is shown to be a convenient formalism to express continuation-style transition systems for languages incorporating concepts as, e.g., process creation or backtracking, for which the existing formats seem less adequate. It is proved, extending a similar result for the single sorted case, that for an appropriate generalization of (strong) bisimilarity for the present many-sorted setting, bisimulation with respect to a transition system specification in stalk format, is a congruence. It is argued that the several conditions, required for the type of transition system specification put forward in the paper, can not be relaxed without loosing this congruence. Finally, the present format is compared with several existing ones in the literature, viz. De Simone-, GSOS- and pure tyft-format. Keywords and phrases se...
Combining Logic and Control to Characterize Global Invariants of Prolog Programs
- CWI Report, The
, 1994
"... The behaviour of logic programs (with various built-in's) is described in terms of sets of substitutions associated with the control points of the program. These sets are defined by means of an operational semantics O, based on a description of unification as predicate transformer. It is shown that ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
The behaviour of logic programs (with various built-in's) is described in terms of sets of substitutions associated with the control points of the program. These sets are defined by means of an operational semantics O, based on a description of unification as predicate transformer. It is shown that O subsumes the semantics of logic programs consisting of the set of computed substitutions obtained from finite prefixes of SLD-derivations with Prolog selection rule. Moreover O is used as base semantics for performing dataflow analysis of logic programs. 1 Introduction The standard view of logic programming is declarative, i.e., a program is a static description of some predicate or function, and there is no reference to the computational mechanism used to compute it. In the declarative interpretation, the meaning of a program is given model-theoretically as the set of all its logical consequences in the Herbrand domain of ground atoms ([vEK76]). Nevertheless, despite of its simplicity an...
Retractions in Comparing Prolog Semantics
, 1990
"... We present an operational model O and a continuation based denotational model D for a uniform variant of Prolog, including the cut operator. The two semantical definitions make use of higher order transformations F and Y, respectively. We prove O and D equivalent in a novel way by comparing yet anot ..."
Abstract
- Add to MetaCart
We present an operational model O and a continuation based denotational model D for a uniform variant of Prolog, including the cut operator. The two semantical definitions make use of higher order transformations F and Y, respectively. We prove O and D equivalent in a novel way by comparing yet another pair of higher order transformations F and Y , that yield F and Y, respectively, by application of a suitable abstraction operator. Section 1 Introduction In [BV] we presented both an operational and a denotational continuation based semantics for the core of Prolog, and we proved these two semantics equivalent. We used a two step approach, by first deriving these results for an intermediate language, obtained by stripping the logic programming aspects (substitutions, most general unifiers and all that) from Prolog. This resulted in the abstract language B in which only the control structure from Prolog remained, such as the backtrack mechanism and the cut operator. After having co...
Continuation Semantics for Prolog with Cut
, 1989
"... We present a denotational continuation semantics for Prolog with cut. First a uniform language B is studied, which captures the control flow aspects of Prolog. The denotational semantics for B is proven equivalent to a transition system based operational semantics. The congruence proof relies on the ..."
Abstract
- Add to MetaCart
We present a denotational continuation semantics for Prolog with cut. First a uniform language B is studied, which captures the control flow aspects of Prolog. The denotational semantics for B is proven equivalent to a transition system based operational semantics. The congruence proof relies on the representation of the operational semantics as a chain of approximations and on a convenient induction principle. Finally, we interpret the abstract language B such that we obtain equivalent denotational and operational models for Prolog itself. Section 1 Introduction In the nice textbook of Lloyd [Ll] the cut, available in all Prolog-systems, is described as a controversial control facility. The cut, added to the Horn clause logic for efficiency reasons, affects the completeness of the refutation procedure. Therefore the standard declarative semantics using Herbrand models does not adequately capture the computational aspects of the Prolog-language. In the present paper we study the Prolog...
Extended Horn Clauses: the Framework and some Semantics
, 1991
"... The purpose of this paper is twofold: to introduce a new extension of concurrent logic programming languages aiming at handling synchronicity and to present and compare several semantics for it. The extended framework essentially rests on an extension of Horn clauses, including multiple atoms in the ..."
Abstract
- Add to MetaCart
The purpose of this paper is twofold: to introduce a new extension of concurrent logic programming languages aiming at handling synchronicity and to present and compare several semantics for it. The extended framework essentially rests on an extension of Horn clauses, including multiple atoms in their heads and a guard construct, as well as a new operator between goals. The semantics discussed consist of four semantics. They range in the operational, declarative and denotational types and are issued both from the logic programming tradition and the imperative tradition. They are composed of an operational semantics, describing the (classical) success set and failure set, of two declarative semantics, extending the Herbrand interpretation and the immediate consequence operator to the extended framework, and of a denotational semantics, defined compositionally and on the basis of histories possibly involving hypothetical statements. The mathematical tools mainly used are complete lattice...

