Query answering and answer set computing systems
Chitta R. Baral · Cambridge University Press eBooks · 2003
In this chapter we discuss three query answering and answer set computing systems: Smodels, dlv and PROLOG. Both Smodels and dlv are answer set computing systems and allow an input language with features and constructs not in AnsProlog * . While the Smodels system extends AnsProlog ⊥ and AnsProlog ⊥, ¬ , the dlv system extends AnsProlog ⊥, or and AnsProlog ⊥, or ,¬ . We describe the syntax and semantics of the input language of Smodels and dlv and present several programs in their syntax. This chapter can be thought of as a quick introduction to programming in Smodels and dlv, not a full-fledged manual. At the time of writing this, both Smodels and dlv were evolving systems and readers are recommended to visit their corresponding web sites for the latest features. After describing the Smodels and dlv systems with several small example programs, we consider several medium and large size applications and encode them using one or the other. In particular, we consider encoding of combinatorial auctions together with logical preference criteria, planning with durative actions and resources, resource constraint project scheduling, and specification and verification of active databases. Finally, we give a brief introduction to the PROLOG interpreter and its approach to answering queries with respect to AnsProlog programs. We present conditions for AnsProlog programs and queries for which the PROLOG interpreter is sound and complete. We illustrate these conditions through several examples. Smodels The Smodels system is meant for computing the answer sets of AnsProlog ⊥ and AnsProlog ⊥,¬ programs and allows certain extensions to them.