Approximate Pruning in Tabled Logic Programming

  • Luís F. Castro
  • David S. Warren
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2618)


Pruning provides an important tool for control of nondeterminism in Prolog systems. Current Tabled Prolog systems improve Prolog’s evaluation strategy in several ways, but lack satisfactory support for pruning operations. In this paper we present an extension to the evaluation mechanism of Tabled Prolog to support pruning. This extension builds on the concept of demand to select tables to prune. In particular, we concentrate on systems based on SLG resolution. A once operator is described, which approximates demand-based pruning, providing for an efficient implementation in the XSB system.


  1. 1.
    K. A. M. Ali. A method for implementing cut in parallel execution of Prolog. In ICSLP’87.Google Scholar
  2. 2.
    W. Chen and D. S. Warren. Tabled Evaluation with Delaying for General Logic Programs. Journal of the ACM, 43(1):20–74, January 1996.zbMATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    B. Demoen and K. Sagonas. CHAT: the Copy-Hybrid Approach to Tabling. In PADL’99, 1999.Google Scholar
  4. 4.
    H.-F. Guo and G. Gupta. A simple scheme for implementing tabled logic programming systems based on dynamic reordering of alternatives. In ICLP’01, pages 181–196, 2001.Google Scholar
  5. 5.
    H.-F. Guo and G. Gupta. Cuts in tabled logic programming. In B. Demoen, editor, CICLOPS’02, 2002.Google Scholar
  6. 6.
    G. Gupta and V. Santos Costa. Cuts and side-effects in and-or parallel prolog. Journal of Logic Programming, 27(1):45–71, 1996.zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    R. O'Keefe. The Craft of Prolog. MIT, 1990.Google Scholar
  8. 8.
    K. Sagonas and T. Swift. An abstract machine for tabled execution of fixed-order stratified logic programs. TOPLAS, 20(3):586–635, May 1998.CrossRefGoogle Scholar
  9. 9.
    T. Swift. A new formulation of tabled resolution with delay. In Recent Advances in Artificial Intelligence.Google Scholar
  10. 10.
    T. Swift. Efficient Evaluation of Normal Logic Programs. PhD thesis, SUNY at Stony Brook, 1994.Google Scholar
  11. 11.
    T. Swift. A new formulation of tabled resolution with delay. In EPIA’99, 1999.Google Scholar
  12. 12.
    T. Swift and D. S. Warren. An abstract machine for SLG resolution: definite programs. In SLP’94, pages 633–654, 1994.Google Scholar
  13. 14.
    D. S. Warren. Programming in tabled prolog-DRAFT. Available from
  14. 15.
    D. S. Warren. Efficient Prolog memory management for flexible control. In ILPS’84, pages 198–202, 1984.Google Scholar
  15. 16.
    D.H.D. Warren. An abstract Prolog instruction set. Technical Report 309, SRI, 1983.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  • Luís F. Castro
    • 1
  • David S. Warren
    • 1
  1. 1.Computer Science DeptSUNY at Stony BrookUSA

Personalised recommendations