Abstract

Co-logic programming is an extension of the conventional logic programming language, by allowing each predicate to be annotated as either inductive or coinductive. To define its procedural semantics as well as an alternating fixpoint semantics, the stratification restriction, a condition on predicate dependency in programs, has been imposed on co-logic programs co-LPs. In this paper, we first consider dual programs in co-logic programming: Given a program P, its dual program $$P^{*}$$ is a program such that it defines the complement of P, i.e., for any ground atom $$p\overline{t}$$, it computes its negation $$\lnot p\overline{t}$$. When we consider co-LPs with negation, we show that the stratification restriction becomes too restrictive in general, and that the Horn $$\mu $$-calculus by Charatonik et al. can be used as an extension of co-logic programming for handling co-LPs. We then consider some applications of non-stratified co-LPs to Answer Set Programming ASP and the well-founded semantics WFS. In particular, we give new iterated fixpoint characterizations of answer sets as well as the WFS via dual programs. We also discuss some applications of non-stratified co-LPs to program transformation such as partial deduction, and a proof procedure for the WFS.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call