Context-bounded verification of liveness properties for multithreaded shared-memory programs
Pascal Baumann, Rupak Majumdar, Ramanathan S. Thinniyam, Georg Zetzsche
摘要
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, techniques for related problems, which depend crucially on replacing the pushdown threads with finite-state threads, are not applicable. Instead, we introduce an extension of vector addition systems with states (VASS), called VASS with balloons (VASSB), as an intermediate model; it is an infinite-state model of independent interest. A VASSB allows tokens that are themselves markings (balloons). We show that context bounded fair termination reduces to fair termination for VASSB. We show the latter problem is decidable by showing a series of reductions: from fair termination to configuration reachability for VASSB and thence to the reachability problem for VASS. For a lower bound, fair termination is known to be non-elementary already in the special case where threads run to completion (no context switches). We also show that the simpler problem of context-bounded termination is 2EXPSPACE-complete, matching the complexity bound---and indeed the techniques---for safety verification. Additionally, we show the related problem of fair starvation, which checks if some thread can be starved along a fair run, is also decidable in the context-bounded case. The decidability employs an intricate reduction from fair starvation to fair termination. Like fair termination, this problem is also non-elementary.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper6
- Anvil: Verifying Liveness of Cluster Management ControllersXudong Sun, Wenjie Ma, Jiawei Tyler Gu, Zicheng Ma 等OSDI 2024 · 被引用 50 次
- Stateless Model Checking Under a Reads-Value-From EquivalencePratyush Agarwal, Krishnendu Chatterjee, Shreya Pathak, Andreas Pavlogiannis 等CAV 2021 · 被引用 25 次
- Mostly Automated Verification of Liveness Properties for Distributed Protocols with Ranking FunctionsJianan Yao, Runzhou Tao, Ronghui Gu, Jason NiehPOPL 2024 · 被引用 12 次
- Commutativity for Concurrent Program Termination ProofsDanya Lette, Azadeh FarzanCAV 2023 · 被引用 3 次
- Context-bounded verification of thread poolsPascal Baumann, Rupak Majumdar, Ramanathan S. Thinniyam, Georg ZetzschePOPL 2022 · 被引用 3 次
它引用的顶会 Paper1
相关 Paper
- Context-Bounded Verification of Context-Free SpecificationsPascal Baumann, Moses Ganardi, Rupak Majumdar, Ramanathan S. Thinniyam 等POPL 2023 · 被引用 3 次
- History-Constrained SystemsLouwe B. Kuijer, David Purser, Henry Sinclair-Banks, Patrick TotzkeFM 2026
- The Complexity of Reachability in Affine Vector Addition Systems with StatesMichael Blondin, Mikhail A. RaskinLICS 2020 · 被引用 4 次
- Reachability and Related Problems in Vector Addition Systems with Nested Zero TestsRoland Guttenberg, Wojciech Czerwinski, Slawomir LasotaLICS 2025 · 被引用 10 次
- Ghost Signals: Verifying Termination of Busy Waiting - Verifying Termination of Busy WaitingTobias Reinhard, Bart JacobsCAV 2021 · 被引用 3 次
