Enhancing a DLP System for Advanced Database Applications

* Final gross prices may vary according to local VAT.

Get Access


Disjunctive logic programming under answer set semantics (DLP, ASP) is a powerful rule-based formalism for knowledge representation and reasoning. The language of DLP is very expressive, and allows to model also advanced knowledge-based tasks arising in modern application-areas like, e.g., information integration and knowledge management. The recent development of efficient systems supporting disjunctive logic programming, has encouraged the usage of DLP in real-world applications. However, despite the high expressiveness of their languages, the success of DLP systems is still dimmed when the applications of interest become data intensive (current DLP systems work only in main memory) or they need the execution of some inherently procedural sub-tasks. The main goal of this paper is precisely to improve efficiency and usability of DLP systems in these contexts, for a full exploitation of DLP in real-world applications.

We develop a DLP system which (i) carries out as much as possible of the reasoning tasks in mass memory without degrading performances, allowing to deal with data-intensive applications; (ii) extends the expressiveness of DLP language with external function calls, yet improving efficiency (at least for procedural sub-tasks) and knowledge-modeling power; (iii) incorporates an optimization strategy, based on an unfolding technique, for efficient query answering; (iv) supports primitives allowing to integrate data from different databases in a simple way.

We test the system on a real data-integration application, comparing its performance against the main DLP systems. Test results are very encouraging: the proposed system can handle significantly larger amounts of data than competitor systems, and it is also faster in response time.