Stubborn Transaction Reduction (with Proofs)

02/08/2018
by   Alfons Laarman, et al.
0

The exponential explosion of parallel interleavings remains a fundamental challenge to model checking of concurrent programs. Both partial-order reduction (POR) and transaction reduction (TR) decrease the number of interleavings in a concurrent system. Unlike POR, transactions also reduce the number of intermediate states. Modern POR techniques, on the other hand, offer more dynamic ways of identifying commutative behavior, a crucial task for obtaining good reductions. We show that transaction reduction can use the same dynamic commutativity as found in stubborn set POR. We also compare reductions obtained by POR and TR, demonstrating with several examples that these techniques complement each other. With an implementation of the dynamic transactions in the model checker LTSmin, we compare its effectiveness with the original static TR and two POR approaches. Several inputs, including realistic case studies, demonstrate that the new dynamic TR can surpass POR in practice.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
12/20/2019

Stubborn Set Reduction for Two-Player Reachability Games

Partial order reductions have been successfully applied to model checkin...
research
03/22/2023

Dynamic Partial Order Reduction for Checking Correctness against Transaction Isolation Levels

Modern applications, such as social networking systems and e-commerce pl...
research
11/22/2022

A Pragmatic Approach to Stateful Partial Order Reduction

Partial order reduction (POR) is a classic technique for dealing with th...
research
06/12/2017

Serialisable Multi-Level Transaction Control: A Specification and Verification

We define a programming language independent controller TaCtl for multi-...
research
11/05/2021

LTL under reductions with weaker conditions than stutter-invariance

Verification of properties expressed as-regular languages such as LTL ca...
research
06/06/2017

Specifying Transaction Control to Serialize Concurrent Program Executions

We define a programming language independent transaction controller and ...
research
02/06/2021

SonicChain: A Wait-free, Pseudo-Static Approach Toward Concurrency in Blockchains

Blockchains have a two-sided reputation: they are praised for disrupting...

Please sign up or login with your details

Forgot password? Click here to reset