2018
DOI: 10.1007/978-3-319-96142-2_22
|View full text |Cite
|
Sign up to set email alerts
|

Quasi-Optimal Partial Order Reduction

Abstract: A dynamic partial order reduction (DPOR) algorithm is optimal when it always explores at most one representative per Mazurkiewicz trace. Existing literature suggests that the reduction obtained by the non-optimal, state-of-the-art Source-DPOR (SDPOR) algorithm is comparable to optimal DPOR. We show the first program 4 with O(n) Mazurkiewicz traces where SDPOR explores O(2 n ) redundant schedules. We furthermore identify the cause of this blow-up as an NP-hard problem. Our main contribution is a new approach, c… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

1
38
0

Year Published

2018
2018
2024
2024

Publication Types

Select...
6

Relationship

1
5

Authors

Journals

citations
Cited by 20 publications
(39 citation statements)
references
References 24 publications
1
38
0
Order By: Relevance
“…Parametric Unfolding Semantics. Given an LTS T and an independence relation I , one can build a prime event structure E such that each linearization of a maximal (for inclusion) configuration represents an execution in T , and conversely, to each Mazurkiewicz trace in T corresponds a configuration in E [13].…”
Section: Interleaving and Unfolding Semanticsmentioning
confidence: 99%
See 3 more Smart Citations
“…Parametric Unfolding Semantics. Given an LTS T and an independence relation I , one can build a prime event structure E such that each linearization of a maximal (for inclusion) configuration represents an execution in T , and conversely, to each Mazurkiewicz trace in T corresponds a configuration in E [13].…”
Section: Interleaving and Unfolding Semanticsmentioning
confidence: 99%
“…In order to avoid sleep-set blocked executions (SSB) and obtain the optimality of DPOR, the function Alt(C , D ∪{e}) has to solve an NP-complete problem [13]: find a subset J of U that can be used for backtracking, conflicts with all D ∪ {e} thus necessarily leading to a configuration C ∪J that is not already visited. In this case en(C ) ⊆ D can then be replaced by en(C ) = ∅ in line 5.…”
Section: The Udpor Algorithmmentioning
confidence: 99%
See 2 more Smart Citations
“…For the previous example, [16] needs to explore five executions: r.p.q and r.q.p, are equivalent because p and q do not have any observer. Another improvement orthogonal to ours is to inspect dependencies over chains of events, as in [17,19].…”
Section: Related Work and Conclusionmentioning
confidence: 99%