partial order reduction
Recently Published Documents


TOTAL DOCUMENTS

155
(FIVE YEARS 27)

H-INDEX

21
(FIVE YEARS 3)

2022 ◽  
Vol 6 (POPL) ◽  
pp. 1-28
Author(s):  
Michalis Kokologiannakis ◽  
Iason Marmanis ◽  
Vladimir Gladstein ◽  
Viktor Vafeiadis

Dynamic partial order reduction (DPOR) verifies concurrent programs by exploring all their interleavings up to some equivalence relation, such as the Mazurkiewicz trace equivalence. Doing so involves a complex trade-off between space and time. Existing DPOR algorithms are either exploration-optimal (i.e., explore exactly only interleaving per equivalence class) but may use exponential memory in the size of the program, or maintain polynomial memory consumption but potentially explore exponentially many redundant interleavings. In this paper, we show that it is possible to have the best of both worlds: exploring exactly one interleaving per equivalence class with linear memory consumption. Our algorithm, TruSt, formalized in Coq, is applicable not only to sequential consistency, but also to any weak memory model that satisfies a few basic assumptions, including TSO, PSO, and RC11. In addition, TruSt is embarrassingly parallelizable: its different exploration options have no shared state, and can therefore be explored completely in parallel. Consequently, TruSt outperforms the state-of-the-art in terms of memory and/or time.


2021 ◽  
Vol Volume 17, Issue 3 ◽  
Author(s):  
Thomas Neele ◽  
Antti Valmari ◽  
Tim A. C. Willemse

One of the most popular state-space reduction techniques for model checking is partial-order reduction (POR). Of the many different POR implementations, stubborn sets are a very versatile variant and have thus seen many different applications over the past 32 years. One of the early stubborn sets works shows how the basic conditions for reduction can be augmented to preserve stutter-trace equivalence, making stubborn sets suitable for model checking of linear-time properties. In this paper, we identify a flaw in the reasoning and show with a counter-example that stutter-trace equivalence is not necessarily preserved. We propose a stronger reduction condition and provide extensive new correctness proofs to ensure the issue is resolved. Furthermore, we analyse in which formalisms the problem may occur. The impact on practical implementations is limited, since they all compute a correct approximation of the theory. Comment: arXiv admin note: substantial text overlap with arXiv:1910.09829


Sign in / Sign up

Export Citation Format

Share Document