@inproceedings{6e5c3a43fe5240a1a5ec971fa1d9a215,
title = "Beyond depth-first: Improving tabled logic programs through alternative scheduling strategies",
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.",
author = "Juliana Freire and Terrance Swift and Warren, {David S.}",
year = "1996",
month = jan,
day = "1",
doi = "10.1007/3-540-61756-6_89",
language = "English (US)",
isbn = "3540617566",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer Verlag",
pages = "243--258",
editor = "Swierstra, {S. Doaitse} and Herbert Kuchen",
booktitle = "Programming Languages",
note = "8th International Symposium on Programming Languages, Implementations, Logics, and Programs, PLILP 1996 ; Conference date: 24-09-1996 Through 27-09-1996",
}