A Concurrent Calculus with Atomic Transactions
Lucia Acciai, Michele Boreale, Silvano Dal Zilio
Abstract
The Software Transactional Memory (STM) model is an original approach for controlling concurrent accesses to ressources 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. Our goal is not only to set a formal ground for reasoning on STM implementations but also to understand how this model fits with other concurrency control mechanisms. We also view this calculus as a test bed for extending process calculi with atomic transactions. This is an interesting direction for investigation since, for the most part, actual works that mix transactions with process calculi consider compensating transactions, a model that lacks all the well-known ACID properties. 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.
Create a lesson
Related papers
Challenging Benchmarks for Diagrammatic Equivalence of Circuits in TPTP and SMT-LIB
Julie Cailler, Noé Delorme, Sophie Tourret
Dynamic Polyhedral Logic
Nick Bezhanishvili, Laura Bussi, Vincenzo Ciancia et al.
Exact SAT and Constraint Programming for Job Shop Scheduling with Time-Varying Peak Power Constraints
Huy Tuan Nguyen, Duc Trung Kim Nguyen, Khanh To Van
Cycle time minimization for the simple assembly line balancing problem under peak power constraints
Bao Gia Hoang, Tuyen Van Kieu, Khanh Van To
Design and Empirical Characterization of a Hardware-Realized Turing Machine with Automated Card-Based Programming
Agrima Regmi, Jenish Pant, Pratistha Sapkota et al.
Comparison Invariants for Verifying Control Invariance
Promit Panja, André Platzer