Results 1 -
9 of
9
The Semantics Of Constraint Logic Programs
- JOURNAL OF LOGIC PROGRAMMING
, 1996
"... This paper presents for the first time the semantic foundations of CLP in a self-contained and complete package. The main contributions are threefold. First, we extend the original conference paper by presenting definitions and basic semantic constructs from first principles, giving new and comp ..."
Abstract
-
Cited by 744 (13 self)
- Add to MetaCart
This paper presents for the first time the semantic foundations of CLP in a self-contained and complete package. The main contributions are threefold. First, we extend the original conference paper by presenting definitions and basic semantic constructs from first principles, giving new and complete proofs for the main lemmas. Importantly, we clarify which theorems depend on conditions such as solution compactness, satisfaction completeness and independence of constraints. Second, we generalize the original results to allow for incompleteness of the constraint solver. This is important since almost all CLP systems use an incomplete solver. Third, we give conditions on the (possibly incomplete) solver which ensure that the operational semantics is confluent, that is, has independence of literal scheduling.
Negation and Constraint Logic Programming
, 1995
"... Almost all constraint logic programming systems include negation, yet nowhere has a sound operational model for negation in CLP been discussed. The SLDNF approach of only allowing ground negative subgoals to execute is very restrictive in constraint logic programming where most variables appearing i ..."
Abstract
-
Cited by 116 (2 self)
- Add to MetaCart
Almost all constraint logic programming systems include negation, yet nowhere has a sound operational model for negation in CLP been discussed. The SLDNF approach of only allowing ground negative subgoals to execute is very restrictive in constraint logic programming where most variables appearing in a derivation never become ground. By describing a scheme for constructive negation in constraint logic programming we give a sound and complete operational model for negation in these languages. Constructive negation was first formulated for logic programming in the Herbrand Universe and involves introducing disequality constraints. Constraint logic programming thus provides a much more natural framework for describing constructive negation. In this paper we describe a framework for constructive negation for constraint logic programming over arbitrary structures which is sound and complete with respect to the three-valued consequences of the completion of a program. Through this descriptio...
Observable Behaviors and Equivalences of Logic Programs
- Information and Computation
, 1992
"... We first introduce a general semantic scheme for logic programs which provides a uniform framework for defining different compositional semantics parametrically wrt a given notion of observability. The equivalence of the operational (top-down) and fixpoint (bottom-up) construction of the semantics i ..."
Abstract
-
Cited by 10 (3 self)
- Add to MetaCart
We first introduce a general semantic scheme for logic programs which provides a uniform framework for defining different compositional semantics parametrically wrt a given notion of observability. The equivalence of the operational (top-down) and fixpoint (bottom-up) construction of the semantics is ensured by the scheme (provided a congruence property is verified). We then define several observational equivalences on logic programs and investigate how they are related. The equivalences are based on various observables (successful derivations, computed answers, partial computed answers and call patterns) and on a notion of program composition. For each observational equivalence we study the relation with a suitable formal semantics, by investigating correctness and full abstraction properties. All the semantics we consider are obtained as instances of the general scheme. 1 Introduction According to [36], the semantics of positive logic programs is defined in model-theoretic terms (th...
A Theory of Observables for Logic Programs
, 1999
"... We define a semantic framework to reason about properties of abstractions of SLD-derivations. The framework allows us to address problems such as the relation between the (top-down) operational semantics and the (bottom-up) denotational semantics, the existence of a denotation for a set of definite ..."
Abstract
-
Cited by 9 (5 self)
- Add to MetaCart
We define a semantic framework to reason about properties of abstractions of SLD-derivations. The framework allows us to address problems such as the relation between the (top-down) operational semantics and the (bottom-up) denotational semantics, the existence of a denotation for a set of definite clauses and their properties (compositionality w.r.t. various syntactic operators, correctness, minimality and precision). Using abstract interpretation techniques to model abstraction allows us to state very simple conditions on the observables which guarantee the validity of several general theorems.
A CLP View of Logic Programming
- In Proc. Conf. on Algebraic and Logic Programming
, 1992
"... . We address the problem of determining those constraint domains A for which the traditional logic programming semantics and the constraint logic programming semantics CLP (A) coincide. This reduces to a study of non-standard models of Clark's axioms and the notion of solution compactness introd ..."
Abstract
-
Cited by 6 (0 self)
- Add to MetaCart
. We address the problem of determining those constraint domains A for which the traditional logic programming semantics and the constraint logic programming semantics CLP (A) coincide. This reduces to a study of non-standard models of Clark's axioms and the notion of solution compactness introduced in the CLP scheme. The results of this study include the proof of the existence of a free product in the class of algebras defined by Clark's axioms, a characterization of when Clark's axioms form a model complete theory, and a limited characterization of those models of Clark's axioms which form solution compact constraint domains. 1 Introduction Appropriate semantics for definite logic programs are now largely agreed upon [17]. They involve a completed program, SLD-resolution, a one-step consequence function, a least Herbrand model and numerous relationships between them: soundness and completeness of SLD-refutations, soundness and completeness of the negation-asfailure rule, .....
SLD-Resolution with Reflection
- Logic Programming -- Proc. 1994 Intl. Symp., 554--568
, 1995
"... We present a language containing names of ground expressions and a corresponding simple extension to SLD-resolution which allows metalevel computation and interlevel communication through reflection. The extended language allows significant freedom in the choice of names and as an example of a possi ..."
Abstract
-
Cited by 5 (5 self)
- Add to MetaCart
We present a language containing names of ground expressions and a corresponding simple extension to SLD-resolution which allows metalevel computation and interlevel communication through reflection. The extended language allows significant freedom in the choice of names and as an example of a possible policy we discuss self-naming expressions. We go on to present a language in which the choice of naming relation has been partly determined by specifying that names of compound expressions are compositional. This is a sensible design decision and we present in detail a rewrite system for extended unification for the language, having certain similarities with a constraint solving system over names. Comparisons are made with related languages and systems. This paper was presented at the 1994 International Symposium on Logic Programming, held in Ithaca, New York. P. Dell'Acqua has been supported by both Universit`a degli Studi di Milano and Uppsala Univ. 1 Introduction This paper prese...
The Completion of Typed Logic Programs and SLDNF-Resolution
, 1993
"... We consider logic programming languages with a parametric type system, first described by Mycroft and O'Keefe, that allows generic polymorphism. It is well known that provided certain conditions hold typed definite logic programs do not go wrong under SLD-resolution. Previous work has looked at ..."
Abstract
-
Cited by 5 (1 self)
- Add to MetaCart
We consider logic programming languages with a parametric type system, first described by Mycroft and O'Keefe, that allows generic polymorphism. It is well known that provided certain conditions hold typed definite logic programs do not go wrong under SLD-resolution. Previous work has looked at how these conditions may be avoided by adding run-time type checking to the SLD-resolution. However, only definite programs have been considered and the program's theory was assumed to be given by the statements of the program and not its completion. This paper establishes results showing that the conditions are also necessary for almost all typed logic programs if the declarative semantics is the completion semantics and the procedural semantics is based on SLDNF-resolution. 1 Introduction The type system considered here is parametric. Parametric type systems have been described in a number of papers, including [2], [3], [6], [7], [8], [10], [11], and [13]. Such a type system is one...
A direct proof of the completeness of SLDNF-resolution
- Journal of Logic and Computation
, 1999
"... We give a direct proof of the following theorem: If a goal G# is a logical consequence of the partial completion of an arbitrary normal logic program P , then each fair, non-floundering SLDNF-tree T for G yields an answer substitution # which is more general than #. If the negation G is a logical c ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
We give a direct proof of the following theorem: If a goal G# is a logical consequence of the partial completion of an arbitrary normal logic program P , then each fair, non-floundering SLDNF-tree T for G yields an answer substitution # which is more general than #. If the negation G is a logical consequence of the partial completion of P , then T is finitely failed. A tree is fair, if each negative main branch ends in failure or each literal in the branch is selected at a certain point. A tree is floundering, if it contains a positive node that consists of negative, non-ground literals only. 1
Single Rules form Canonical Logic Programs
, 1988
"... It has been conjectured [Blair] that every definite clause logic program containing exactly one rule is canonical. This note presents a simple proof of this conjecture. ..."
Abstract
- Add to MetaCart
It has been conjectured [Blair] that every definite clause logic program containing exactly one rule is canonical. This note presents a simple proof of this conjecture.

