An abstract machine for tabled execution of fixed-order stratified logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Associative-Commutative Discrimination Nets
TAPSOFT '93 Proceedings of the International Joint Conference CAAP/FASE on Theory and Practice of Software Development
On applying or-parallelism and tabling to logic programs
Theory and Practice of Logic Programming
PADL '09 Proceedings of the 11th International Symposium on Practical Aspects of Declarative Languages
Relational Models for Tabling Logic Programs in a Database
Applications of Declarative Programming and Knowledge Management
April: an inductive logic programming system
JELIA'06 Proceedings of the 10th European conference on Logics in Artificial Intelligence
On applying tabling to inductive logic programming
ECML'05 Proceedings of the 16th European conference on Machine Learning
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
A subterm-based global trie for tabled evaluation of logic programs
EPIA'11 Proceedings of the 15th Portugese conference on Progress in artificial intelligence
Hi-index | 0.00 |
A critical component in the implementation of an efficient tabling system is the design of the data structures and algorithms to access and manipulate tabled data. Arguably, the most successful data structure for tabling is tries. However, when used in applications that pose many queries and/or have a large number of answers, tabling can build arbitrarily many and/or very large tables, quickly filling up memory. In this paper, we propose a new design for the table space organization where all terms in tabled subgoal calls and tabled answers are represented only once in a common global trie instead of being spread over several different trie data structures. Our initial experiments using the YapTab tabling system show significant reductions on memory usage without compromising running time.