Skip to main content
Log in

Model checking parameterized asynchronous shared-memory systems

  • Published:
Formal Methods in System Design Aims and scope Submit manuscript

Abstract

We characterize the complexity of liveness verification for parameterized systems consisting of a leader process and arbitrarily many anonymous and identical contributor processes. Processes communicate through a shared, bounded-value register. While each operation on the register is atomic, there is no synchronization primitive to execute a sequence of operations atomically. We analyze the case in which processes are modeled by finite-state machines or pushdown machines and the property is given by a Büchi automaton over the alphabet of read and write actions of the leader. We show that the problem is decidable, and has a surprisingly low complexity: it is NP-complete when all processes are finite-state machines, and is in NEXPTIME (and PSPACE-hard) when they are pushdown machines. This complexity is lower than for the non-parameterized case: liveness verification of finitely many finite-state machines is PSPACE-complete, and undecidable for two pushdown machines. For finite-state machines, our proofs characterize infinite behaviors using existential abstraction and semilinear constraints. For pushdown machines, we show how contributor computations of high stack height can be simulated by computations of many contributors, each with low stack height. Together, our results characterize the complexity of verification for parameterized systems under the assumptions of anonymity and asynchrony.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2

Similar content being viewed by others

Notes

  1. A finite-state automaton (FSA) is an FSM which decides languages of finite words. Therefore an FSA is an FSM with a set \(F\) of accepting states.

  2. In a nutshell, the Parikh image of a language \(L\) over a \(n\)-sized alphabet is a set of \(n\)-dimensional vectors of natural number. Each vector is the (Parikh) image of a word of \(L\) obtained by counting how many times each symbol occur and forgetting about the ordering, e.g. let \(L={abbb}\) over alphabet \(\Sigma =\{a,b\}\) the vector (1,3) is the image of \(abbb\) by counting 1 occurrence of \(a\) and 3 of \(b\).

  3. For readability, we write “configuration” for “PDM-configuration.”

  4. A pushdown automaton (PDA) is a PDM which decides languages of finite words. We define a PDA as a PDM with a set \(F\) of accepting states.

  5. See Theorem 4 for a definition of \(N\).

  6. Notice that the effective stack height of a configuration depends on the run it belongs to, and so \(c\,(\rho , i) = c_\psi (\rho ', i)\) does not necessarily imply that they have the same effective stack height.

References

  1. Abdulla PA, Bertrand N, Rabinovich A, Schnoebelen P (2005) Verification of probabilistic systems with faulty communication. Inf Comput 202(2):105–228

    Article  MathSciNet  MATH  Google Scholar 

  2. Abdulla PA, Cerans K, Jonsson B, Tsay Y-K (1996) General decidability theorems for infinite-state systems. In: LICS ’96, IEEE Computer Society, Washington, DC, pp 313–321

  3. Abdulla PA, Jonsson B (1996) Verifying programs with unreliable channels. Inf Comput 127(2):91–101

    Article  MathSciNet  MATH  Google Scholar 

  4. Aminof B, Kotek T, Rubin S, Spegni F, Veith H (2014) Parameterized model checking of rendezvous systems. In: CONCUR ’14 Proceedings of the 25th International Conference on Concurrency Theory, vol 704 of LNCS. Springer, Heidelberg, pp 109–124

  5. Angluin D, Aspnes J, Eisenstat D, Ruppert E (2007) The computational power of population protocols. Distrib Comput 20(4):279–304

    Article  MATH  Google Scholar 

  6. Apt KR, Kozen DC (1986) Limits for automatic verification of finite-state concurrent systems. Inf Process Lett 22(6):307–309

    Article  MathSciNet  Google Scholar 

  7. Bouajjani A, Esparza J, Maler O (1997) Reachability analysis of pushdown automata: application to model-checking. In: CONCUR ’97 Proceedings of the 8th International Conference on Concurrency Theory, vol 1243 of LNCS. Springer, Heidelberg, pp 135–150

  8. Esparza J, Finkel A and Mayr R (1999) On the verification of broadcast protocols. In: LICS ’99, IEEE Computer Society, Washington, DC, pp 352–359

  9. Esparza J, Ganty P, Majumdar R (2013) Parameterized verification of asynchronous shared-memory systems. In: CAV ’13 Proceedings of the 23rd International Conference on Computer Aided Verification, vol 8044 of LNCS. Springer, Heidelberg, pp 124–140

  10. Esparza J, Ganty P, Majumdar R (2016) Parameterized verification of asynchronous shared-memory systems. J ACM 63(1):10

    Article  MathSciNet  Google Scholar 

  11. German SM, Sistla AP (1992) Reasoning about systems with many processes. J ACM 39(3):675–735

    Article  MathSciNet  MATH  Google Scholar 

  12. Grädel E (1988) Subclasses of presburger arithmetic and the polynomial-time hierarchy. Theor Comput Sci 56:289–301

    Article  MathSciNet  MATH  Google Scholar 

  13. Hague M (2011) Parameterised pushdown systems with non-atomic writes. In: Proceedings of FSTTCS ’11, vol 13 of LIPIcs. Schloss Dagstuhl, Wadern, pp 457–468

  14. Meyer R (2008) On boundedness in depth in the pi-calculus. In: Proceedings of IFIP TCS 2008, vol 273 of IFIP. Springer, Heidelberg, pp 477–489

  15. Pnueli A, Xu J, Zuck LD (2002) Liveness with (0, 1, infty)-counter abstraction. In: CAV ’02 Proceedings of 14th International Conference on Computer Aided Verification, vol 2404 of LNCS. Springer, Heidelberg, pp 107–122

  16. Torre SL, Muscholl A, Walukiewicz I (2015) Safety of parametrized asynchronous shared-memory systems is almost always decidable. In: CONCUR ’15 Proceedings of 26th International Conference on Concurrency Theory, vol 42 of Leibniz International Proceedings in Informatics (LIPIcs), Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik, Wadern, pp 72–84

  17. Verma KN, Seidl H, Schwentick T (2005) On the complexity of equational horn clauses. In: CADE ’05 20th International Conference on Automated Deduction, vol 1831 of LNCS. Springer, Heidelberg, pp 337–352

Download references

Acknowledgments

Pierre Ganty has been supported by the Madrid Regional Government project S2013/ICE-2731, N-Greens Software - Next-GeneRation Energy-EfficieNt Secure Software, and the Spanish Ministry of Economy and Competitiveness project No. TIN2015-71819-P, RISCO - RIgorous analysis of Sophisticated COncurrent and distributed systems.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Pierre Ganty.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Durand-Gasselin, A., Esparza, J., Ganty, P. et al. Model checking parameterized asynchronous shared-memory systems. Form Methods Syst Des 50, 140–167 (2017). https://doi.org/10.1007/s10703-016-0258-3

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10703-016-0258-3

Keywords

Navigation