OLD resolution with tabulation
Proceedings on Third international conference on logic programming
An amateur's introduction to recursive query processing strategies
SIGMOD '86 Proceedings of the 1986 ACM SIGMOD international conference on Management of data
Foundations of logic programming; (2nd extended ed.)
Foundations of logic programming; (2nd extended ed.)
Principles of database and knowledge-base systems, Vol. I
Principles of database and knowledge-base systems, Vol. I
Every logic program has a natural stratification and an iterated least fixed point model
PODS '89 Proceedings of the eighth ACM SIGACT-SIGMOD-SIGART symposium on Principles of database systems
Communications of the ACM
Tabled evaluation with delaying for general logic programs
Journal of the ACM (JACM)
Parameter passing and control stack management in Prolog implementation revisited
ACM Transactions on Programming Languages and Systems (TOPLAS)
An abstract machine for tabled execution of fixed-order stratified logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Proceedings of the 17th International Conference on Logic Programming
On a Tabling Engine That Can Exploit Or-Parallelism
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
CAT: The Copying Approach to Tabling
PLILP '98/ALP '98 Proceedings of the 10th International Symposium on Principles of Declarative Programming
Linear tabulated resolution based on Prolog control strategy
Theory and Practice of Logic Programming
Semi-naive evaluation in linear tabling
PPDP '04 Proceedings of the 6th ACM SIGPLAN international conference on Principles and practice of declarative programming
Linear tabling strategies and optimizations
Theory and Practice of Logic Programming
A glimpse of symbolic-statistical modeling by PRISM
Journal of Intelligent Information Systems
Dynamic reordering of alternatives for definite logic programs
Computer Languages, Systems and Structures
Variational Bayes via propositionalized probability computation in PRISM
Annals of Mathematics and Artificial Intelligence
Inside-outside probability computation for belief propagation
IJCAI'07 Proceedings of the 20th international joint conference on Artifical intelligence
New advances in logic-based probabilistic modeling by PRISM
Probabilistic inductive logic programming
Using datalog with binary decision diagrams for program analysis
APLAS'05 Proceedings of the Third Asian conference on Programming Languages and Systems
Xsb: Extending prolog with tabled logic programming
Theory and Practice of Logic Programming - Prolog Systems
Negation elimination for finite PCFGs
LOPSTR'04 Proceedings of the 14th international conference on Logic Based Program Synthesis and Transformation
A Generalized QSQR Evaluation Method for Horn Knowledge Bases
ACM Transactions on Computational Logic (TOCL)
ICCCI'12 Proceedings of the 4th international conference on Computational Collective Intelligence: technologies and applications - Volume Part I
On the efficiency of query-subquery nets: an experimental point of view
Proceedings of the Fourth Symposium on Information and Communication Technology
Hi-index | 0.00 |
Early resolution mechanisms proposed for tabling such as OLDT rely on suspension and resumption of subgoals to compute fixpoints. Recently, a new resolution framework called linear tabling has emerged as an alternative tabling method. The idea of linear tabling is to use iterative computation rather than suspension to compute fixpoints. Although linear tabling is simple, easy to implement, and superior in space efficiency, the current implementations are several times slower than XSB, the state-of-the-art implementation of OLDT, due to re-evaluation of looping subgoals. In this paper, we present a new linear tabling method and propose several optimization techniques for fast computation of fixpoints. The optimization techniques significantly improve the performance by avoiding redundant evaluation of subgoals, re-application of clauses, and reproduction of answers in iterative computation. Our implementation of the method in B-Prolog not only consumes an order of magnitude less stack space than XSB for some programs but also compares favorably well with XSB in speed.