Parameterized Verification under Release Acquire is PSPACE-complete

Conference Paper (2022)
Author(s)

Shankara Narayanan Krishna (Indian Institute of Technology Bombay)

Adwait Godbole (University of California)

Roland Meyer (Technical University of Braunschweig)

Soham Chakraborty (TU Delft - Programming Languages)

Research Group
Programming Languages
Copyright
© 2022 Shankaranarayanan Krishna, Adwait Godbole, Roland Meyer, S.S. Chakraborty
DOI related publication
https://doi.org/10.1145/3519270.3538445
More Info
expand_more
Publication Year
2022
Language
English
Copyright
© 2022 Shankaranarayanan Krishna, Adwait Godbole, Roland Meyer, S.S. Chakraborty
Research Group
Programming Languages
Pages (from-to)
482-492
ISBN (electronic)
978-1-4503-9262-4
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

We study the safety verification problem for parameterized systems under the release-acquire (RA) semantics. In the non-parameterized setting, access to atomic compare-and-swap (CAS) instructions renders the safety verification problem undecidable. In the light of this result, we consider parameterized systems consisting of an unbounded number of environment threads executing identical but CAS-free programs combined with a fixed number of distinguished threads that are unrestricted. Our first contribution is an effective and simplified RA semantics for such systems. We leverage the simplified semantics to show that safety verification becomes PSPACE in the parameterized case, an optimistic result for algorithmic verification. Our proof uses an encoding to Datalog which, in addition to the complexity upper bound, suggests a verification algorithm based on Horn clause solvers. We also provide a matching lower bound showing that safety verification is PSPACE-hard.