Advertisement

Abstract

Model checking is a useful method to verify automatically the correctness of a system with respect to a desired behavior, by checking whether a mathematical model of the system satisfies a formal specification of this behavior. Many systems of interest are open, in the sense that their behavior depends on the interaction with their environment. The model checking problem for finite–state open systems (called module checking) has been intensively studied in the literature. In this paper, we focus on open pushdown systems and we study the related model–checking problem (pushdown module checking, for short) with respect to properties expressed by CTL and CTL* formulas. We show that pushdown module checking against CTL (resp., CTL*) is 2Exptime-complete (resp., 3Exptime-complete). Moreover, we prove that for a fixed CTL* formula, the problem is Exptime-complete.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. [BC96]
    Bhat, E., Cleaveland, R.: Efficient model checking via the equational μ-calculus. In: LICS 1996, pp. 304–312 (1996)Google Scholar
  2. [BEM97]
    Bouajjani, A., Esparza, J., Maler, O.: Reachability Analysis of Pushdown Automata: Application to Model-Checking. In: Mazurkiewicz, A., Winkowski, J. (eds.) CONCUR 1997. LNCS, vol. 1243, pp. 135–150. Springer, Heidelberg (1997)Google Scholar
  3. [Buc62]
    Buchi, J.R.: On a decision method in restricted second order arithmetic. In: Proc. Internat. Congr. Logic, Method. and Philos. Sci. 1960, Stanford, pp. 1–12 (1962)Google Scholar
  4. [CE81]
    Clarke, E.M., Emerson, E.A.: Design and verification of synchronization skeletons using branching time temporal logic. In: Kozen, D. (ed.) Logic of Programs 1981. LNCS, vol. 131, pp. 52–71. Springer, Heidelberg (1982)CrossRefGoogle Scholar
  5. [CKS81]
    Chandra, A.K., Kozen, D.C., Stockmeyer, L.J.: Alternation. Journal of the ACM 28(1), 114–133 (1981)zbMATHCrossRefMathSciNetGoogle Scholar
  6. [EH86]
    Emerson, E.A., Halpern, J.Y.: Sometimes and not never revisited: On branching versus linear time. Journal of the ACM 33(1), 151–178 (1986)zbMATHCrossRefMathSciNetGoogle Scholar
  7. [EJ88]
    Emerson, E.A., Jutla, C.S.: The complexity of tree automata and logics of programs. In: FOCS 1988, pp. 328–337 (1988)Google Scholar
  8. [EJ91]
    Emerson, E.A., Jutla, C.S.: Tree automata, μ-calculus and determinacy. In: FOCS 1991, pp. 368–377 (1991)Google Scholar
  9. [Hoa85]
    Hoare, C.A.R.: Communicating Sequential Processes. Prentice-Hall, Englewood Cliffs (1985)zbMATHGoogle Scholar
  10. [KG96]
    Kupferman, O., Grumberg, O.: Buy one, get one free!!? Journal of Logic and Computation 6(4), 523–539 (1996)zbMATHCrossRefMathSciNetGoogle Scholar
  11. [KPV02]
    Kupferman, O., Piterman, N., Vardi, M.Y.: Pushdown specifications. In: Baaz, M., Voronkov, A. (eds.) LPAR 2002. LNCS (LNAI), vol. 2514, pp. 262–277. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  12. [KTMV00]
    Kupferman, O., Thiagarajan, P.S., Madhusudan, P., Vardi, M.Y.: Open systems in reactive environments: Control and Synthesis. In: Palamidessi, C. (ed.) CONCUR 2000. LNCS, vol. 1877, pp. 92–107. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  13. [KVW00]
    Kupferman, O., Vardi, M.Y., Wolper, P.: An Automata-Theoretic Approach to Branching-Time Model Checking. Journal of the ACM 47(2), 312–360 (2000)zbMATHCrossRefMathSciNetGoogle Scholar
  14. [KVW01]
    Kupferman, O., Vardi, M.Y., Wolper, P.: Module Checking. Information and Computation 164(2), 322–344 (2001)zbMATHCrossRefMathSciNetGoogle Scholar
  15. [LMS04]
    Loding, C., Madhusudan, P., Serre, O.: Visibly pushdown games. In: Lodaya, K., Mahajan, M. (eds.) FSTTCS 2004. LNCS, vol. 3328, pp. 408–420. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  16. [MS85]
    Muller, D.E., Shupp, P.E.: The theory of ends, pushdown automata, and second-order logic. Theoretical Computer Science 37, 51–75 (1985)zbMATHCrossRefMathSciNetGoogle Scholar
  17. [QS81]
    Queille, J.P., Sifakis, J.: Specification and verification of concurrent programs in Cesar. In: Dezani-Ciancaglini, M., Montanari, U. (eds.) Programming 1982. LNCS, vol. 137, pp. 337–351. Springer, Heidelberg (1982)Google Scholar
  18. [Var98]
    Vardi, M.Y.: Reasoning about the past with two-way automata. In: Larsen, K.G., Skyum, S., Winskel, G. (eds.) ICALP 1998. LNCS, vol. 1443, pp. 628–641. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  19. [VW86]
    Vardi, M.Y., Wolper, P.: Automata-theoretic techniques for modal logics of programs. J. of Computer and System Sciences 32(2), 182–221 (1986)CrossRefMathSciNetGoogle Scholar
  20. [Wal96]
    Walukiewicz, I.: Pushdown processes: Games and Model Checking. In: Alur, R., Henzinger, T.A. (eds.) CAV 1996. LNCS, vol. 1102, pp. 62–74. Springer, Heidelberg (1996)Google Scholar
  21. [Wal00]
    Walukiewicz, I.: Model checking CTL properties of pushdown systems. In: Kapoor, S., Prasad, S. (eds.) FST TCS 2000. LNCS, vol. 1974, pp. 127–138. Springer, Heidelberg (2000)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Laura Bozzelli
    • 1
  • Aniello Murano
    • 1
  • Adriano Peron
    • 1
  1. 1.Università di Napoli Federico IINapoliItaly

Personalised recommendations