Abstract

We study the fine-grained complexity of Leader Contributor Reachability ({textsf {LCR}} ) and Bounded-Stage Reachability ({textsf {BSR}} ), two variants of the safety verification problem for shared memory concurrent programs. For both problems, the memory is a single variable over a finite data domain. Our contributions are new verification algorithms and lower bounds. The latter are based on the Exponential Time Hypothesis ({textsf {ETH}} ), the problem {textsf {Set~Cover}} , and cross-compositions. {textsf {LCR}} is the question whether a designated leader thread can reach an unsafe state when interacting with a certain number of equal contributor threads. We suggest two parameterizations: (1) By the size of the data domain {texttt {D}} and the size of the leader {texttt {L}}, and (2) by the size of the contributors {texttt {C}}. We present algorithms for both cases. The key techniques are compact witnesses and dynamic programming. The algorithms run in {mathcal {O}}^*(({texttt {L}}cdot ({texttt {D}}+1))^{{texttt {L}}cdot {texttt {D}}} cdot {texttt {D}}^{{texttt {D}}}) and {mathcal {O}}^*(2^{{texttt {C}}}) time, showing that both parameterizations are fixed-parameter tractable. We complement the upper bounds by (matching) lower bounds based on {textsf {ETH}} and {textsf {Set~Cover}} . Moreover, we prove the absence of polynomial kernels. For {textsf {BSR}} , we consider programs involving {texttt {t}} different threads. We restrict the analysis to computations where the write permission changes {texttt {s}} times between the threads. {textsf {BSR}} asks whether a given configuration is reachable via such an {texttt {s}}-stage computation. When parameterized by {texttt {P}}, the maximum size of a thread, and {texttt {t}}, the interesting observation is that the problem has a large number of difficult instances. Formally, we show that there is no polynomial kernel, no compression algorithm that reduces the size of the data domain {texttt {D}} or the number of stages {texttt {s}} to a polynomial dependence on {texttt {P}} and {texttt {t}}. This indicates that symbolic methods may be harder to find for this problem.

Highlights

  • We study the fine-grained complexity of two safety verification problems [1,18,32] for shared memory concurrent programs

  • The motivation to reconsider these problems are recent developments in fine-grained complexity theory [7,12,35,39]. They suggest that classifications such as NP or even fixed-parameter tractability (FPT) are too coarse to explain the success of verification methods

  • We have studied several parameterizations of Leader Contributor Reachability (LCR) and BoundedStage Reachability (BSR), two safety verification problems for shared memory concurrent programs

Read more

Summary

Introduction

We study the fine-grained complexity of two safety verification problems [1,18,32] for shared memory concurrent programs. We give new verification algorithms for the two problems that, for the first time, can be proven optimal in the sense of fine-grained complexity theory. The observation of a gap between practical algorithms and complexity theory is not unique to verification but made in every field that has to solve hard computational problems. Fine-grained complexity is the study of upper and lower bounds on the function. We contribute fine-grained complexity results for verification problems on concurrent programs. We suggest kernel lower bounds as hardness indicators for verification problems. The paper at hand presents new results This includes an improved algorithm for LCR running in O∗(2C) time instead of O∗(4C) and a new (2 − δ)C lower bound based on Set Cover. We provide a full version of the paper at hand in [11], including missing proofs and details of formal constructions

Related Work
Preliminaries
Leader Contributor Reachability
Parameterization by Memory and Leader
Parameterization by Contributors
Intractability
Bounded-Stage Reachability
Parameterization by Number of States and Threads
Conclusion
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.