Parameterized Verification of Asynchronous Shared-Memory Systems

  • Javier Esparza
  • Pierre Ganty
  • Rupak Majumdar
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8044)


We characterize the complexity of the safety verification problem for parameterized systems consisting of a leader process and arbitrarily many anonymous and identical contributors. 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 complexity of the safety verification problem when processes are modeled by finite-state machines, pushdown machines, and Turing machines. The problem is coNP-complete when all processes are finite-state machines, and is PSPACE-complete when they are pushdown machines. The complexity remains coNP-complete when each Turing machine is allowed boundedly many interactions with the register. Our proofs use combinatorial characterizations of computations in the model, and in case of pushdown-systems, some language-theoretic constructions of independent interest.


Turing Machine Label Transition System Vehicular Network Leader Process Broadcast Protocol 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Abdulla, P.A., Cerans, K., Jonsson, B., Tsay, Y.K.: General decidability theorems for infinite-state systems. In: LICS 1996, pp. 313–321. IEEE Computer Society (1996)Google Scholar
  2. 2.
    Apt, K.R., Kozen, D.C.: Limits for automatic verification of finite-state concurrent systems. Information Processing Letters 22(6), 307–309 (1986)MathSciNetCrossRefGoogle Scholar
  3. 3.
    Arora, S., Barak, B.: Computational Complexity–A Modern Approach. CUP (2009)Google Scholar
  4. 4.
    Brainerd, B.: An analog of a theorem about context-free languages. Information and Control 11(56), 561–567 (1967)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Clarke, E.M., Talupur, M., Veith, H.: Proving Ptolemy right: The environment abstraction framework for model checking concurrent systems. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 33–47. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  6. 6.
    Delzanno, G.: Constraint-based verification of parameterized cache coherence protocols. Formal Methods in System Design 23(3), 257–301 (2003)CrossRefzbMATHGoogle Scholar
  7. 7.
    Delzanno, G., Raskin, J.-F., Van Begin, L.: Towards the automated verification of multithreaded java programs. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, pp. 173–187. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  8. 8.
    Delzanno, G., Sangnier, A., Zavattaro, G.: Parameterized verification of ad hoc networks. In: Gastin, P., Laroussinie, F. (eds.) CONCUR 2010. LNCS, vol. 6269, pp. 313–327. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  9. 9.
    Dimitrova, R., Podelski, A.: Is lazy abstraction a decision procedure for broadcast protocols? In: Logozzo, F., Peled, D.A., Zuck, L.D. (eds.) VMCAI 2008. LNCS, vol. 4905, pp. 98–111. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  10. 10.
    Emerson, E.A., Kahlon, V.: Exact and efficient verification of parameterized cache coherence protocols. In: Geist, D., Tronci, E. (eds.) CHARME 2003. LNCS, vol. 2860, pp. 247–262. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  11. 11.
    Emerson, E.A., Namjoshi, K.S.: Verification of parameterized bus arbitration protocol. In: Vardi, M.Y. (ed.) CAV 1998. LNCS, vol. 1427, pp. 452–463. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  12. 12.
    Esparza, J., Finkel, A., Mayr, R.: On the verification of broadcast protocols. In: LICS 1999, pp. 352–359. IEEE Computer Society (1999)Google Scholar
  13. 13.
    Esparza, J., Ganty, P., Majumdar, R.: Parameterized verification of asynchronous shared-memory systems. CoRR abs/1304.1185 (2013)Google Scholar
  14. 14.
    Finkel, A., Leroux, J.: How to compose Presburger-accelerations: Applications to broadcast protocols. In: Agrawal, M., Seth, A.K. (eds.) FSTTCS 2002. LNCS, vol. 2556, pp. 145–156. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  15. 15.
    Ganty, P., Majumdar, R.: Algorithmic verification of asynchronous programs. ACM Trans. Program. Lang. Syst. 6, 1–6 (2012)CrossRefGoogle Scholar
  16. 16.
    Guerraoui, R., Ruppert, E.: Anonymous and fault-tolerant shared-memory computing. Distributed Computing 20(3), 165–177 (2007)CrossRefzbMATHGoogle Scholar
  17. 17.
    Hague, M.: Parameterised pushdown systems with non-atomic writes. In: Proc. of FSTTCS 2011. LIPIcs, vol. 13, pp. 457–468. Schloss Dagstuhl (2011)Google Scholar
  18. 18.
    Jones, N.D., Laaser, W.T.: Complete problems for deterministic polynomial time. In: Proc. of STOC 1974, pp. 40–46. ACM (1974)Google Scholar
  19. 19.
    Kaiser, A., Kroening, D., Wahl, T.: Dynamic cutoff detection in parameterized concurrent programs. In: Touili, T., Cook, B., Jackson, P. (eds.) CAV 2010. LNCS, vol. 6174, pp. 645–659. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  20. 20.
    Laurendeau, C., Barbeau, M.: Secure anonymous broadcasting in vehicular networks. In: LCN 2007, pp. 661–668. IEEE Computer Society (2007)Google Scholar
  21. 21.
    McMillan, K.L.: Verification of an implementation of tomasulo’s algorithm by compositional model checking. In: Vardi, M.Y. (ed.) CAV 1998. LNCS, vol. 1427, pp. 110–121. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  22. 22.
    La Torre, S., Madhusudan, P., Parlato, G.: Model-checking parameterized concurrent programs using linear interfaces. In: Touili, T., Cook, B., Jackson, P. (eds.) CAV 2010. LNCS, vol. 6174, pp. 629–644. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  23. 23.
    Viswanathan, M., Chadha, R.: Deciding branching time properties for asynchronous programs. Theoretical Computer Science 410(42), 4169–4179 (2009)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  • Javier Esparza
    • 1
  • Pierre Ganty
    • 2
  • Rupak Majumdar
    • 3
  1. 1.TU MunichGermany
  2. 2.IMDEA Software InstituteSpain
  3. 3.MPI-SWSGermany

Personalised recommendations