Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/1836089.1836115acmotherconferencesArticle/Chapter ViewAbstractPublication PagesppdpConference Proceedingsconference-collections
research-article

Tabling for transaction logic

Published: 26 July 2010 Publication History
  • Get Citation Alerts
  • Abstract

    Transaction Logic is a logic for representing declarative and procedural knowledge in logic programming, databases, and AI. It has been successful in areas as diverse as workflows and Web services, security policies, AI planning, reasoning about actions, and more. Although a number of implementations of Transaction Logic exist, none is logically complete due to the inherent difficulty and time/space complexity of such implementations. In this paper we attack this problem by first introducing a logically complete tabling evaluation strategy for Transaction Logic and then describing a series of optimizations, which make this algorithm practical. In support of our arguments, we present a performance evaluation study of six different implementations of this algorithm, each successively adopting our optimizations. The study suggest that the tabling algorithm can scale well both in time and space. We also discuss ideas that could improve the performance further.

    References

    [1]
    Darko Anicic, Paul Fodor, Roland Stuhmer, and Nenad Stojanovic. An approach for data-driven logic-based complex event processing. In The 3rd ACM International Conference on Distributed Event-Based Systems (DEBS), 2009.
    [2]
    Moritz Y. Becker and Sebastian Nanz. A logic for state-modifying authorization policies. In ESORICS, 2007.
    [3]
    A.J. Bonner and M. Kifer. Transaction logic programming (or a logic of declarative and procedural knowledge). Technical Report CSRI-323, University of Toronto, November 1995. http://www.cs.toronto.edu/~bonner/transaction-logic.html.
    [4]
    Anthony J. Bonner. Modular composition of transaction programs with deductive databases. In DBPL, pages 373--395, 1997.
    [5]
    Anthony J. Bonner and Michael Kifer. Transaction logic programming. In ICLP, pages 257--279, 1993.
    [6]
    Anthony J. Bonner and Michael Kifer. Applications of transaction logic to knowledge representation. In ICTL, pages 67--81, 1994.
    [7]
    Anthony J. Bonner and Michael Kifer. An overview of transaction logic. Theoretical Computer Science, 133 (2):205--265, 1994.
    [8]
    Anthony J. Bonner and Michael Kifer. Concurrency and communication in transaction logic. In JICSLP, pages 142--156, 1996.
    [9]
    Anthony J. Bonner and Michael Kifer. A logic for programming database transactions. In Logics for Databases and Information Systems, pages 117--166, 1998.
    [10]
    Anthony J. Bonner and Michael Kifer. Results on reasoning about updates in transaction logic. In Transactions and Change in Logic Databases, pages 166--196, 1998.
    [11]
    Anthony J. Bonner and Michael Kifer. The state of change: A survey. In Transactions and Change in Logic Databases, pages 1--36, 1998.
    [12]
    Weidong Chen and David Scott Warren. Tabled evaluation with delaying for general logic programs. Journal of the ACM, 43 (1):20--74, 1996.
    [13]
    K.L. Clark. Negation as failure. In H. Gallaire and J. Minker, editors, Logic and Data Bases, pages 292--322. Plenum Press, 1978.
    [14]
    Douglas Comer. Ubiquitous B-Tree. ACM Computing Surveys, 11(2):121--137, 1979.
    [15]
    Hasan Davulcu, Michael Kifer, C. R. Ramakrishnan, and I. V. Ramakrishnan. Logic based modeling and analysis of workflows. In PODS, pages 25--33, 1998.
    [16]
    Hasan Davulcu, Michael Kifer, and I. V. Ramakrishnan. Ctr-s: a logic for specifying contracts in semantic web services. In WWW, pages 144--153, 2004.
    [17]
    A. Dovier, A. Policriti, and G. Rossi. Integrating lists, multisets, and sets in a logic programming framework. Applied Logic, 3:213--229, 1996.
    [18]
    Paul Fodor. Initial results on justification for the tabled transaction logic. In AAAI Spring Symposium, 2009.
    [19]
    Amalia F.Sleghel. An optimizing interpreter for conccurent transaction logic. Master's thesis, University of Toronto, 2000.
    [20]
    M. Gelfond and V. Lifschitz. The stable model semantics for logic programming. In Logic Programming: Proceedings of the Fifth Conference and Symposium, pages 1070--1080, 1988.
    [21]
    Leo J. Guibas and Robert Sedgewick. A dichromatic framework for balanced trees. In SFCS '78: Proceedings of the 19th Annual Symposium on Foundations of Computer Science, pages 8--21, Washington, DC, 1978. IEEE Computer Society.
    [22]
    Samuel Hung. Transaction logic prototype, 1996.
    [23]
    Samuel Y.K. Hung. Implementation and performance of transaction logic in prolog. Master's thesis, University of Toronto, 1996.
    [24]
    M. Kifer. FLORA--2: An object-oriented knowledge base language. The FLORA-2 Web Site. http://flora.sourceforge.net.
    [25]
    M. Liu. Relationlog: a typed extension to datalog with sets and tuples. Journal of Logic Programming, 36, 1998.
    [26]
    E. Pontelli. Logic programming with sets: Theory and implementation. Master's thesis, University of Houston, 1992.
    [27]
    Dumitru Roman and Michael Kifer. Reasoning about the behavior of semantic web services with concurrent transaction logic. In VLDB, pages 627--638, 2007.
    [28]
    Dumitru Roman and Michael Kifer. Semantic web service choreography: Contracting and enactment. In International Semantic Web Conference, pages 550--566, 2008.
    [29]
    R. Sekar, I. V. Ramakrishnan, and A. Voronkov. Term indexing. In Handbook of automated reasoning, pages 1853--1964. Elsevier Science Publishers B. V., Amsterdam, The Netherlands, The Netherlands, 2001.
    [30]
    Amalia F. Sleghel. Concurrent transaction logic prototype, 2000.
    [31]
    T. Swift and D.S. Warren. An abstract machine for SLG resolution: Definite programs. In Int'l Logic Programming Symposium, Cambridge, MA, November 1994. MIT Press.
    [32]
    H. Tamaki and T. Sato. OLD resolution with tabulation. In Int'l Conference on Logic Programming, pages 84--98, Cambridge, MA, 1986. MIT Press.
    [33]
    A. Van Gelder, K.A. Ross, and J.S. Schlipf. The well--founded semantics for general logic programs. Journal of ACM, 38(3):620--650, 1991.
    [34]
    David Scott Warren. Memoing for logic programs. Communications of the ACM, 35 (3):93--111, 1992.
    [35]
    G. Yang, M. Kifer, and C. Zhao. FLORA-2: A rule-based knowledge representation and inference infrastructure for the Semantic Web. In International Conference on Ontologies, Databases and Applications of Semantics (ODBASE-2003), volume 2888 of Lecture Notes in Computer Science, pages 671--688. Springer, November 2003.

    Cited By

    View all

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Other conferences
    PPDP '10: Proceedings of the 12th international ACM SIGPLAN symposium on Principles and practice of declarative programming
    July 2010
    266 pages
    ISBN:9781450301329
    DOI:10.1145/1836089
    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]

    In-Cooperation

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 26 July 2010

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. tabling
    2. transaction logic

    Qualifiers

    • Research-article

    Conference

    PPDP '10

    Acceptance Rates

    PPDP '10 Paper Acceptance Rate 21 of 57 submissions, 37%;
    Overall Acceptance Rate 230 of 486 submissions, 47%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)2
    • Downloads (Last 6 weeks)0
    Reflects downloads up to

    Other Metrics

    Citations

    Cited By

    View all
    • (2015)A Procedure for an Event-Condition-Transaction LanguageWeb Reasoning and Rule Systems10.1007/978-3-319-22002-4_10(113-129)Online publication date: 22-Jul-2015
    • (2015)How to Combine Event Stream Reasoning with Transactions for the Semantic WebRule Technologies: Foundations, Tools, and Applications10.1007/978-3-319-21542-6_17(258-273)Online publication date: 12-Jul-2015
    • (2015)State Space Planning Using Transaction LogicPractical Aspects of Declarative Languages10.1007/978-3-319-19686-2_2(17-33)Online publication date: 14-May-2015
    • (2013)Research on the Significance, Measures and Steps of Constructing Knowledge Base of Regional Library in Poyang LakeApplied Mechanics and Materials10.4028/www.scientific.net/AMM.278-280.1897278-280(1897-1900)Online publication date: Jan-2013
    • (2013)Implementing Tabled Hypothetical DatalogProceedings of the 2013 IEEE 25th International Conference on Tools with Artificial Intelligence10.1109/ICTAI.2013.94(596-601)Online publication date: 4-Nov-2013

    View Options

    Get Access

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Media

    Figures

    Other

    Tables

    Share

    Share

    Share this Publication link

    Share on social media