The DLV system for knowledge representation and reasoning

被引:589
作者
Leone, Nicola [1 ]
Pfeifer, Gerald
Faber, Wolfgang
Eiter, Thomas
Gottlob, Georg
Perri, Simona
Scarcello, Francesco
机构
[1] Univ Calabria, Dept Math, I-87030 Arcavacata Di Rende, CS, Italy
[2] Vienna Univ Technol, Inst Informat Syst, A-1040 Vienna, Austria
[3] Univ Calabria, DEIS Dept, I-87030 Arcavacata Di Rende, CS, Italy
关键词
theory; algorithms; performance; answer sets; computational complexity; implementation; knowledge representation; nonmonotonic reasoning; stable models;
D O I
10.1145/1149114.1149117
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Disjunctive Logic Programming (DLP) is an advanced formalism for knowledge representation and reasoning, which is very expressive in a precise mathematical sense: it allows one to express every property of finite structures that is decidable in the complexity class Sigma(P)(2) (NPNP). Thus, under widely believed assumptions, DLP is strictly more expressive than normal (disjunction-free) logic programming, whose expressiveness is limited to properties decidable in NP. Importantly, apart from enlarging the class of applications which can be encoded in the language, disjunction often allows for representing problems of lower complexity in a simpler and more natural fashion. This article presents the DLV system, which is widely considered the state-of-the-art implementation of disjunctive logic programming, and addresses several aspects. As for problem solving, we provide a formal definition of its kernel language, function-free disjunctive logic programs (also known as disjunctive datalog), extended by weak constraints, which are a powerful tool to express optimization problems. We then illustrate the usage of DLV as a tool for knowledge representation and reasoning, describing a new declarative programming methodology which allows one to encode complex problems (up to Delta(P)(3)-complete problems) in a declarative fashion. On the foundational side, we provide a detailed analysis of the computational complexity of the language of DLV, and by deriving new complexity results we chart a complete picture of the complexity of this language and important fragments thereof. Furthermore, we illustrate the general architecture of the DLV system, which has been influenced by these results. As for applications, we overview application front-ends which have been developed on top of DLV to solve specific knowledge representation tasks, and we briefly describe the main international projects investigating the potential of the system for industrial exploitation. Finally, we report about thorough experimentation and benchmarking, which has been carried out to assess the efficiency of the system. The experimental results confirm the solidity of DLV and highlight its potential for emerging application areas like knowledge management and information integration.
引用
收藏
页码:499 / 562
页数:64
相关论文
共 105 条
[1]  
ANGER C, 2001, LECT NOTES COMPUTER, V2173, P406
[2]  
[Anonymous], 1990, HDB THEORETICAL COMP
[3]  
[Anonymous], 1992, FDN DISJUNCTIVE LOGI
[4]  
Apt K. R., 1988, FDN DEDUCTIVE DATABA, P89
[5]   LOGIC PROGRAMMING AND NEGATION - A SURVEY [J].
APT, KR ;
BOL, RN .
JOURNAL OF LOGIC PROGRAMMING, 1994, 20 (1-3) :9-71
[6]  
Aravindan C, 1997, AI COMMUN, V10, P151
[7]  
BABOVICH Y, 2002, CMODELS HOMEPAGE
[8]   LOGIC PROGRAMMING AND KNOWLEDGE REPRESENTATION [J].
BARAL, C ;
GELFOND, M .
JOURNAL OF LOGIC PROGRAMMING, 1994, 20 :73-148
[9]  
Baral C., 2003, Knowledge Representation, Reasoning and Declarative Problem Solving
[10]  
Ben-Eliyahu R., 1994, Annals of Mathematics and Artificial Intelligence, V12, P53, DOI 10.1007/BF01530761