On the Membership Problem for Visibly Pushdown Languages

  • Salvatore La Torre
  • Margherita Napoli
  • Mimmo Parente
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4218)

Abstract

Visibly pushdown languages are a subclass of deterministic context-free languages that can model nonregular properties of interest in program analysis. This class properly contains typical classes of parenthesized languages like “balanced” and “input-driven” languages. Visibly pushdown languages are closed under boolean operations and some decision problems, such as inclusion and universality, are decidable. In this paper, we study the membership problem for this class of languages and show that it can be solved in time linear in the size of the input grammar and in the length of the input word. The algorithm consists of a reduction to the reachability problem on game graphs. The same approach can be efficiently applied when the input language is given as a visibly pushdown automaton, moreover we also show time complexities of the same problem using other approaches. We further motivate our result showing an application to XML schema.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Aho, A., Ullman, J.: The theory of Parsing, Translation and Compiling, vol. I. Prentice-Hall, Englewood Cliffs (1973)Google Scholar
  2. 2.
    Alur, R., Benedikt, M., Etessami, K., Godefroid, P., Reps, T.W., Yannakakis, M.: Analysis of recursive state machines. ACM Trans. Program. Lang. Syst. 27(4), 786–818 (2005)CrossRefGoogle Scholar
  3. 3.
    Alur, R., Kumkar, V., Madhusudan, P., Viswanathan, M.: Congruences for visibly pushdown languages. In: Caires, L., Italiano, G.F., Monteiro, L., Palamidessi, C., Yung, M. (eds.) ICALP 2005. LNCS, vol. 3580, pp. 1102–1114. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  4. 4.
    Alur, R., Madhusudan, P.: Visibly Pushdown Languages. In: A preliminary version appears in Proc. of the 36th ACM Symp. on Theory of Computing (STOC 2004), pp. 201–211 (2004), www.cis.upenn.edu/~alur/
  5. 5.
    Ball, T., Rajamani, S.: Bebop: A Symbolic Model Checker for Boolean Programs. In: Havelund, K., Penix, J., Visser, W. (eds.) SPIN 2000. LNCS, vol. 1885, pp. 113–130. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  6. 6.
    Berstel, J., Boasson, L.: Balanced Grammars and Their Languages. In: Brauer, W., Ehrig, H., Karhumäki, J., Salomaa, A. (eds.) Formal and Natural Computing. LNCS, vol. 2300, pp. 3–25. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  7. 7.
    Berstel, J., Boasson, L.: Formal Properties of XML Grammars and Languages. Acta Informatica 38, 649–671 (2002)MATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    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
  9. 9.
    Burkart, O., Steffen, B.: Model Checking for Context-Free Processes. In: Cleaveland, W.R. (ed.) CONCUR 1992. LNCS, vol. 630, pp. 123–137. Springer, Heidelberg (1992)CrossRefGoogle Scholar
  10. 10.
    Dymond, P.W.: Input-driven languages are Recognized in Log n Space. IPL 26, 247–250 (1988)CrossRefMathSciNetGoogle Scholar
  11. 11.
    Esparza, J., Kucera, A., Schwoon, S.: Model checking LTL with regular valuations for pushdown systems. Information and Computation 186(2), 355–376 (2003)MATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Ginsburg, S., Harrison, M.A.: Bracketed Context-free languages. J. Computer and System Sci. 1, 1–23 (1967)MATHMathSciNetCrossRefGoogle Scholar
  13. 13.
    Henzinger, T.A., Jhala, R., Majumdar, R., Necula, G.C., Sutre, G., Weimer, W.: Temporal-Safety Proofs for Systems Code. In: Brinksma, E., Larsen, K.G. (eds.) CAV 2002. LNCS, vol. 2404, pp. 526–538. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  14. 14.
    Hopcroft, J.E., Motwani, R., Ullman, J.D.: Introduction to Automata Theory, Languages, and Computation. Addison-Wesley, Reading (2001)MATHGoogle Scholar
  15. 15.
    Knuth, D.E.: A characterization of parenthesis languages. Information and Control 11(3), 269–289 (1967)MATHCrossRefGoogle Scholar
  16. 16.
    Kumkar, V., Madhusudan, P., Viswanathan, M.: Visibly Pushdown Languages for XML. Technical Report UIUCDCS-R-2006-2704, UIUC (2006)Google Scholar
  17. 17.
    Lynch, N.: Log Space Recognition and Traslation of Parenthesis Languages. J. ACM 24(4), 583–590 (1977)MATHCrossRefMathSciNetGoogle Scholar
  18. 18.
    McNaughton, R.: Parenthesis grammars. J. ACM 14(3), 490–500 (1967)MATHCrossRefMathSciNetGoogle Scholar
  19. 19.
    Reps, T.W., Horwitz, S., Sagiv, S.: Precise Interprocedural Dataflow Analysis via Graph Reachability. In: Proc. of the 22nd Symposium on Principles of Programming Languages (POPL 1995), pp. 49–61 (1995)Google Scholar
  20. 20.
    Thomas, W.: On the synthesis of strategies in infinite games. In: Mayr, E.W., Puech, C. (eds.) STACS 1995. LNCS, vol. 900, pp. 1–13. Springer, Heidelberg (1995)Google Scholar
  21. 21.
    von Braunmhl, B., Verbeek, R.: Input-driven languages are Recognized in Log n Space. In: Karpinski, M. (ed.) FCT 1983. LNCS, vol. 158, pp. 40–51. Springer, Heidelberg (1983)Google Scholar
  22. 22.
    W3C Recommendation. Extensible Markup Language (XML) 1.0, 2nd edn. (October 6, 2000), http://www.w3.org/TR/REC-xml
  23. 23.
    W3C Recommendation. XML Schema Part 0, 1 and 2 (May 2, 2001), http://www.w3.org/TR/xmlschema-0,1,2

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Salvatore La Torre
    • 1
  • Margherita Napoli
    • 1
  • Mimmo Parente
    • 1
  1. 1.Facoltà di Scienze Matematiche, Fisiche e NaturaliUniversità degli Studi di SalernoItaly

Personalised recommendations