Skip to main content
Log in

The Complexity of Model Checking Multi-Stack Systems

  • Published:
Theory of Computing Systems Aims and scope Submit manuscript

Abstract

We study the linear-time model checking problem for boolean concurrent programs with recursive procedure calls. While sequential recursive programs are usually modeled as pushdown automata, concurrent recursive programs involve several processes and can be naturally abstracted as pushdown automata with multiple stacks. Their behavior can be understood as words with multiple nesting relations, each relation connecting a procedure call with its corresponding return. To reason about multiply nested words, we consider the class of all temporal logics as defined in the book by Gabbay, Hodkinson, and Reynolds (18). The unifying feature of these temporal logics is that their modalities are defined in monadic second-order (MSO) logic. In particular, this captures numerous temporal logics over concurrent and/or recursive programs that have been defined so far. Since the general model checking problem is undecidable, we restrict attention to phase bounded executions as proposed by La Torre, Madhusudan, and Parlato (LICS 24). While the MSO model checking problem in this case is non-elementary, our main result states that the model checking (and satisfiability) problem for all MSO-definable temporal logics is decidable in elementary time. More precisely, it is solvable in time exponential in the formula and (n+2)-fold exponential in the number of phases where n is the maximal level of the MSO modalities in the monadic quantifier alternation hierarchy (which is a vast improvement over the conference version of this paper from LICS 2013 where the space was also (n+2)-fold exponential in the size of the temporal formula). We complement this result and provide, for each level n, a temporal logic whose model checking problem is n-EXPSPACE-hard.

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
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

Notes

  1. Note that φ has at most two free individual and one free set variable.

  2. Note that an m-configuration uses space |α β| = F n (m)−3 on the tape of the Turing machine, whence the name m-configuration.

  3. We expect that using Stockmeyer’s technique from [37] only gives a formula from \(M\Sigma ^{G}_{n+1}(\Gamma )\), see the progress made between [19] and [20].

