Results 1  10
of
12
A Semantic Basis for the Termination Analysis of Logic Programs
 Journal of Logic Programming
, 1999
"... This paper presents a formal semantic basis for the termination analysis of logic programs. The semantics exhibits the termination properties of a logic program through its binary unfoldings  a possibly infinite set of binary clauses. Termination of a program P and goal G is determined by the abs ..."
Abstract

Cited by 114 (14 self)
 Add to MetaCart
(Show Context)
This paper presents a formal semantic basis for the termination analysis of logic programs. The semantics exhibits the termination properties of a logic program through its binary unfoldings  a possibly infinite set of binary clauses. Termination of a program P and goal G is determined by the absence of an infinite chain in the binary unfoldings of P starting with G. The result is of practical use as basing termination analysis on a formal semantics facilitates both the design and implementation of analyzers. A simple Prolog interpreter for binary unfoldings coupled with an abstract domain based on symbolic norm constraints is proposed as an implementation vehicle. We illustrate its application using two recently proposed abstract domains. Both techniques are implemented using a standard CLP(R) library. The combination of an interpreter for binary unfoldings and a constraint solver simplifies the design of the analyzer and improves its efficiency significantly. 1 Introduction This ...
Operational Equivalence of CHR Programs And Constraints
 In 5th International Conference on Principles and Practice of Constraint Programming, CP'99, LNCS 1713
, 1999
"... . A fundamental question in programming language semantics is when two programs should be considered equivalent. In this paper we introduce a notion of operational equivalence for CHR programs and userdefined constraints. Constraint Handling Rules (CHR) is a highlevel language for writing constrain ..."
Abstract

Cited by 21 (6 self)
 Add to MetaCart
(Show Context)
. A fundamental question in programming language semantics is when two programs should be considered equivalent. In this paper we introduce a notion of operational equivalence for CHR programs and userdefined constraints. Constraint Handling Rules (CHR) is a highlevel language for writing constraint solvers either from scratch or by modifying existing solvers. We give a decidable, sufficient and necessary syntactic condition for operational equivalence of terminating and confluent CHR programs. For practical reasons, we also investigate a notion of operational equivalence for userdefined constraints that are defined in different programs. We give a sufficient syntactic condition for constraints defined in terminating and confluent CHR programs. For a subclass of programs which have only one userdefined constraint in common, we are able to give a sufficient and necessary syntactic condition. 1 Introduction Constraint Handling Rules (CHR) [Fru98] is essentially a committedchoice lan...
A Theory of Observables for Logic Programs
, 1999
"... We define a semantic framework to reason about properties of abstractions of SLDderivations. The framework allows us to address problems such as the relation between the (topdown) operational semantics and the (bottomup) denotational semantics, the existence of a denotation for a set of definite ..."
Abstract

Cited by 20 (5 self)
 Add to MetaCart
(Show Context)
We define a semantic framework to reason about properties of abstractions of SLDderivations. The framework allows us to address problems such as the relation between the (topdown) operational semantics and the (bottomup) 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.
The Reduced Relative Power Operation on Abstract Domains
 Theor. Comput. Sci
, 1999
"... ..."
(Show Context)
Abstract Interpretation based Verification of Logic Programs
 SCIENCE OF COMPUTER PROGRAMMING
, 2000
"... This paper is an overview of our results on the application of abstract interpretation concepts to various problems related to the verification of logic programs. These include the systematic design of semantics modeling various proof methods and the characterization of assertions as abstract domain ..."
Abstract

Cited by 12 (6 self)
 Add to MetaCart
(Show Context)
This paper is an overview of our results on the application of abstract interpretation concepts to various problems related to the verification of logic programs. These include the systematic design of semantics modeling various proof methods and the characterization of assertions as abstract domains.
Finite Failure is andCompositional
 Journal of Logic and Computation
, 1997
"... We study some properties of SLDtrees related to nite failure. The main results are a theorem stating that the nonground nite failure set is a correct and fully abstract semantics wrt nite failure and a second theorem stating that the complement of non ground nite failure is andcompositional, i ..."
Abstract

Cited by 6 (3 self)
 Add to MetaCart
We study some properties of SLDtrees related to nite failure. The main results are a theorem stating that the nonground nite failure set is a correct and fully abstract semantics wrt nite failure and a second theorem stating that the complement of non ground nite failure is andcompositional, i.e. that the nite failure behaviour of conjunctive goals can be derived from the nite failure behaviour of atomic goals. The proofs are based on two new lemmata which generalize to innite derivations theorems which are valid for successful and nitely failed derivations. 1 Introduction The operational semantics of (positive) logic programs is usually based on SLDtrees. Several operational properties, useful for reasoning about programs, can be extracted from an SLDtree. Examples are SLDderivations, resultants, partial answers, computed answers, nite failures. All these properties, that we call observables, can be obtained as abstractions of the SLDtree. The study of the obser...
On the Semantics of Logic Program Composition
 PROGRAM DEVELOPMENT IN COMPUTATIONAL LOGIC, LECTURE NOTES IN COMPUTER SCIENCE 3049
, 2004
"... This paper aims at o#ering an insightful synthesis of different compositional semantics for logic program composition which have been developed in the literature. In particular, we will analyse the notions of program equivalence, compositionality, and full abstraction for logic programs. We will ..."
Abstract

Cited by 2 (0 self)
 Add to MetaCart
This paper aims at o#ering an insightful synthesis of different compositional semantics for logic program composition which have been developed in the literature. In particular, we will analyse the notions of program equivalence, compositionality, and full abstraction for logic programs. We will show how the notion of supported interpretation provides a unifying compositional modeltheoretic characterisation both of positive programs and of programs containing negation.
A Base for Achieving Semantics for Prolog with Cut for “Correct ” Observables
"... Decorated tree semantics is a goalindependent denotational semantics for Prolog that deals with the control rules of Prolog and cut operator. This semantics was designed with the aim to provide a general framework for abstract analysis of generic properties of logic programs and has been specialize ..."
Abstract
 Add to MetaCart
(Show Context)
Decorated tree semantics is a goalindependent denotational semantics for Prolog that deals with the control rules of Prolog and cut operator. This semantics was designed with the aim to provide a general framework for abstract analysis of generic properties of logic programs and has been specialized into computed answer (ca) semantics and call pattern (cp) semantics. In this paper we show that the methods for achieving semantics for the “correct ” observables (i.e. observables related to successful derivations), correct partial answers (cpa) and correct call patterns (ccp) in particular, are not trivial extensions of the methods for achieving ca and cp semantics. We extend the work in [13] and propose a twostep method for achieving cpa and ccp semantics using the theory of abstract interpretation. This paper is concerned with the first step, where the main result is a modified decorated tree semantics that serves as a base for further abstraction to get cpa and ccp semantics. 1.