Skip to main content

Transactions in Constraint Handling Rules

  • Conference paper
Logic Programming (ICLP 2008)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5366))

Included in the following conference series:

Abstract

CHR is a highly concurrent language, and yet it is by no means a trivial task to write correct concurrent CHR programs. We propose a new semantics for CHR, which allows specifying and reasoning about transactions. Transactions alleviate the complexity of writing concurrent programs by offering entire derivations to run atomically and in isolation.

We derive several program transformations based on our semantics that transform particular classes of transitional CHR programs to non-transactional ones. These transformations are useful because they obviate a general purpose transaction manager, and may lift unnecessary sequentialization present in the transactional semantics.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Frühwirth, T.: Theory and practice of constraint handling rules. Journal of Logic Programming, Special Issue on Constraint Logic Programming 37(1-3), 95–138 (1998)

    MathSciNet  MATH  Google Scholar 

  2. Schrijvers, T., Sulzmann, M.: Transactions in Constraint Handling Rules. Technical Report (2008), http://www.cs.kuleuven.be/~toms/transactions.pdf

  3. Duck, G.J., Stuckey, P.J., Sulzmann, M.: Observable confluence for Constraint Handling Rules. In: Dahl, V., Niemelä, I. (eds.) ICLP 2007. LNCS, vol. 4670, pp. 224–239. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  4. Schrijvers, T., Frühwirth, T.: Optimal union-find in Constraint Handling Rules. TPLP 6(1-2), 213–224 (2006)

    MATH  Google Scholar 

  5. Sneyers, J., Schrijvers, T., Demoen, B.: The computational power and complexity of Constraint Handling Rules. ACM TOPLAS (accepted, 2008)

    Google Scholar 

  6. Frühwirth, T.: Parallelizing union-find in Constraint Handling Rules using confluence. In: Gabbrielli, M., Gupta, G. (eds.) ICLP 2005. LNCS, vol. 3668, pp. 113–127. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  7. Weikum, G., Vossen, G.: Transactional Information Systems: Theory, Algorithms, and the Practice of Concurrency Control and Recovery. Morgan Kaufmann, San Francisco (2002)

    Google Scholar 

  8. Tacchella, P., Gabbrielli, M., Meo, M.C.: Unfolding in CHR. In: Leuschel, M., Podelski, A. (eds.) PPDP 2007, pp. 179–186. ACM Press, New York (2007)

    Google Scholar 

  9. Abdennadher, S., Frühwirth, T., Meuss, H.: Confluence and semantics of constraint simplification rules. Constraints 4(2), 133–165 (1999)

    Article  MathSciNet  MATH  Google Scholar 

  10. Weihl, W.E.: Data-dependent concurrency control and recovery. SIGOPS Oper. Syst. Rev. 19(1), 19–31 (1985)

    Article  Google Scholar 

  11. Korth, H.F., Levy, E., Silberschatz, A.: A formal approach to recovery by compensating transactions. Technical report (1990)

    Google Scholar 

  12. Acciai, L., Boreale, M., Dal-Zilio, S.: A concurrent calculus with atomic transactions. In: De Nicola, R. (ed.) ESOP 2007. LNCS, vol. 4421, pp. 48–63. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  13. Bonner, A.J., Kifer, M.: Transaction logic programming. In: Proc. of ICLP 1993, pp. 257–279 (1993)

    Google Scholar 

  14. Ni, Y., Menon, V.S., Adl-Tabatabai, A.R., Hosking, A.L., Hudson, R.L., Moss, J.E.B., Saha, B., Shpeisman, T.: Open nesting in software transactional memory. In: Proc. of PPoPP 2007, pp. 68–78. ACM Press, New York (2007)

    Google Scholar 

  15. Harris, T., Stipic, S.: Abstract nested transactions. In: TRANSACT 2007: The Second ACM SIGPLAN Workshop on Transactional Computing (2007)

    Google Scholar 

  16. Herlihy, M., Koskinen, E.: Transactional boosting: a methodology for highly-concurrent transactional objects. In: Proc. of PPoPP 2008, pp. 207–216. ACM Press, New York (2008)

    Google Scholar 

  17. Harris, T., Marlow, S., Peyton Jones, S., Herlihy, M.: Composable memory transactions. In: Proc. of PPoPP 2005, pp. 48–60. ACM Press, New York (2005)

    Google Scholar 

  18. Abdennadher, S., Schütz, H.: CHRv: A flexible query language. In: Andreasen, T., Christiansen, H., Larsen, H.L. (eds.) FQAS 1998. LNCS, vol. 1495, pp. 1–14. Springer, Heidelberg (1998)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Schrijvers, T., Sulzmann, M. (2008). Transactions in Constraint Handling Rules. In: Garcia de la Banda, M., Pontelli, E. (eds) Logic Programming. ICLP 2008. Lecture Notes in Computer Science, vol 5366. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-89982-2_44

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-89982-2_44

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-89981-5

  • Online ISBN: 978-3-540-89982-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics