Sciweavers

PPDP
2004
Springer

Semi-naive evaluation in linear tabling

13 years 10 months ago
Semi-naive evaluation in linear tabling
Semi-naive evaluation is an effective technique employed in bottom-up evaluation of logic programs to avoid redundant joins of answers. The impact of this technique on top-down evaluation had been unknown. In this paper, we introduce semi-naive evaluation into linear tabling, a top-down resolution mechanism for tabled logic programs. We give the conditions for the technique to be safe and propose an optimization technique called early answer promotion to enhance its effectiveness. While semi-naive evaluation is not as effective in linear tabling as in bottom-up evaluation, it is worthwhile to be adopted. Our benchmarking shows that this technique gives significant speed-ups to some programs. Categories and Subject Descriptors D.3.2 [Programming languages]: Language Classifications—Constraint and logic languages General Terms Languages Keywords Prolog, Semi-naive evaluation, Recursion, Tabling, Memoization, Linear tabling
Neng-Fa Zhou, Yi-Dong Shen, Taisuke Sato
Added 02 Jul 2010
Updated 02 Jul 2010
Type Conference
Year 2004
Where PPDP
Authors Neng-Fa Zhou, Yi-Dong Shen, Taisuke Sato
Comments (0)