|
|
|
|
Logic Programming Systems
DLV: An Advanced System for Knowledge Representation and Reasoning
PDF Version available HERE. System Web Page: http://www.dlvsystem.com DLV [5] is a KRR system which is based on Disjunctive Logic Programming (DLP) [6] under the stable model semantics (also called Answer Set Programming) [4]. Roughly, a DLP program is a set of disjunctive rules, i.e., clauses of the form a1 v ... v an :- b1,..., bk, not bk+1,..., not bm
where atoms a1, ..., an, b1, ..., bm may contain variables. The intuitive reading of such a rule is ``If all b1,..., bk are true and none of bk+1,..., bm is true, then at least one atom in a1, ..., an must be true.'' DLP has a very high expressive power - it allows to express all problems in the complexity class $\Sigma^P_2$ (i.e., NPNP) [3]. Thus, under usual complexity conjuctures, DLP is strictly more expressive than both SAT and CSP, the power of which is ``limited'' to NP, and it can naturally represent a large class of relevant problems ranging from artificial intelligence to advanced database applications. DLV is generally considered the state-of-the-art implementation of disjunctive logic programming. Its efficiency has been confirmed by the results of First Answer Set Programming System Competition (http://asparagus.cs.uni-potsdam.de/contest/), where DLV won the DLP category. Moreover, DLV turned out to be very efficient also on non-disjunctive logic programs, as it finished first also in the general category MGS (Modeling, Grounding, Solving - also called royal competition, open to all ASP systems). The implementation of the DLV system is based on very solid theoretical foundations, and exploits major results that have been achieved in the area of logic programming and nonmonotonic reasoning in the last 15 years, ranging from database optimization techniques, to heuristics and new AI methods. The system has been recently engineered for industrial exploitation, and is successfully employed in many challenging real-world applications, for instance in the area of Knowledge Management, and advanced Information Integration. Among the many features of the system, it is worth remarking the following:
DLV is able to solve complex problems and can efficiently deal also with large input data.
For up-to-date information on the system and a full manual we refer to http://www.dlvsystem.com}, where also download binaries of the current release and various examples are available. References[1] Francesco Buccafurri, Nicola Leone, and Pasquale Rullo. Enhancing Disjunctive Datalog by Constraints. IEEE Transactions on Knowledge and Data Engineering, 12(5), September/October 2000.[2] Tina Dell'Armi, Wolfgang Faber, Giuseppe Ielpa, Nicola Leone, and Gerald Pfeifer. Aggregate Functions in Disjunctive Logic Programming: Semantics, Complexity, and Implementation in DLV. Proceedings of the 18th International Joint Conference on Artificial Intelligence (IJCAI) 2003, pages 847-852, Acapulco, Mexico, August 2003. Morgan Kaufmann Publishers. [3] Thomas Eiter, Georg Gottlob, and Heikki Mannila. Disjunctive Datalog. ACM Transactions on Database Systems, 22(3):364-418, September 1997. [4] Michael Gelfond and Vladimir Lifschitz. Classical Negation in Logic Programs and Disjunctive Databases. New Generation Computing, 9:365-385, 1991. [5] Nicola Leone, Gerald Pfeifer, Wolfgang Faber, Thomas Eiter, Georg Gottlob, Simona Perri, and Francesco Scarcello. The DLV System for Knowledge Representation and Reasoning. ACM Transactions on Computational Logic, 7(3):499-562, July 2006. [6] Jack Minker. On Indefinite Data Bases and the Closed World Assumption. In D.W. Loveland, editor, Proceedings 6th Conference on Automated Deduction (CADE '82), volume 138 of Lecture Notes in Computer Science, pages 292--308, New York, 1982. Springer. 1http://www.cril.univ-artois.fr/CPAI06 2http://sato-www.cs.titech.ac.jp/prism/ |
|
|