Characterisations of Termination in Logic Programming
Abstract
The procedural interpretation of logic programs and queries is
parametric to the selection rule, i.e. the rule that determines
which atom is selected in each resolution step. Termination of
logic programs and queries depends critically on the selection rule.
In this survey, we present a unified view and comparison of seven
notions of universal termination considered in the literature, and
the corresponding classes of programs. For each class, we focus on a
sufficient, and in most cases even necessary, declarative
characterisation for determining that a program is in that class.
By unifying different formalisms and making appropriate assumptions,
we are able to establish a formal hierarchy between the different
classes and their respective declarative characterisations.