Beyond depth-first: Improving tabled logic programs through alternative scheduling strategies

Juliana Freire, Terrance Swift, David S. Warren

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Abstract

Tabled evaluations ensure termination of logic programs with finite models by keeping track of which subgoals have been called. Given several variant subgoals in an evaluation, only the first one encountered will use program clause resolution; the rest uses answer resolution. This use of answer resolution prevents infinite looping which happens in SLD. Given the asynchronicity of answer generation and answer return, tabling systems face an important scheduling choice not present in traditional top-down evaluation: How does the order of returning answers to consuming subgoals affect program efficiency. This paper investigates alternate scheduling strategies for tabling in a WAM implementation, the SLG-WAM. The original SLG-WAM had a simple mechanism of scheduling answers to be returned to callers which was expensive in terms of trailing and choice point creation. We propose here a more sophisticated scheduling strategy, Batched Scheduling, which reduces the overheads of these operations and provides dramatic space reduction as well as speedups for many programs. We also propose a second strategy, Local Scheduling, which has applications to non-monotonic reasoning and when combined with answer subsumption can improve the performance of some programs by arbitrary amounts.

Original languageEnglish (US)
Title of host publicationProgramming Languages
Subtitle of host publicationImplementations, Logics, and Programs - 8th International Symposium, PLILP 1996, Proceedings
EditorsS. Doaitse Swierstra, Herbert Kuchen
PublisherSpringer Verlag
Pages243-258
Number of pages16
ISBN (Print)3540617566, 9783540617563
DOIs
StatePublished - 1996
Event8th International Symposium on Programming Languages, Implementations, Logics, and Programs, PLILP 1996 - Aachen, Germany
Duration: Sep 24 1996Sep 27 1996

Publication series

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

Other

Other8th International Symposium on Programming Languages, Implementations, Logics, and Programs, PLILP 1996
CountryGermany
CityAachen
Period9/24/969/27/96

ASJC Scopus subject areas

  • Theoretical Computer Science
  • Computer Science(all)

Fingerprint Dive into the research topics of 'Beyond depth-first: Improving tabled logic programs through alternative scheduling strategies'. Together they form a unique fingerprint.

Cite this