skip to main content
10.1145/1013963.1013975acmconferencesArticle/Chapter ViewAbstractPublication PagesppdpConference Proceedingsconference-collections
Article

Just enough tabling

Published: 24 August 2004 Publication History

Abstract

We introduce just enough tabling (JET), a mechanism to suspend and resume the tabled execution of logic programs at an arbitrary point. In particular, JET allows pruning of tabled logic programs to be performed without resorting to any recomputation. We discuss issues that are involved in supporting pruning in tabled resolution, how re-execution of tabled computations which were previously pruned can be avoided, and we describe the implementation of such a scheme based on an abstract machine like CHAT, which implements the suspension/resumption support that tabling requires through a combination of freezing and copying of execution states of suspended computations. Properties of just enough tabling and possible uses of the JET mechanism in a tabling system are also briefly discussed.

References

[1]
L. F. Castro, T. Swift, and D. S. Warren. Suspending and resuming computations in engines for SLG evaluation. In S. Krishnamurthi and C. R. Ramakrishnan, editors, Practical Applications of Declarative Languages: Proceedings of the PADL'2002 Symposium, number 2257 in LNCS, pages 332--350. Springer, Jan. 2002.]]
[2]
L. F. Castro and D. S. Warren. Approximate pruning in tabled logic programming. In P. Degano, editor, Programming Languages and Systems: Proceedings of the European Symposium on Programming, number 2618 in LNCS, pages 69--83. Springer, Apr. 2003.]]
[3]
W. Chen and D. S. Warren. Tabled evaluation with delaying for general logic programs. J. ACM, 43(1):20--74, Jan. 1996.]]
[4]
B. Demoen and K. Sagonas. CHAT is θ (SLG-WAM). In H. Ganzinger, D. McAllester, and A. Voronkov, editors, LPAR'99: Proceedings of the 6th International Conference on Logic for Programming and Automated Reasoning, number 1705 in LNAI, pages 337--357. Springer, Sept. 1999.]]
[5]
B. Demoen and K. Sagonas. CHAT: the Copy-Hybrid Approach to Tabling. Future Generation Computer Systems, 16(7):809--830, May 2000.]]
[6]
H.-F. Guo and G. Gupta. A simple scheme for implementing tabled logic programming systems based on dynamic reordering of alternatives. In P. Codognet, editor, Proceedings of the 17th International Conference on Logic Programming, number 2237 in LNCS, pages 181--196. Springer, Nov./Dec. 2001.]]
[7]
H.-F. Guo and G. Gupta. Cuts in tabled logic programming. In B. Demoen, editor, Proceedings of CICLOPS'2002, the Colloquium on Implementation of Constraint and LOgic Programming Systems, pages 62--73, July 2002.]]
[8]
I. V. Ramakrishnan, P. Rao, K. Sagonas, T. Swift, and D. S. Warren. Efficient access mechanisms for tabled logic programs. J. of Logic Program., 38(1):31--54, Jan. 1999.]]
[9]
R. Rocha, F. Silva, and V. Santos Costa. YapTab: A tabling engine designed to support parallelism. In Proceedings of Tabulation in Parsing and Deduction (TAPD), pages 77--87, Sept. 2000.]]
[10]
K. Sagonas and T. Swift. An abstract machine for tabled execution of fixed-order stratified logic programs. ACM Trans. Prog. Lang. Syst., 20(3):586--634, May 1998.]]
[11]
K. Sagonas, T. Swift, and D. S. Warren. XSB as an efficient deductive database engine. In Proceedings of the ACM SIGMOD International Conference on the Management of Data, pages 442--453. ACM Press, May 1994.]]
[12]
Z. Somogyi, F. Henderson, and T. Conway. The execution algorithm of Mercury, an efficient purely declarative logic programming language. J. of Logic Program., 26(1-3):17--64, Oct./Dec. 1996.]]
[13]
H. Tamaki and T. Sato. OLD resolution with Tabulation. In E. Shapiro, editor, Proceedings of the Third International Conference on Logic Programming, number 225 in LNCS, pages 84--98. Springer-Verlag, July 1986.]]
[14]
D. H. D. Warren. An abstract Prolog instruction set. Technical Report 309, SRI International, Menlo Park, U.S.A., Oct. 1983.]]
[15]
N.-F. Zhou, Y.-D. Shen, L.-Y. Yuan, and J.-H. You. Implementation of a linear tabling mechanism. J. of Functional and Logic Program., 2001(10), 2001.]]

Cited By

View all
  • (2016)Policy-based memoization for ILP-based concept discovery systemsJournal of Intelligent Information Systems10.1007/s10844-015-0354-746:1(99-120)Online publication date: 1-Feb-2016
  • (2013)Supporting Pruning in Tabled LPProceedings of the 15th International Symposium on Practical Aspects of Declarative Languages - Volume 775210.1007/978-3-642-45284-0_5(60-76)Online publication date: 21-Jan-2013
  • (2009)Alternation as a programming paradigmProceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming10.1145/1599410.1599419(61-72)Online publication date: 7-Sep-2009
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
PPDP '04: Proceedings of the 6th ACM SIGPLAN international conference on Principles and practice of declarative programming
August 2004
260 pages
ISBN:1581138199
DOI:10.1145/1013963
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 24 August 2004

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. logic programming
  2. pruning
  3. suspension/resumption in the WAM
  4. tabling

Qualifiers

  • Article

Conference

PPDP04
Sponsor:

Acceptance Rates

Overall Acceptance Rate 230 of 486 submissions, 47%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 02 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2016)Policy-based memoization for ILP-based concept discovery systemsJournal of Intelligent Information Systems10.1007/s10844-015-0354-746:1(99-120)Online publication date: 1-Feb-2016
  • (2013)Supporting Pruning in Tabled LPProceedings of the 15th International Symposium on Practical Aspects of Declarative Languages - Volume 775210.1007/978-3-642-45284-0_5(60-76)Online publication date: 21-Jan-2013
  • (2009)Alternation as a programming paradigmProceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming10.1145/1599410.1599419(61-72)Online publication date: 7-Sep-2009
  • (2007)On improving the efficiency and robustness of table storage mechanisms for tabled evaluationProceedings of the 9th international conference on Practical Aspects of Declarative Languages10.1007/978-3-540-69611-7_10(155-169)Online publication date: 14-Jan-2007
  • (2006)Handling incomplete and complete tables in tabled logic programsProceedings of the 22nd international conference on Logic Programming10.1007/11799573_34(427-428)Online publication date: 17-Aug-2006

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media