TY - JOUR
T1 - Serialisable multi-level transaction control
T2 - A specification and verification
AU - Börger, Egon
AU - Schewe, Klaus Dieter
AU - Wang, Qing
N1 - Publisher Copyright:
© 2016 Elsevier B.V.
PY - 2016/12/1
Y1 - 2016/12/1
N2 - We define a programming language independent controller TACTL for multi-level transactions and an operator TA, which when applied to concurrent programs with multi-level shared locations containing hierarchically structured complex values, turns their behavior with respect to some abstract termination criterion into a transactional behaviour. We prove the correctness property that concurrent runs under the transaction controller are serialisable, assuming an Inverse Operation Postulate to guarantee recoverability. For its applicability to a wide range of programs we specify the transaction controller TACTL and the operator TA in terms of Abstract State Machines (ASMs). This allows us to model concurrent updates at different levels of nested locations in a precise yet simple manner, namely in terms of partial ASM updates. It also provides the possibility to use the controller TACTL and the operator TA as a plug-in when specifying concurrent system components in terms of sequential ASMs.
AB - We define a programming language independent controller TACTL for multi-level transactions and an operator TA, which when applied to concurrent programs with multi-level shared locations containing hierarchically structured complex values, turns their behavior with respect to some abstract termination criterion into a transactional behaviour. We prove the correctness property that concurrent runs under the transaction controller are serialisable, assuming an Inverse Operation Postulate to guarantee recoverability. For its applicability to a wide range of programs we specify the transaction controller TACTL and the operator TA in terms of Abstract State Machines (ASMs). This allows us to model concurrent updates at different levels of nested locations in a precise yet simple manner, namely in terms of partial ASM updates. It also provides the possibility to use the controller TACTL and the operator TA as a plug-in when specifying concurrent system components in terms of sequential ASMs.
KW - Abstract state machines
KW - Multi-level transactions
KW - Partial updates
KW - Serialisability
UR - http://www.scopus.com/inward/record.url?scp=84964270244&partnerID=8YFLogxK
U2 - 10.1016/j.scico.2016.03.008
DO - 10.1016/j.scico.2016.03.008
M3 - Article
SN - 0167-6423
VL - 131
SP - 42
EP - 58
JO - Science of Computer Programming
JF - Science of Computer Programming
ER -