Effectively reasoning about infinite sets in answer set programming

  • Authors:
  • Victor Marek;Jeffrey B. Remmel

  • Affiliations:
  • Department of Computer Science, University of Kentucky, Lexington, KY;Departments of Mathematics and Computer Science, University of California at San Diego, La Jolla, CA

  • Venue:
  • Logic programming, knowledge representation, and nonmonotonic reasoning
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

In answer set programming (ASP), one does not allow the use of function symbols. Disallowing function symbols avoids the problem of having logic programs which have stable models of excessively high complexity. For example, Marek, Nerode, and Remmel showed that there exist finite predicate logic programs which have stable models but which have no hyperarithmetic stable model. Disallowing function symbols also avoids problems with the occurs check that can lead to wrong answers in logic programs. Of course, by eliminating function symbols, one loses a lot of expressive power in the language. In particular, it is difficult to directly reason about infinite sets in ASP. Blair, Marek, and Remmel [BMR08] developed an extension of logic programming called set based logic programming. In the theory of set based logic programming, the atoms represent subsets of a fixed universe X and one is allowed to compose the one-step consequence operator with a monotonic idempotent operator (miop) O so as to ensure that the analogue of stable models are always closed under O. We let SP denote the set of fixed points of finite unions of the sets represented by the atoms of P under the miops associated with P. We shall show that if there is a coding scheme which associates to each element A ∈ SP a code c(A) such that there are effective procedures, which given two codes c(A) and c(B) of elements A,B ∈ SP, will (i) decide if A ⊆ B, (ii) decide if A ∩ B = θ, and (iii) produce the codes of the closures of A ∪ B and of A ∩ B under the miop operators associated with P, then we can effectively decide whether an element A ∈ SP is a stable model of P. Thus in such a situation, we can effectively reason about the stable models of P even though SP contains infinite sets. Our basic example is the case where all the sets represented by the atoms of P are regular languages but many other examples are possible such as when the sets involved are certain classes of convex sets in Rn.