skip to main content
10.1145/1328438.1328460acmconferencesArticle/Chapter ViewAbstractPublication PagespoplConference Proceedingsconference-collections
research-article

Subcubic algorithms for recursive state machines

Published:07 January 2008Publication History

ABSTRACT

We show that the reachability problem for recursive state machines (or equivalently, pushdown systems), believed for long to have cubic worst-case complexity, can be solved in slightly subcubic time. All that is necessary for the new bound is a simple adaptation of a known technique. We also show that a better algorithm exists if the input machine does not have infinite recursive loops.

References

  1. A. V. Aho, J. E. Hopcroft, and J. D. Ullman. The Design and Analysis of Computer Algorithms. Addison-Wesley Series in Computer Science and Information Processing. Addison-Wesley, 1974. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. R. Alur and M. Yannakakis. Model checking of hierarchical state machines. In 6th ACM Symposium on Foundations of Software Engineering, pages 175--188, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. R. Alur, M. Benedikt, K. Etessami, P. Godefroid, T. Reps, and M. Yannakakis. Analysis of recursive state machines. ACM Transactions on Programming Languages and Systems, 27(4):786--818, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. V. L. Arlazarov, E. A. Dinic, M. A. Kronrod, and I. A. Faradzev. On economical construction of the transitive closure of an oriented graph. Soviet Mathematics Doklady, 11:1209--1210, 1970. ISSN 0197-6788.Google ScholarGoogle Scholar
  5. T. Ball and S. Rajamani. The SLAM toolkit. In 13th International Conference on Computer Aided Verification, pages 260--264, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. A. Bouajjani, J. Esparza, and O. Maler. Reachability analysis of pushdown automata: Applications to model checking. In 8th International Conference on Concurrency Theory, LNCS 1243, pages 135--150, 1997. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. T. M. Chan. All--pairs shortest paths with real weights in o(n3 log n)) time. In 9th Workshop on Algorithms and Data Structures, pages 318--324, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. T. M. Chan. More algorithms for all-pairs shortest paths in weighted graphs. In 39th ACM Symposium on Theory of Computing, pages 590--598, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. J. Eve and R. Kurki-Suonio. On computing the transitive closure of a relation. Acta Informatica, 8:303--314, 1977.Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. J. E. Hopcroft and J. D. Ullman. Introduction to Automata Theory, Languages, and Computation. Addison-Wesley, 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. S. Horwitz, T. W. Reps, and D. Binkley. Interprocedural slicing using dependence graphs (with retrospective). In Best of Programming Language Design and Implementation, pages 229--243, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. S. Horwitz, T. Reps, and M. Sagiv. Demand interprocedural dataflow analysis. In 3rd ACM Symposium on Foundations of Software Engineering, pages 104--115, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. D. Melski and T. W. Reps. Interconvertibility of a class of set constraints and context-free-language reachability. Theoretical Computer Science, 248(1-2):29--98, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. P. W. Purdom. A transitive closure algorithm. BIT, 10:76--94, 1970.Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. J. Rehof and M. Fahndrich. Type-base flow analysis: from polymorphic subtyping to CFL-reachability. In 28th ACM Symposium on Principles of Programming Languages, pages 54--66, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. T. Reps. Shape analysis as a generalized path problem. In ACM Workshop on Partial Evaluation and Semantics-Based Program Manipulation, pages 1--11, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. T. Reps. Program analysis via graph reachability. Information and Software Technology, 40(11-12): 701--726, 1998.Google ScholarGoogle ScholarCross RefCross Ref
  18. T. Reps, S. Horwitz, and S. Sagiv. Precise interprocedural dataflow analysis via graph reachability. In 22nd ACM Symposium on Principles of Programming Languages, pages 49--61, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. T. W. Reps, S. Schwoon, and S. Jha. Weighted pushdown systems and their application to interprocedural dataflow analysis. In 10th Static Analysis Symposium, pages 189--213, 2003.Google ScholarGoogle ScholarCross RefCross Ref
  20. W. Rytter. Time complexity of loop-free two-way pushdown automata. Information Processing Letters, 16(3): 127--129, 1983.Google ScholarGoogle ScholarCross RefCross Ref
  21. W. Rytter. Fast recognition of pushdown automaton and context-free languages. Information and Control, 67(1-3): 12--22, 1985. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. L. Schmitz. An improved transitive closure algorithm. Computing, 30:359--371, 1983.Google ScholarGoogle ScholarCross RefCross Ref
  23. M. Sharir and A. Pnueli. Two approaches to interprocedural dataflow analysis. Program Flow Analysis: Theory and Applications, pages 189--234, 1981.Google ScholarGoogle Scholar
  24. M. Sridharan, D. Gopan, L. Shan, and R. Bodik. Demand-driven points-to analysis for Java. In 20th ACM Conference on Object-Oriented Programming, Systems, Languages, and Applications, pages 59--76, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. L. G. Valiant. General context-free recognition in less than cubic time. Journal of Computer and System Sciences, 10(2):308--315, 1975.Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. M. Yannakakis. Graph-theoretic methods in database theory. In 9th ACM Symposium on Principles of Database Systems, pages 230--242, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Subcubic algorithms for recursive state machines

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader
          About Cookies On This Site

          We use cookies to ensure that we give you the best experience on our website.

          Learn more

          Got it!