The well-founded semantics for general logic programs
Journal of the ACM (JACM)
Tabled evaluation with delaying for general logic programs
Journal of the ACM (JACM)
An abstract machine for tabled execution of fixed-order stratified logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Tabling for non-monotonic programming
Annals of Mathematics and Artificial Intelligence
LPAR '99 Proceedings of the 6th International Conference on Logic Programming and Automated Reasoning
CHAT: The Copy-Hybrid Approach to Tabling
PADL '99 Proceedings of the First International Workshop on Practical Aspects of Declarative Languages
Implementation of a Linear Tabling Mechanism
PADL '00 Proceedings of the Second International Workshop on Practical Aspects of Declarative Languages
Optimising Bytecode Emulation for Prolog
PPDP '99 Proceedings of the International Conference PPDP'99 on Principles and Practice of Declarative Programming
CAT: The Copying Approach to Tabling
PLILP '98/ALP '98 Proceedings of the 10th International Symposium on Principles of Declarative Programming
Efficient Model Checking Using Tabled Resolution
CAV '97 Proceedings of the 9th International Conference on Computer Aided Verification
Linear tabulated resolution based on Prolog control strategy
Theory and Practice of Logic Programming
PPDP '04 Proceedings of the 6th ACM SIGPLAN international conference on Principles and practice of declarative programming
Inference with Logic Programs with Annotated Disjunctions under the Well Founded Semantics
ICLP '08 Proceedings of the 24th International Conference on Logic Programming
Towards a Complete Scheme for Tabled Execution Based on Program Transformation
PADL '09 Proceedings of the 11th International Symposium on Practical Aspects of Declarative Languages
Dynamic reordering of alternatives for definite logic programs
Computer Languages, Systems and Structures
SLGAD Resolution for Inference on Logic Programs with Annotated Disjunctions
Fundamenta Informaticae - RCRA 2008 Experimental Evaluation of Algorithms for Solving Problems with Combinatorial Explosion
Xsb: Extending prolog with tabled logic programming
Theory and Practice of Logic Programming - Prolog Systems
Hi-index | 0.00 |
SLD resolution, the evaluation mechanism for Prolog programs, is modeled as a sequence of SLD trees. Since only one branch of an SLD tree needs to be active at any time, SLD can be implemented via engines whose memory management is stack-based, as the WAM. Tabling, and more specifically SLG resolution, is modeled as a sequence of forests of trees in which several computation paths may need to be active at any time. This reflects the fact that a computation path that consumes answers may need to be suspended and resumed multiple times as answers are derived.The SLGWAM architecture defines instructions to implement SLG resolution. Implementations of the SLGWAM architecture have so far shown a great deal of similarity in table access methods, high-level scheduling strategies, and support for incremental completion. However they have made different choices in what may be termed environment management: how to store suspended environments and how to check whether these environments need to be resumed. This paper describes the environment management techniques of different implementations of the SLGWAM architecture and analyzes their performance.