Logic programming and Co-inductive definitions
Résumé
This paper aims to define a complete semantics for a class of non-terminating logic programs. Standard approaches to deal with this problem consist in concentrating on programs where infinite derivations 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. The approach considered here is exactly the opposite. We concentrate on the infinite derivations that do not compute an infinite term: this paper studies the operational counterpart of the greatest fixpoint of the one-step-inference operator for the C-semantics. The main result is that such fixpoint corresponds to the set of atoms that have a non-failing fair derivation with the additional property that complete information over a variable is obtained after finitely many steps.