2021
DOI: 10.1145/3434325
|View full text |Cite
|
Sign up to set email alerts
|

Context-bounded verification of liveness properties for multithreaded shared-memory programs

Abstract: We study context-bounded verification of liveness properties of multi-threaded, shared-memory programs, where each thread can spawn additional threads. Our main result shows that context-bounded fair termination is decidable for the model; context-bounded implies that each spawned thread can be context switched a fixed constant number of times. Our proof is technical, since fair termination requires reasoning about the composition of unboundedly many threads each with unboundedly large stacks. In fact, techniq… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
4
1

Citation Types

0
5
0

Year Published

2021
2021
2023
2023

Publication Types

Select...
3
2
2

Relationship

3
4

Authors

Journals

citations
Cited by 9 publications
(7 citation statements)
references
References 49 publications
(29 reference statements)
0
5
0
Order By: Relevance
“…The thread-pooled, contextbounded fair termination problem asks if there is a fair non-terminating run. Baumann et al [2021] study the problem in the case of explicitly specified states (no Boolean variables) without thread pooling and reduce it to VASS reachability. Here, the reduction can be performed in elementary time.…”
Section: Discussionmentioning
confidence: 99%
See 1 more Smart Citation
“…The thread-pooled, contextbounded fair termination problem asks if there is a fair non-terminating run. Baumann et al [2021] study the problem in the case of explicitly specified states (no Boolean variables) without thread pooling and reduce it to VASS reachability. Here, the reduction can be performed in elementary time.…”
Section: Discussionmentioning
confidence: 99%
“…There are, by now, many decidability results for context bounded verification in multi-threaded settings [Atig et al 2009;Baumann et al 2021;La Torre et al 2009, 2010Lal and Reps 2009;Meyer et al 2018;Musuvathi and Qadeer 2007;Qadeer and Rehof 2005]. The work of Atig et al [2009] is closest to ours in the programming model: they consider safety verification for a multithreaded shared memory model with dynamic thread spawns, the same as us.…”
Section: Introductionmentioning
confidence: 98%
“…There are, by now, many decidability results for context bounded verification in multi-threaded settings [Atig et al 2009;Baumann et al 2021;La Torre et al 2009, 2010Lal and Reps 2009;Meyer et al 2018;Musuvathi and Qadeer 2007;Qadeer and Rehof 2005]. The work of Atig et al [2009] is closest to ours in the programming model: they consider safety verification for a multithreaded shared memory model with dynamic thread spawns, the same as us.…”
Section: Introductionmentioning
confidence: 98%
“…A stateless model checker (SMC) explores the behavior of the concurrent program by manipulating traces instead of states, where each (concurrent) trace is an interleaving of event sequences of the corresponding threads [6]. To further improve performance, various techniques try to reduce the number of explored traces, such as context bounded techniques [7][8][9][10] As many interleavings induce the same program behavior, SMC partitions the interleaving space into equivalence classes and attempts to sample a few representative traces from each class. The most popular approach in this domain is partialorder reduction techniques [6,11,12], which deems interleavings as equivalent based on the way that conflicting memory accesses are ordered, also known as the Mazurkiewicz equivalence [13].…”
Section: Introductionmentioning
confidence: 99%