Skip to main content

Advertisement

SpringerLink
Log in
Menu
Find a journal Publish with us Track your research
Search
Cart
Book cover

European Symposium on Programming

ESOP 2007: Programming Languages and Systems pp 48–63Cite as

  1. Home
  2. Programming Languages and Systems
  3. Conference paper
A Concurrent Calculus with Atomic Transactions

A Concurrent Calculus with Atomic Transactions

  • Lucia Acciai1,
  • Michele Boreale2 &
  • Silvano Dal Zilio1 
  • Conference paper
  • 973 Accesses

  • 6 Citations

Part of the Lecture Notes in Computer Science book series (LNTCS,volume 4421)

Abstract

The Software Transactional Memory (STM) model is an original approach for controlling concurrent accesses to resources without the need for explicit lock-based synchronization mechanisms. A key feature of STM is to provide a way to group sequences of read and write actions inside atomic blocks, similar to database transactions, whose whole effect should occur atomically.

In this paper, we investigate STM from a process algebra perspective and define an extension of asynchronous CCS with atomic blocks of actions. We show that the addition of atomic transactions results in a very expressive calculus, enough to easily encode other concurrent primitives such as guarded choice and multiset-synchronization (à la join-calculus). The correctness of our encodings is proved using a suitable notion of bisimulation equivalence. The equivalence is then applied to prove interesting “laws of transactions” and to obtain a simple normal form for transactions.

Keywords

  • Global State
  • Block Action
  • Reduction Rule
  • Read Action
  • Concurrent Access

These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

This work was partially supported by the French ANR ARASSIA project COPS and the EU FET-GC2 initiative, project SENSORIA.

Chapter PDF

Download to read the full chapter text

References

  1. Acciai, L., Boreale, M., Dal Zilio, S.: A Concurrent Calculus with Atomic Transactions (long version), http://arxiv.org/abs/cs.LO/0610137

  2. Amadio, R., Castellani, I., Sangiorgi, D.: On Bisimulations for the Asynchronous π-Calculus. Th. Comp. Sci. 195(2), 291–324 (1998)

    CrossRef  MATH  MathSciNet  Google Scholar 

  3. Berardi, D., et al.: Automatic Composition of Transition-Based Web Services with Messaging. In: Proc. of VLDB (2005)

    Google Scholar 

  4. Bergstra, J.A., Ponse, A., van Wamel, J.J.: Process Algebra with Backtracking. In: de Bakker, J.W., de Roever, W.-P., Rozenberg, G. (eds.) REX 1993. LNCS, vol. 803, Springer, Heidelberg (1994)

    Google Scholar 

  5. Bhiri, S., Perrin, O., Godart, C.: Ensuring Required Failure Atomicity of Composite Web Services. In: Proc. of WWW, ACM Press, New York (2005)

    Google Scholar 

  6. Odersky, M., et al.: An Equational Theory for Transactions. In: Pandya, P.K., Radhakrishnan, J. (eds.) FSTTCS 2003. LNCS, vol. 2914, pp. 38–49. Springer, Heidelberg (2003)

    Google Scholar 

  7. Zavattaro, G., Laneve, C., Bocchi, L.: A Calculus for Long-Running Transactions. In: Najm, E., Nestmann, U., Stevens, P. (eds.) FMOODS 2003. LNCS, vol. 2884, pp. 124–138. Springer, Heidelberg (2003)

    Google Scholar 

  8. Bruni, R., Melgratti, H.C., Montanari, U.: Nested Commits for Mobile Calculi: extending Join. In: Proc. of IFIP TCS, pp. 563–576 (2004)

    Google Scholar 

  9. Bruni, R., Melgratti, H.C., Montanari, U.: Theoretical Foundations for Compensations in Flow Composition Languages. In: Proc. of POPL, pp. 209–220. ACM Press, New York (2005)

    Google Scholar 

  10. Busi, N., Gorrieri, R., Zavattaro, G.: A Process Algebraic View of Linda Coordination Primitives. Th. Comp. Sci. 192(2), 167–199 (1998)

    CrossRef  MATH  MathSciNet  Google Scholar 

  11. Butler, M.J., Ferreira, C., Ng, M.Y.: Precise Modeling of Compensating Business Transactions and its Application to BPEL. J. UCS 11, 712–743 (2005)

    Google Scholar 

  12. Chothia, T., Duggan, D.: Abstractions for Fault-Tolerant Global Computing. Th. Comp. Sci. 322(3), 567–613 (2004)

    CrossRef  MATH  MathSciNet  Google Scholar 

  13. Danos, V., Krivine, J.: Reversible Communicating Systems. In: Gardner, P., Yoshida, N. (eds.) CONCUR 2004. LNCS, vol. 3170, pp. 292–307. Springer, Heidelberg (2004)

    Google Scholar 

  14. Danos, V., Krivine, J.: Transactions in RCCS. In: Abadi, M., de Alfaro, L. (eds.) CONCUR 2005. LNCS, vol. 3653, pp. 398–412. Springer, Heidelberg (2005)

    CrossRef  Google Scholar 

  15. De Nicola, R., Hennessy, M.C.B.: Testing Equivalence for Processes. Th. Comp. Sci. 34, 83–133 (1984)

    CrossRef  MATH  Google Scholar 

  16. Gorrieri, R., Marchetti, S., Montanari, U.: A2CCS: Atomic Actions for CCS. Th. Comp. Sci. 72(2-3), 203–223 (1990)

    CrossRef  MathSciNet  Google Scholar 

  17. Harris, T., et al.: Composable Memory Transactions. In: Proc. of PPOPP, pp. 48–60. ACM Press, New York (2005)

    Google Scholar 

  18. Herlihy, M., Moss, J.E.: Transactional Memory: Architectural Support for Lock-Free Data Structures. In: Proc. of International Symposium on Computer Architecture (1993)

    Google Scholar 

  19. Zavattaro, G., Laneve, C.: Foundations of Web Transactions. In: Sassone, V. (ed.) FOSSACS 2005. LNCS, vol. 3441, pp. 282–298. Springer, Heidelberg (2005)

    Google Scholar 

  20. Milner, R.: Calculi for Synchrony and Asynchrony. Th. Comp. Sci. 25, 267–310 (1983)

    CrossRef  MATH  MathSciNet  Google Scholar 

  21. Palamidessi, C.: Comparing the Expressive Power of the Synchronous and the Asynchronous pi-calculus. Math. Struct. in Comp. Sci. 13(5) (2003)

    Google Scholar 

  22. Shavit, N., Touitou, D.: Software Transactional Memory. In: Proc. of Principles of Distributed Computing, ACM Press, New York (1995)

    Google Scholar 

  23. Vitek, J., et al.: A Semantic Framework for Designer Transactions. In: Schmidt, D. (ed.) ESOP 2004. LNCS, vol. 2986, pp. 249–263. Springer, Heidelberg (2004)

    Google Scholar 