References

  1. Aiswarya, C., Gastin, P., Narayan Kumar, K.: Verifying communicating multi-pushdown systems via split-width. In: Proceedings of ATVA’14, pp 1–17 (2014)

  2. Alur, R., Arenas, M., Barceló, P., Etessami, K., Immerman, N., Libkin, L.: First-order and temporal logics for nested words. Logical Methods Comput Sci 4(11), 1–44 (2008)

    MathSciNet  MATH  Google Scholar 

  3. Alur, R., Etessami, K., Madhusudan, P.: A Temporal Logic of Nested Calls and Returns. In: Proceedings of TACAS’04, vol. 2988 of Lecture Notes in Computer Science, pp 467–481. Springer (2004)

  4. Alur, R., Madhusudan, P.: Adding nesting structure to words. J ACM 56, 16:1–16:43 (2009)

    Article  MathSciNet  MATH  Google Scholar 

  5. Atig, M.F.: Model-checking of ordered multi-pushdown automata. Logical Methods Comput Sci 8, 3 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  6. Atig, M.F., Bollig, B., Habermehl, P.: Emptiness of multi-pushdown automata is 2ETIME-complete. In: Proceedings of DLT’08, vol. 5257 of Lecture Notes in Computer Science, pp 121–133. Springer (2008)

  7. Atig, M.F., Bouajjani, A., Narayan Kumar, K., Saivasan, P.: Linear-time model-checking for multithreaded programs under scope-bounding. In: Proceedings of ATVA’12, vol. 7561, pp 152–166. Springer (2012)

  8. Atig, M.F., Bouajjani, A., Narayan Kumar, K., Saivasan, P.: Model checking branching-time properties of multi-pushdown systems is hard (2012). CoRR, arXiv:1205.6928

  9. Baier, C., Katoen, J.-P.: Principles of model checking. MIT Press (2008)

  10. Bollig, B., Cyriac, A., Gastin, P., Zeitoun, M.: Temporal logics for concurrent recursive programs: satisfiability and model checking. J. Applied Logic 12(4), 395–416 (2014)

    Article  MathSciNet  MATH  Google Scholar 

  11. Bollig, B., Kuske, D.: An optimal construction of Hanf sentences. J. Appl. Log. 10(2), 179–186 (2012)

    Article  MathSciNet  MATH  Google Scholar 

  12. Bollig, B., Kuske, D., Mennicke, R.: The complexity of model checking multi-stack systems. In: Proceedings of LICS’13, pp 163–172. IEEE Computer Society (2013)

  13. Breveglieri, L., Cherubini, A., Citrini, C., Crespi Reghizzi, S.: Multi-push-down languages and grammars. Int. J. Found. Comput. Sci. 7(3), 253–292 (1996)

    Article  MATH  Google Scholar 

  14. Clarke, E. M., Grumberg, O., Peled, D.: Model checking. MIT Press (2001)

  15. Cyriac, A., Gastin, P., Narayan Kumar, K.: MSO decidability of multi-pushdown systems via split-width. In: Proceedings of CONCUR’12, volume 7454 of Lecture Notes in Computer Science, pp 547–561. Springer (2012)

  16. Ebbinghaus, H.-D., Flum, J.: Finite model theory. Springer (1995)

  17. Fagin, R., Stockmeyer, L.J., Vardi, M.: On monadic NP vs. monadic co-NP (Extended Abstract). In: Structure in complexity theory conference, pp 19–30. IEEE Computer Society Press (1993)

  18. Gabbay, D.M., Hodkinson, I., Reynolds, M.A.: Temporal logic: Mathematical foundations and computational aspects, vol. 1. Oxford University Press (1994)

  19. Gastin, P., Kuske, D.: Uniform satisfiability problem for local temporal logics over Mazurkiewicz traces. In: Proceedings of CONCUR’05 Lecture Notes in Comp. Science, vol. 3653, pp 533–547. Springer (2005)

  20. Gastin, P., Kuske, D.: Uniform satisfiability problem for local temporal logics over Mazurkiewicz traces. Inf. Comput. 208(7), 797–816 (2010)

    Article  MathSciNet  MATH  Google Scholar 

  21. Göller, S., Lin, A.W.: Concurrency makes simple theories hard. In: Proceedings of STACS’12, Volume 14 of Leibniz International Proceedings in Informatics (LIPIcs), pp 148–159 (2012)

  22. Hanf, W.: Model-theoretic methods in the study of elementary logic. In: The theory of models, pp 132–145. North Holland (1965)

  23. Heußner, A., Leroux, J., Muscholl, A., Sutre, G.: Reachability analysis of communicating pushdown systems. Logical Methods Comput Sci 8(3:23), 1–20 (2012)

    MathSciNet  MATH  Google Scholar 

  24. La Torre, S., Madhusudan, P., Parlato, G.: A robust class of context-sensitive languages. In: Proceedings of LICS’07, pp 161–170. IEEE Computer Society Press (2007)

  25. La Torre, S., Madhusudan, P., Parlato, G.: Context-bounded analysis of concurrent queue systems. In: Proceedings of TACAS’08 Lecture Notes in Computer Science, pp 299–314. Springer (2008)

  26. La Torre, S., Madhusudan, P., Parlato, G.: An infinite automaton characterization of double exponential time. In: Proceedings of CSL’08, volume 5213 of Lecture Notes in Computer Science. Springer (2008)

  27. La Torre, S., Napoli, M.: Reachability of multistack pushdown systems with scope-bounded matching relations. In: Proceedings of CONCUR 2011, volume 6901 of Lecture Notes in Computer Science, pp 203–218. Springer (2011)

  28. La Torre, S., Napoli, M.: A temporal logic for multi-threaded programs. In: Proceedings of IFIP-TCS’12, Volume 7604 of Lecture Notes in Computer Science, pp 225–239. Springer (2012)

  29. La Torre, S., Parlato, G.: Scope-bounded multistack pushdown systems: Fixed-point, sequentialization, and tree-width. In: Proceedings of FSTTCS’12, Volume 18 of Leibniz International Proceedings in Informatics (LIPIcs), pp 173–184 (2012)

  30. Madhusudan, P., Parlato, G.: The tree width of auxiliary storage. In: Proceedings of POPL’11, pp 283–294. ACM (2011)

  31. Matz, O., Thomas, W.: The monadic quantifier alternation hierarchy over graphs is infinite. In: LICS’97, pp 236–244. IEEE Computer Society Press (1997)

  32. Mennicke, R.: Model checking concurrent recursive programs using temporal logics. In: Proceedings of MFCS’14, Part I, volume 8634 of Lecture Notes in Computer Science, pp 438–450. Springer (2014)

  33. Mennicke, R.: Model checking concurrent systems using temporal logics. PhD Thesis, Fakultät für Informatik und Automatisierung, Technische Universität Ilmenau (2015)

  34. Pnueli, A.: The temporal logic of programs. In: Proceedings of FOCS’77, pp 46–57. IEEE (1977)

  35. Qadeer, S., Rehof, J.: Context-bounded model checking of concurrent software. In: Proceedings of TACAS’05, Volume 3440 of Lecture Notes in Computer Science, pp 93–107. Springer (2005)

  36. Reinhardt, K.: The complexity of translating logic to finite automata. In: Automata, logics, and infinite games, volume 2500 of Lecture Notes in Computer Science, pp 231–238. Springer (2002)

  37. Stockmeyer, L.: The complexity of decision problems in automata theory and logic. PhD thesis, MIT (1974)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Roy Mennicke.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Bollig, B., Kuske, D. & Mennicke, R. The Complexity of Model Checking Multi-Stack Systems. Theory Comput Syst 60, 695–736 (2017). https://doi.org/10.1007/s00224-016-9700-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00224-016-9700-6

Keywords

Navigation