
Stateless Model Checking under a ReadsValueFrom Equivalence
Stateless model checking (SMC) is one of the standard approaches to the ...
read it

The ReadsFrom Equivalence for the TSO and PSO Memory Models
The verification of concurrent programs remains an open challenge due to...
read it

Dynamic Verification with Observational Equivalence of C/C++ Concurrency
Program executions under relaxed memory model (rmm) semantics are signif...
read it

ErdösSzekeres Partitioning Problem
In this note, we present a substantial improvement on the computational ...
read it

QuasiOptimal Partial Order Reduction
A dynamic partial order reduction (DPOR) algorithm is optimal when it al...
read it

The Inconsistent Labelling Problem of StutterPreserving PartialOrder Reduction
In model checking, partialorder reduction (POR) is an effective techniq...
read it

A Detailed Account of The Inconsistent Labelling Problem of StutterPreserving PartialOrder Reduction
One of the most popular statespace reduction techniques for model check...
read it
Valuecentric Dynamic Partial Order Reduction
The verification of concurrent programs remains an open challenge, as thread interaction has to be accounted for, which leads to statespace explosion. Stateless model checking battles this problem by exploring traces rather than states of the program. As there are exponentially many traces, dynamic partialorder reduction (DPOR) techniques are used to partition the trace space into equivalence classes, and explore a few representatives from each class. The standard equivalence that underlies most DPOR techniques is the happensbefore equivalence, however recent works have spawned a vivid interest towards coarser equivalences. The efficiency of such approaches is a product of two parameters: (i) the size of the partitioning induced by the equivalence, and (ii) the time spent by the exploration algorithm in each class of the partitioning. In this work, we present a new equivalence, called valuehappensbefore and show that it has two appealing features. First, valuehappensbefore is always at least as coarse as the happensbefore equivalence, and can be even exponentially coarser. Second, the valuehappensbefore partitioning is efficiently explorable when the number of threads is bounded. We present an algorithm called valuecentric DPOR (VCDPOR), which explores the underlying partitioning using polynomial time per class. Finally, we perform an experimental evaluation of VCDPOR on various benchmarks, and compare it against other stateoftheart approaches. Our results show that valuehappensbefore typically induces a significant reduction in the size of the underlying partitioning, which leads to a considerable reduction in the running time for exploring the whole partitioning.
READ FULL TEXT
Comments
There are no comments yet.