Download references

Author information

Authors and Affiliations

  1. LIF, CNRS and Université de Provence, France

    Lucia Acciai & Silvano Dal Zilio

  2. Dipartimento di Sistemi e Informatica, Università di Firenze, Italy

    Michele Boreale

Authors
  1. Lucia Acciai
    View author publications

    You can also search for this author in PubMed Google Scholar

  2. Michele Boreale
    View author publications

    You can also search for this author in PubMed Google Scholar

  3. Silvano Dal Zilio
    View author publications

    You can also search for this author in PubMed Google Scholar

Editor information

Rocco De Nicola

Rights and permissions

Reprints and Permissions

Copyright information

© 2007 Springer Berlin Heidelberg

About this paper

Cite this paper

Acciai, L., Boreale, M., Dal Zilio, S. (2007). A Concurrent Calculus with Atomic Transactions. In: De Nicola, R. (eds) Programming Languages and Systems. ESOP 2007. Lecture Notes in Computer Science, vol 4421. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-71316-6_5

Download citation

  • .RIS
  • .ENW
  • .BIB
  • DOI: https://doi.org/10.1007/978-3-540-71316-6_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-71314-2

  • Online ISBN: 978-3-540-71316-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Share this paper

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

Publish with us

Policies and ethics

search

Navigation

  • Find a journal
  • Publish with us
  • Track your research

Discover content

  • Journals A-Z
  • Books A-Z

Publish with us

  • Publish your research
  • Open access publishing

Products and services

  • Our products
  • Librarians
  • Societies
  • Partners and advertisers

Our imprints

  • Springer
  • Nature Portfolio
  • BMC
  • Palgrave Macmillan
  • Apress
  • Your US state privacy rights
  • Accessibility statement
  • Terms and conditions
  • Privacy policy
  • Help and support
  • Cancel contracts here

167.114.118.210

Not affiliated

Springer Nature

© 2023 Springer Nature