OpenNWA: A Nested-Word Automaton Library

  • Evan Driscoll
  • Aditya Thakur
  • Thomas Reps
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7358)


Nested-word automata (NWAs) are a language formalism that helps bridge the gap between finite-state automata and pushdown automata. NWAs can express some context-free properties, such as parenthesis matching, yet retain all the desirable closure characteristics of finite-state automata.

This paper describes OpenNWA, a C++ library for working with NWAs. The library provides the expected automata-theoretic operations, such as intersection, determinization, and complementation. It is packaged with WALi—the Weighted Automaton Library—and interoperates closely with the weighted pushdown system portions of WALi.


  1. 1.
    Alur, R.: Nested words (2011),
  2. 2.
    Alur, R., Madhusudan, P.: Adding Nesting Structure to Words. In: Ibarra, O.H., Dang, Z. (eds.) DLT 2006. LNCS, vol. 4036, pp. 1–13. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  3. 3.
    Alur, R., Madhusudan, P.: Adding nesting structure to words. JACM 56(3) (May 2009)Google Scholar
  4. 4.
    Driscoll, E., Burton, A., Reps, T.: Checking conformance of a producer and a consumer. In: FSE (2011)Google Scholar
  5. 5.
    Driscoll, E., Thakur, A., Burton, A., Reps, T.: WALi: Nested-word automata. TR-1675R, Comp. Sci. Dept., Univ. of Wisconsin, Madison, WI (September 2011)Google Scholar
  6. 6.
    Fredrikson, M., Joiner, R., Jha, S., Reps, T., Porras, P., Saïdi, H., Yegneswaran, V.: Efficient Runtime Policy Enforcement Using Counterexample-Guided Abstraction Refinement. In: Madhusudan, P., Seshia, S.A. (eds.) CAV 2012. LNCS, vol. 7358, pp. 548–563. Springer, Heidelberg (2012)Google Scholar
  7. 7.
    Kidd, N., Lal, A., Reps, T.: WALi: The Weighted Automaton Library (2007),
  8. 8.
    Madhusudan, P.: Visibly pushdown automata – automata on nested words (2009),
  9. 9.
    Nguyen, H.: Visibly pushdown automata library (2006),
  10. 10.
    Reps, T., Schwoon, S., Jha, S., Melski, D.: Weighted pushdown systems and their application to interprocedural dataflow analysis. SCP 58(1-2) (October 2005)Google Scholar
  11. 11.
    Thakur, A., Lim, J., Lal, A., Burton, A., Driscoll, E., Elder, M., Andersen, T., Reps, T.: Directed proof generation for machine code. TR 1669, UW-Madison (April 2010); Abridged version published in CAV 2010Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Evan Driscoll
    • 1
  • Aditya Thakur
    • 1
  • Thomas Reps
    • 1
    • 2
  1. 1.Computer Sciences DepartmentUniversity of WisconsinMadisonUSA
  2. 2.GrammaTech, Inc.IthacaUSA

Personalised recommendations