Termination of logic programs: Transformational methods revisited
In transformational approaches to proving termination of logic programs, one transforms well-moded logic programs into (conditional) term rewriting systems. If termination of the rewrite system implies termination of the logic program, then termination techniques for rewrite systems can be employed for showing termination of logic programs. In this paper, we revisit the transformational approaches of Ganzinger & Waldmann, Chtourou & Rusinowitch, and Arts & Zantema, We will show the surprising result that all three methods are equally powerful. Moreover, it will be shown that the methods are complete for the class of simply moded logic programs. Our implementation uses the dependency pair technique in combination with polynomial interpretations to automatically prove termination of the resulting rewrite system, The empirical results show that the system can compete with sophisticated norm-based approaches to proving termination of logic programs.
termination logic programs transformations term rewriting systems