Results 1  10
of
12
Constraintbased Termination Analysis of Logic Programs
 ACM Transactions on Programming Languages and Systems
, 1999
"... Current normbased automatic... In this paper we present a new termination analysis which integrates the various components and produces a set of constraints that, when solvable, identifies successful termination proofs. The proposed method is both efficient and precise. The use of constraint sets e ..."
Abstract

Cited by 34 (15 self)
 Add to MetaCart
Current normbased automatic... In this paper we present a new termination analysis which integrates the various components and produces a set of constraints that, when solvable, identifies successful termination proofs. The proposed method is both efficient and precise. The use of constraint sets enables the propagation of information over all different phases while the need for multiple analyses is considerably reduced.
On Proving Left Termination of Constraint Logic Programs
 ACM Transaction on Computational Logic
, 2001
"... The Constraint Logic Programming (CLP) Scheme merges logic programming with constraint solving over predefined domains. In this paper, we study proof methods for universal left termination of constraint logic programs. We provide a sound and complete characterization of left termination for ideal CL ..."
Abstract

Cited by 17 (7 self)
 Add to MetaCart
The Constraint Logic Programming (CLP) Scheme merges logic programming with constraint solving over predefined domains. In this paper, we study proof methods for universal left termination of constraint logic programs. We provide a sound and complete characterization of left termination for ideal CLP languages which generalizes acceptability of logic programs. The characterization is then refined to the notion of partial acceptability, which is wellsuited for automatic modular inference. We describe a theoretical framework for automation of the approach, which is implemented. For nonideal CLP languages and without any assumption on their incomplete constraint solvers, even the most basic sound termination criterion from logic programming does not lift. We focus on a specific system, namely CLP(R), by proposing some additional conditions that make (partial) acceptability sound
A Polyvariant BindingTime Analysis for Offline Partial Deduction
 Proceedings of the European Symposium on Programming (ESOPâ€™98), LNCS 1381
, 1998
"... We study the notion of bindingtime analysis for logic programs. We formalise the unfolding aspect of an online partial deduction system as a Prolog program. Using abstract interpretation, we collect information about the runtime behaviour of the program. We use this information to make the contro ..."
Abstract

Cited by 15 (11 self)
 Add to MetaCart
We study the notion of bindingtime analysis for logic programs. We formalise the unfolding aspect of an online partial deduction system as a Prolog program. Using abstract interpretation, we collect information about the runtime behaviour of the program. We use this information to make the control decisions about the unfolding at analysis time and to turn the online system into an offline system. We report on some initial experiments.
Proving Termination of InputConsuming Logic Programs
, 1999
"... A class of predicates is identified for which termination does not depend on lefttoright execution. The only assumption about the selection rule is that derivations are inputconsuming, that is, in each derivation step, the input arguments of the selected atom do not become instantiated. This assu ..."
Abstract

Cited by 14 (5 self)
 Add to MetaCart
A class of predicates is identified for which termination does not depend on lefttoright execution. The only assumption about the selection rule is that derivations are inputconsuming, that is, in each derivation step, the input arguments of the selected atom do not become instantiated. This assumption is a natural abstraction of previous work on programs with delay declarations. The method for showing that a predicate is in that class is based on level mappings, closely following the traditional approach for LDderivations. Programs are assumed to be well and nicely moded, which are two widely used concepts for verification. Many predicates terminate under such weak assumptions. Knowing these predicates is useful even for programs where not all predicates have this property.
Acceptability with General Orderings
 IN COMPUTATIONAL LOGIC: LOGIC PROGRAMMING AND BEYOND
, 2002
"... We present a new approach to termination analysis of logic programs. The essence of the approach is that we make use of general orderings (instead of level mappings), like it is done in transformational approaches to logic program termination analysis, but we apply these orderings directly to th ..."
Abstract

Cited by 10 (8 self)
 Add to MetaCart
We present a new approach to termination analysis of logic programs. The essence of the approach is that we make use of general orderings (instead of level mappings), like it is done in transformational approaches to logic program termination analysis, but we apply these orderings directly to the logic program and not to the termrewrite system obtained through some transformation. We define some variants of acceptability, based on general orderings, and show how they are equivalent to LDtermination. We develop a demand driven, constraintbased approach to verify these acceptabilityvariants. The advantage
Inference of Termination Conditions for Numerical Loops in Prolog
 Logic for Programming, Arti Intelligence, and Reasoning, 8th International Conference, Proceedings, volume 2250 of Lecture Notes in Computer Science
, 2001
"... Numerical computations form an essential part of almost any realworld program. Clearly, in order for a termination analyser to be of practical use it should contain a mechanism for inferring termination of such computations. However, this topic attracted less attention of the research community. In ..."
Abstract

Cited by 7 (4 self)
 Add to MetaCart
Numerical computations form an essential part of almost any realworld program. Clearly, in order for a termination analyser to be of practical use it should contain a mechanism for inferring termination of such computations. However, this topic attracted less attention of the research community. In this work we concentrate on automatic termination inference for logic programs depending on numerical computations. Dershowitz et al. [8] showed that termination of general numerical computations, for instance on floating point numbers, may be counterintuitive, i.e., the observed behaviour does not necessarily coincide with the theoretically expected one. Thus, we restrict ourselves to integer computations only. While discussing termination of integer computations the following question should be asked: what conditions on the queries should be assumed, such that the queries will terminate. We refer to this question as the termination inference...
Nontransformational Termination Analysis of Logic Programs, Based on General TermOrderings (Extended Abstract)
, 2000
"... ..."
Inference of Termination Conditions for Numerical Loops
, 2001
"... this paper we present a termination inference technique for numerical loops based on the wellknown constraints based approach [4], further extending [3], and on the adornments technique [6, 7]. We restrict our interest only to integer loops, since termination of real number computations is often im ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
this paper we present a termination inference technique for numerical loops based on the wellknown constraints based approach [4], further extending [3], and on the adornments technique [6, 7]. We restrict our interest only to integer loops, since termination of real number computations is often implementation dependent (see [5]). Example 1. p(X) / X ? 0; X 5; X1 is X + 1; p(X) p(X) / X ? 5 This example illustrates two possible sources of termination. First, if no rule is applicable for some query (e.g. ?\Gammap(\Gamma1)), and second, if some rules are applicable, but the execution terminates(e.g. ?\Gamma p(3) or ?\Gamma p(7)). We distinguish between these cases and infer terminati
On Termination of Logic Programs With Floating Point computations
, 2002
"... Numerical computations form an essential part of almost any realworld program. Traditional approaches to termination of logic programs are restricted to domains isomorphic to N , more recent works study termination of integer computations. Termination of computations involving real numbers is cumbe ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
Numerical computations form an essential part of almost any realworld program. Traditional approaches to termination of logic programs are restricted to domains isomorphic to N , more recent works study termination of integer computations. Termination of computations involving real numbers is cumbersome and counterintuitive due to rounding errors and implementation conventions. We present a novel technique that allows us to prove termination of such computations.
Termination Analysis of Logic Programs Using Acceptability with General Term Orders
, 2000
"... We present a new approach to termination analysis of logic programs. The essence of ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
We present a new approach to termination analysis of logic programs. The essence of