On greatest fixpoint semantics of logic programming
Résumé
The study of fixpoints has long been at the heart of logic programming. However, whereas least fixpoint semantics works well for SLD‐refutations (i.e. is sound and complete), there is no satisfactory (i.e. complete) fixpoint semantics for infinite derivations. In this paper, we focus on this problem. Standard approaches in this area consist in concentrating on infinite derivations that can be seen as computing, in the limit, some infinite object. This is usually done by extending the domain of computation with infinite elements and then defining the meaning of programs in terms of greatest fixpoints. The main drawback of these approaches is that the semantics defined is not complete. Hence, since defining a greatest fixpoint semantics for logic programs amounts to consider a program as a set of co‐inductive definitions, we focus on this identification at a deeper level by considering infinite derivations as proof‐terms in a co‐inductive set. This reading leads into considering derivations as proofs rather than computations and allows one to show that for the subclass of infinite derivations over the domain of finite terms, a complete greatest fixpoint semantics can be obtained. Our main result is that the greatest fixpoint of the one‐step‐inference operator for the C‐semantics corresponds to atoms that have a non‐failing fair derivation with the additional property that complete information over a variable is obtained after finitely many steps.