Skip to main navigation Skip to search Skip to main content

Incremental evaluation of tabled prolog: Beyond pure logic programs

  • Stony Brook University

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

8 Scopus citations

Abstract

Tabling, or memoization, enables incremental evaluation of logic programs. When the rules or facts of a program change, we need to recompute only those results that are affected by the changes. The current algorithms for incrementally maintaining memo tables treat insertion of facts/rules differently from their deletion. Hence these techniques cannot be directly applied for incremental evaluation of arbitrary tabled programs, especially those involving Prolog builtins such as findall, other aggregation operations, or non-stratified negation. In this paper, we explore a simpler incremental evaluation algorithm that, based on the dynamic call graph, invalidates and re-evaluates entire calls. The algorithm is agnostic to whether a dependency adds or removes answers from tables, and hence can be applied uniformly to programs with negation, even when the negation is implicit (as is the case with certain aggregation operations). We find that the call-based algorithm is very effective in examples where the call dependencies are largely acyclic (e.g. dynamic programming examples) and is moderately effective when the dependencies contain independent cyclic components (e.g. data flow analysis problems). This is the first practical algorithm to handle all legal tabled logic programs for which incremental evaluation is meaningful.

Original languageEnglish
Title of host publicationPractical Aspects of Declarative Languages - 8th International Symposium, PADL 2006, Proceedings
Pages215-229
Number of pages15
DOIs
StatePublished - 2005
Event8th International Symposium on Practical Aspects of Declarative Languages, PADL 2006 - Charleston, SC, United States
Duration: Jan 9 2006Jan 10 2006

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume3819 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference8th International Symposium on Practical Aspects of Declarative Languages, PADL 2006
Country/TerritoryUnited States
CityCharleston, SC
Period01/9/0601/10/06

Fingerprint

Dive into the research topics of 'Incremental evaluation of tabled prolog: Beyond pure logic programs'. Together they form a unique fingerprint.

Cite this