2008 | OriginalPaper | Chapter
A Sketch of a Complete Scheme for Tabled Execution Based on Program Transformation
Authors : Pablo Chico de Guzmán, Manuel Carro, Manuel V. Hermenegildo
Published in: Logic Programming
Publisher: Springer Berlin Heidelberg
Activate our intelligent search to find suitable subject content or patents.
Select sections of text to find matching patents with Artificial Intelligence. powered by
Select sections of text to find additional relevant content using AI-assisted search. powered by
Tabled evaluation has proved to be an effective method to improve several aspects of goal-oriented query evaluation, including termination and complexity. “Native” implementations of tabled evaluation offer good performance, but also require significant implementation effort, affecting compiler and abstract machine. Alternatively, program transformation-based implementations, such as the original
continuation call
(
CCall
) technique, offer lower implementation burden at some efficiency cost. A limitation of the original
CCall
proposal is that it limits the interleaving of tabled and non-tabled predicates and thus cannot be used for arbitrary programs. In this work we present an extension of the
CCall
technique that allows the execution of arbitrary tabled programs, as well as some performance results. Our approach offers a useful tradeoff that can be competitive with state-of-the-art implementations, while keeping implementation effort relatively low.