
Proceedings of the Twenty-Fifth International Joint Conference on Artificial Intelligence (IJCAI-16) Constraint Answer Set Programming versus Satisfiability Modulo Theories ⇤ Yuliya Lierler and Benjamin Susman University of Nebraska at Omaha [email protected] and [email protected] Abstract logic programs with constraints versus logic programs mod- ulo theories become apparent. At the same time, we intro- Constraint answer set programming is a promising duce the notion of constraint formulas, which are similar to research direction that integrates answer set pro- that of logic programs with constraints. We identify a spe- gramming with constraint processing. It is often in- cial class of SMT theories that we call “uniform”. Commonly formally related to the field of Satisfiability Modulo used theories in satisfiability modulo solving such as integer Theories. Yet, the exact formal link is obscured as linear, difference logic, and linear arithmetics belong to uni- the terminology and concepts used in these two re- form theories. This class of theories helps us to establish pre- search areas differ. In this paper, we make the link cise links (i) between constraint formulas and SMT formulas, between these two areas precise. and (ii) between CASP and SMT. We are able to then provide a formal description relating a family of distinct constraint Introduction answer set programming formalisms. Constraint answer set programming (CASP) [Mellarkod et We believe that this unified outlook allows us not only to al., 2008; Gebser et al., 2009; Balduccini, 2009; Lierler, better understand the landscape of CASP languages and sys- 2014] is a promising research direction that integrates answer tems, but also to foster new ideas for CASP solvers design set programming (ASP), a powerful knowledge representa- as well as SMT solvers design. For example, theoretical re- tion paradigm, with constraint processing. Typical answer set sults of this work establish the method for using SMT sys- programing tools start their computation with grounding, a tems for computing answer sets of a broad class of “tight” process that substitutes variables for passing constants in re- constraint answer set programs. Similarly, CASP technology spective domains. Thus large domains often form an obsta- can be used to solve certain classes of SMT problems. cle for classical ASP. CASP enables a mechanism to model The outline of the paper is as follows. We start by review- constraints over large domains so that they are processed in ing concepts of logic programs, completion, and (input) an- a non-typical way for ASP tools by delegating their solving swer sets. We then present (i) generalized constraint satisfac- to constraint solver systems specifically designed to handle tion problems, (ii) constraint answer set programs, and (iii) large and sometimes infinite-domains. CASP solvers includ- constraint formulas. Next we introduce satisfiability modulo ing CLINGCON [Gebser et al., 2009] and EZCSP [Balduccini, theories and respective SMT formulas. We define a class of 2009] already put CASP on the map of efficient automated uniform theories and establish links between CASP and SMT. reasoning tools. The paper concludes by relating a family of distinct constraint Constraint answer set programming often cites itself as answer set programming formalisms. a related initiative to Satisfiability Modulo Theories (SMT) solving [Barrett and Tinelli, 2014]. Yet, the exact link is ob- Logic Programs, Completion, and Input scured as the terminology and concepts used in both fields differ. To add to the complexity of the picture several answer Answer Sets set programming modulo theories formalisms have been pro- A vocabulary is a set of propositional symbols also called posed. For instance, Liu et.al. [2012], Janhunen et.al [2011], atoms. As customary, a literal is an atom a or its negation, and Lee and Meng [2013] introduced logic programs mod- denoted a.A(propositional) logic program, denoted by ⇧, ulo linear constraints, logic programs modulo difference con- over vocabulary¬ σ is a set of rules of the form straints, and ASPMT programs respectively. In this work we attempt to unify the terminology used in a b1,...,b`,notb`+1,..., notbm, (1) CASP and SMT so that the differences and similarities of where a is an atom over σ or , and each bi, 1 i m, is ⇤We would like to thank Martin Brain for the discussions that σ ? lead us to undertake this research. We are also grateful to Vladimir an atom in . We will sometime use the abbreviated form for Lifschitz, Cesare Tinelli, and Mirek Truszczynski for the conversa- a rule (1) tions related to the topic of this paper. a B (2) 1181 where B stands for b1,...,b`,notb`+1,..., notbm, and is set of ⇧ relative to ◆ if and only if X satisfies program’s input- also called a body. We sometimes identify B with the propo- completion IComp(⇧,◆). sitional formula b1 ... b` b`+1 ... bm and note that the order of its terms^ is^ immaterial.^¬ ^ The^ expression¬ a is the Constraint Answer Set Programs head of the rule. When a is , we often omit it and say that ? We start this section by presenting primitive constraints as de- the head is empty. We write hd(⇧) for the set of nonempty fined by Marriott and Stuckey [1998, Section 1.1] using the heads of rules in ⇧. We refer the reader to the paper by Gel- notation convenient for our purposes. We refer to this con- fond and Lifschitz [1988] for details on the definition of an cept as a constraint dropping the word “primitive”. We use answer set. constraints to define a notion of a generalized constraint sat- We call a rule whose body is empty a fact. In such cases, isfaction problem that Marriott and Stuckey refer to as “con- we drop the arrow. We sometimes may identify a set X of straint”. We then review constraint satisfaction problems as atoms with a set of facts a. a X . Also, it is customary { | 2 } commonly defined in artificial intelligence literature and il- for a given vocabulary σ, to identify a set X of atoms over σ lustrate that they are special case of generalized constraint with (i) a complete and consistent set of literals over σ con- satisfaction problems. structed as X a a σ X , and respectively with (ii) an assignment function[{¬ | or2 interpretation\ } that assigns truth value Constraints and Generalized Constraint Satisfaction true to every atom in X and false to every atom in σ X. Problem We adopt the following convention: for a func- ⌫ ⇧ σ \ tion ⌫ and an element x, by x we denote the value that func- For a program over vocabulary , the completion ⌫ of ⇧ [Clark, 1978], denoted by Comp(⇧), is the set of clas- tion ⌫ maps x to (in other words, x = ⌫(x)). A domain is sical formulas that consists of the implications B a for all a nonempty set of elements (values). A signature ⌃ is a set rules (2) in ⇧ and the implications ! of variables, function symbols (or f-symbols), and predicate symbols. Function and predicate symbols are associated with a B (3) a positive integer called arity. By ⌃ v, ⌃ r, and ⌃ f we de- ! | | | a B ⇧ note the subsets of ⌃ that contain all variables, all predicate _2 symbols, and all f-symbols respectively. for all atoms a in σ. For instance, we can define signature ⌃1 = s, r, E, Q by It is well known that for the large class of logic programs, saying that s and r are variables, E is a predicate{ symbol} of referred to as “tight” programs, its answer sets coincide with arity 1, and Q is a predicate symbol of arity 2. Then, ⌃1 v = models of its completion, as shown by Fages [1994]. Tight- | s, r , ⌃1 r = E,Q , ⌃1 f = . ness is a syntactic condition on a program that can be verified { Let} D be| a{ domain.} For| a set; V of variables, we call a by means of program’s dependency graph. The dependency function ⌫ : V D a [V,D] valuation. For a set F of f- graph of ⇧ is the directed graph G such that (i) the vertices symbols, we call! a total function on F an [F, D] f-denotation, of G are the atoms occurring in ⇧, and (ii) for every rule (1) when it maps an n-ary f-symbol into a function Dn D. For in ⇧ whose head is not , G has an edge from atom a to each ! ? a set R of predicate symbols, we call a total function on R an atom b1,...,b`. A program is called tight if its dependency [R, D] r-denotation, when it maps an n-ary predicate symbol graph is acyclic. into an n-ary relation on D. We now introduce a generalization of a concept of an in- A table below presents definitions of sample domain D1, [ ] put answer set by Lierler and Truszczynski 2011 . In this valuations ⌫1, ⌫2, and r-denotations ⇢1 and ⇢2. work, we consider input answer sets relative to input vocab- D1 1, 2, 3 ularies. We then extend the definition of completion so that { } ⌫1 ⌫1 ⌫1 [⌃1 v,D1] valuation, where s = r =1 we can state the result by Fages for the case of input answer | ⌫2 ⌫2 ⌫2 [⌃1 v,D1] valuation, where s =2and r =1 sets. These concepts are essential for introducing constraint | answer set programs and constraint formulas as they are de- ⇢1 [⌃1 r,D1] r-denotation, where E| ⇢1 = 1 ,Q⇢1 = 1, 1 , 2, 2 , 3, 3 fined over two disjoint vocabularies so that atoms stemming {h i} {h i h i h i} from those vocabularies “behave” differently. Input answer ⇢2 [⌃1 r,D1] r-denotation, where E| ⇢2 = 2 , 3 , Q⇢2 = Q⇢1 .
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages7 Page
-
File Size-