XSB as an efficient deductive database engine
SIGMOD '94 Proceedings of the 1994 ACM SIGMOD international conference on Management of data
An abstract machine for tabled execution of fixed-order stratified logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
CHAT: the copy-hybrid approach to tabling
Future Generation Computer Systems
Proceedings of the 17th International Conference on Logic Programming
Beyond Depth-First: Improving Tabled Logic Programs through Alternative Scheduling Strategies
PLILP '96 Proceedings of the 8th International Symposium on Programming Languages: Implementations, Logics, and Programs
Linear tabling strategies and optimizations
Theory and Practice of Logic Programming
Concurrent and Local Evaluation of Normal Programs
ICLP '08 Proceedings of the 24th International Conference on Logic Programming
On Improving the Efficiency of Deterministic Calls and Answers in Tabled Logic Programs
EPIA '09 Proceedings of the 14th Portuguese Conference on Artificial Intelligence: Progress in Artificial Intelligence
Swapping evaluation: A memory-scalable solution for answer-on-demand tabling*
Theory and Practice of Logic Programming
Theory and Practice of Logic Programming - Prolog Systems
On improving the efficiency and robustness of table storage mechanisms for tabled evaluation
PADL'07 Proceedings of the 9th international conference on Practical Aspects of Declarative Languages
Hi-index | 0.00 |
Tabling is an implementation technique that improves the declarativeness and expressiveness of Prolog by reusing answers to subgoals. During tabled execution, several decisions have to be made. These are determined by the scheduling strategy. Whereas a strategy can achieve very good performance for certain applications, for others it might add overheads and even lead to unacceptable inefficiency. The ability of using multiple strategies within the same evaluation can be a means of achieving the best possible performance. In this work, we present how the YapTab system was designed to support dynamic mixed-strategy evaluation of the two most successful tabling scheduling strategies: batched scheduling and local scheduling.