On modular termination proofs of general logic programs

We propose a modular method for proving termination of general logic programs (i.e. logic programs with negation). It is based on the notion of acceptable programs, but it allows us to prove termination in a truly modular way. We consider programs consisting of a hierarchy of modules and supply a general result for proving termination by dealing with each module separately. For programs which are in a certain sense well-behaved, namely well-moded or well-typed programs, we derive both a simple verification technique and an iterative proof method. Some examples show how our system allows for greatly simplified proofs.

[1]  Michael Codish,et al.  A Semantic Basis for the Termination Analysis of Logic Programs , 1999, J. Log. Program..

[2]  Sandro Etalle,et al.  Termination of Well-Moded Programs , 1999, J. Log. Program..

[3]  Teodor C. Przymusinski Every logic program has a natural stratification and an iterated least fixed point model , 1989, PODS.

[4]  Leon Sterling,et al.  The Art of Prolog , 1987, IEEE Expert.

[5]  Zoltan Somogyi,et al.  Termination Analysis for Mercury , 1997, SAS.

[6]  Krzysztof R. Apt,et al.  Verification of Logic Programs with Delay Declarations , 1995, AMAST.

[7]  Lawrence Cavedon,et al.  Continuity, Consistency, and Completeness Properties for Logic Programs , 1989, ICLP.

[8]  Dino Pedreschi,et al.  Studies in Pure Prolog: Termination , 1990 .

[9]  Maurizio Martelli,et al.  A New SLDNF-Tree , 1992, Inf. Process. Lett..

[10]  Bart Demoen,et al.  Analysing Logic Programs Using 'Prop'-ositional Logic Programs and a Magic Wand , 1993, ILPS.

[11]  Wlodzimierz Drabent Do Logic Programs Resemble Programs in Conventional Languages? , 1987, SLP.

[12]  Danny De Schreye,et al.  Termination proofs for logic programs with tabling , 2001, TOCL.

[13]  Saumya K. Debray,et al.  Static inference of modes and data dependencies in logic programs , 1989, TOPL.

[14]  Maurizio Gabbrielli,et al.  Goal independency and call patterns in the analysis of logic programs , 1994, SAC '94.

[15]  Gerda Janssens,et al.  Deriving Descriptions of Possible Values of Program Variables by Means of Abstract Interpretation , 1990, J. Log. Program..

[16]  Dino Pedreschi,et al.  Reasoning about Termination of Pure Prolog Programs , 1993, Inf. Comput..

[17]  Krzysztof R. Apt,et al.  On the occur-check-free PROLOG programs , 1994, TOPL.

[18]  Saumya K. Debray,et al.  Automatic Mode Inference for Logic Programs , 1988, J. Log. Program..

[19]  Maurice Bruynooghe,et al.  A Framework for Analyzing the Termination of Definite Logic Programs with respect to Call Patterns , 1992, FGCS.

[20]  Chandrabose Aravindan,et al.  Partial Deduction of Logic Programs wrt Well-Founded Semantics , 1992, ALP.

[21]  Dino Pedreschi,et al.  Modular termination proofs for logic and pure PROLOG programs , 1993 .

[22]  J. Lloyd Foundations of Logic Programming , 1984, Symbolic Computation.

[23]  Dino Pedreschi,et al.  Modular Verification of Logic Programs , 1996 .

[24]  N. A C H U M D E R S H O W I T Z Termination of Rewriting' , 2022 .

[25]  Uday S. Reddy,et al.  A Framework of Directionality for Proving Termination of Logic Programs , 1992, JICSLP.

[26]  Jan Maluszynski,et al.  AND-Parallelism with Intelligent Backtracking for Annotated Logic Programs , 1985, SLP.

[27]  Wolfgang Thomas,et al.  Handbook of Theoretical Computer Science, Volume B: Formal Models and Semantics , 1990 .

[28]  Elena Marchiori Practical Methods for Proving Termination of General Logic Programs , 1996, J. Artif. Intell. Res..

[29]  Krzysztof R. Apt,et al.  Introduction to Logic Programming , 1988 .

[30]  Sandro Etalle,et al.  On the Unification Free Prolog Programs , 1993, MFCS.

[31]  Danny De Schreye,et al.  Constraint-based termination analysis of logic programs , 1999, TOPL.

[32]  Danny De Schreye,et al.  Modular Termination Proofs for Prolog with Tabling , 1999, PPDP.

[33]  Marc Bezem,et al.  Strong Termination of Logic Programs , 1991, J. Log. Program..

[34]  Dino Pedreschi,et al.  Verification of Logic Programs , 1999, J. Log. Program..