The Disjunctive Datalog System DLV

DLV is one of the most successful and widely used answer set programming (ASP) systems. It supports a powerful language extending Disjunctive Datalog with many expressive constructs, including aggregates, strong and weak constraints, functions, lists, and sets. The system provides database connectivity offering a simple way for powerful reasoning on top of relational databases. In this paper, we provide an ample overview of the DLV system. We illustrate its input language and give indications on how to use it for representing knowledge. We also provide a panorama on the system architecture and the main optimizations it incorporates. We then focus on DLVDB, an extension of the basic system which allows for tight coupling with traditional database systems. Finally, we report on a number industrial applications which rely on DLV.

[1]  Francesco Ricca,et al.  The DLV Java Wrapper , 2003, APPIA-GULP-PRODE.

[2]  Francesco Ricca,et al.  Experimenting with parallelism for the instantiation of ASP programs , 2008, J. Algorithms.

[3]  Chitta Baral,et al.  Logic Programming and Knowledge Representation , 1994, J. Log. Program..

[4]  Nicola Leone,et al.  Exploiting ASP for Semantic Information Extraction , 2005, Answer Set Programming.

[5]  Giovambattista Ianni,et al.  Computable Functions in ASP: Theory and Implementation , 2008, ICLP.

[6]  Francesco Buccafurri,et al.  Enhancing Disjunctive Datalog by Constraints , 2000, IEEE Trans. Knowl. Data Eng..

[7]  Wolfgang Faber,et al.  On look-ahead heuristics in disjunctive logic programming , 2008, Annals of Mathematics and Artificial Intelligence.

[8]  Maurizio Lenzerini,et al.  Data integration: a theoretical perspective , 2002, PODS.

[9]  Wolfgang Faber,et al.  Look-back techniques and heuristics in DLV: Implementation, evaluation, and comparison to QBF solvers , 2008, J. Algorithms.

[10]  Michael Gelfond,et al.  Classical negation in logic programs and disjunctive databases , 1991, New Generation Computing.

[11]  Nicola Leone,et al.  An ASP-Based System for e-Tourism , 2009, LPNMR.

[12]  Francesco Scarcello,et al.  Enhancing DLV instantiator by backjumping techniques , 2007, Annals of Mathematics and Artificial Intelligence.

[13]  Roman Schindlauer,et al.  OntoDLV: An ASP-based System for Enterprise Ontologies , 2009, J. Log. Comput..

[14]  Francesco Scarcello,et al.  Improving ASP Instantiators by Join-Ordering Methods , 2001, LPNMR.

[15]  Frank Wolter,et al.  Semi-qualitative Reasoning about Distances: A Preliminary Report , 2000, JELIA.

[16]  Francesco Scarcello,et al.  Disjunctive Stable Models: Unfounded Sets, Fixpoint Semantics, and Computation , 1997, Inf. Comput..

[17]  Wolfgang Faber,et al.  Logic Programming and Nonmonotonic Reasoning , 2011, Lecture Notes in Computer Science.

[18]  Wolfgang Faber,et al.  A backjumping technique for Disjunctive Logic Programming , 2006, AI Commun..

[19]  Giovambattista Ianni,et al.  External sources of knowledge and value invention in logic programming , 2007, Annals of Mathematics and Artificial Intelligence.

[20]  Mario Alviano,et al.  Magic Sets for disjunctive Datalog programs , 2012, Artif. Intell..

[21]  Giorgio Terracina,et al.  Experimenting with recursive queries in database and logic programming systems , 2007, Theory and Practice of Logic Programming.

[22]  Francesco Ricca,et al.  A parallel ASP instantiator based on DLV , 2010, DAMP '10.

[23]  S. Radziszowski Small Ramsey Numbers , 2011 .

[24]  Wolfgang Faber,et al.  Enhancing the Magic-Set Method for Disjunctive Datalog Programs , 2004, ICLP.

[25]  Hans Tompits,et al.  A Uniform Integration of Higher-Order Reasoning and External Evaluations in Answer-Set Programming , 2005, IJCAI.

[26]  Victor W. Marek,et al.  The Relationship Between Logic Program Semantics and Non-Monotonic Reasoning , 1989, ICLP.

[27]  Pasquale Rullo,et al.  OLEX - A Reasoning-Based Text Classifier , 2004, JELIA.

[28]  Wolfgang Faber,et al.  Pushing Goal Derivation in DLP Computations , 1999, LPNMR.

[29]  Andrea Calì,et al.  Query rewriting and answering under constraints in data integration systems , 2003, IJCAI.

[30]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[31]  Wolfgang Faber,et al.  Semantics and complexity of recursive aggregates in answer set programming , 2011, Artif. Intell..

[32]  Marco Manna,et al.  HiLeX: A System for Semantic Information Extraction from Web Documents , 2006, ICEIS.

[33]  F. Ricca,et al.  Visual Querying and Application Programming Interface for an ASP-based Ontology Language ⋆ , 2007 .

[34]  Nicola Leone,et al.  An ASP-Based System for Team-Building in the Gioia-Tauro Seaport , 2010, PADL.

[35]  Wolfgang Faber,et al.  The DLV system for knowledge representation and reasoning , 2002, TOCL.

[36]  Pasquale Rullo,et al.  Learning rules with negation for text categorization , 2007, SAC '07.

[37]  Wolfgang Faber,et al.  The INFOMIX system for advanced integration of incomplete and inconsistent data , 2005, SIGMOD '05.

[38]  Georg Gottlob,et al.  Complexity and expressive power of logic programming , 2001, CSUR.

[39]  Jan Chomicki,et al.  Specifying and Querying Database Repairs using Logic Programs with Exceptions , 2000, FQAS.

[40]  Krzysztof R. Apt,et al.  Logic Programming , 1990, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[41]  Nicola Leone,et al.  Disjunctive logic programming with types and objects: The DLV+ system , 2007, J. Appl. Log..

[42]  Wolfgang Faber,et al.  Pruning Operators for Disjunctive Logic Programming Systems , 2006, Fundam. Informaticae.