Termination analysis of logic programs using acceptability with general term orders

We present a new approach to termination analysis of logic programs. The essence of the approach is that we make use of general term-orderings (instead of level mappings), like it is done in transformational approaches to logic program termination analysis, but that we apply these orderings directly to the logic program and not to the term-rewrite system obtained through some transformation. We define some variants of acceptability, based on general term-orderings, and show how they are equivalent to LD-termination. We develop a demand driven, constraint-based approach to verify these acceptability-variants. The advantage of the approach over standard acceptability is that in some cases, where complex level mappings are needed, fairly simple term-orderings may be easily generated. The advantage over transformational approaches is that it avoids the transformation step all together.

[1]  Hans Zantema,et al.  Termination of Logic Programs Using Semantic Unification , 1995, LOPSTR.

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

[3]  Lutz Plümer Termination Proofs for Logic Programs , 1990, Lecture Notes in Computer Science.

[4]  Annalisa Bossi,et al.  Norms on Terms and their use in Proving Universal Termination of a Logic Program , 1994, Theor. Comput. Sci..

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

[6]  Christophe Verschaetse Static termination analysis for definite Horn clause programs , 1992 .

[7]  Zohar Manna,et al.  Proving termination with multiset orderings , 1979, CACM.

[8]  Nachum Dershowitz,et al.  Topics in Termination , 1993, RTA.

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

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

[11]  Danny De Schreye,et al.  Termination of Logic Programs: The Never-Ending Story , 1994, J. Log. Program..

[12]  Jieh Hsiang Rewrite Method for Theorem Proving in First Order Theory with Equality , 1987, J. Symb. Comput..

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

[14]  Yehoshua Sagiv,et al.  Automatic Termination Analysis of Logic Programs , 1997, ICLP.

[15]  T. Arts Automatically proving termination and innermost normalisation of term rewriting systems , 2001 .

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

[17]  Deepak Kapur,et al.  A Transformational Methodology for Proving Termination of Logic Programs , 1991, CSL.

[18]  Danny De Schreye,et al.  Termination Analysis: Some Practical Properties of the Norm and Level Mapping Space , 1998, IJCSLP.