On NFA Reductions

  • Lucian Ilie
  • Gonzalo Navarro
  • Sheng Yu
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3113)


We give faster algorithms for two methods of reducing the number of states in nondeterministic finite automata. The first uses equivalences and the second uses preorders. We develop restricted reduction algorithms that operate on position automata while preserving some of its properties. We show empirically that these reductions are effective in largely reducing the memory requirements of regular expression search algorithms, and compare the effectiveness of different reductions.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Brüggemann-Klein, A.: Regular expressions into finite automata. Theoret. Comput. Sci. 120, 197–213 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Champarnaud, J.-M., Coulon, F.: NFA reduction algorithms by means of regular inequalities. In: Ésik, Z., Fülöp, Z. (eds.) DLT 2003. LNCS, vol. 2710, pp. 194–205. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  3. 3.
    Glushkov, V.M.: The abstract theory of automata. Russian Math. Surveys 16, 1–53 (1961)CrossRefGoogle Scholar
  4. 4.
    Hagenah, C., Muscholl, A.: Computing ε -free NFA from regular expressions in O(n log 2(n)) time. Theor. Inform. Appl. 34(4), 257–277 (2000)zbMATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Hopcroft, J.: An n log n algorithm for minimizing states in a finite automaton. In: Proc. Internat. Sympos. Theory of machines and computations, Technion, Haifa, pp. 189–196. Academic Press, New York (1971)Google Scholar
  6. 6.
    Hopcroft, J.E., Ullman, J.D.: Introduction to Automata Theory, Languages, and Computation. Addison-Wesley, Reading (1979)zbMATHGoogle Scholar
  7. 7.
    Hromkovic, J., Seibert, S., Wilke, T.: Translating regular expressions into small ε-free nondeterministic finite automata. J. Comput. System Sci. 62(4), 565–588 (2001)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Ilie, L., Yu, S.: Algorithms for computing small nFAs. In: Diks, K., Rytter, W. (eds.) MFCS 2002. LNCS, vol. 2420, pp. 328–340. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  9. 9.
    Ilie, L., Yu, S.: Reducing NFAs by invariant equivalences. Theoret. Comput. Sci. 306, 373–390 (2003)zbMATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Jiang, T., Ravikumar, B.: Minimal NFA problems are hard. SIAM J. Comput. 22(6), 1117–1141 (1993)zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Kameda, T., Weiner, P.: On the state minimization of nondeterministic finite automata. IEEE Trans. Computers C-19(7), 617–627 (1970)CrossRefMathSciNetGoogle Scholar
  12. 12.
    McNaughton, R., Yamada, H.: Regular expressions and state graphs for automata. IEEE Trans. on Electronic Computers 9(1), 39–47 (1960)CrossRefGoogle Scholar
  13. 13.
    Melnikov, B.F.: A new algorithm of the state-minimization for the nondeterministic finite automata. Korean J. Comput. Appl. Math. 6(2), 277–290 (1999)zbMATHMathSciNetGoogle Scholar
  14. 14.
    Melnikov, B.F.: Once more about the state-minimization of the nondeterministic finite automata. Korean J. Comput. Appl. Math. 7(3), 655–662 (2000)zbMATHMathSciNetGoogle Scholar
  15. 15.
    Navarro, G.: NR-grep: a Fast and Flexible Pattern Matching Tool. Software Practice and Experience 31, 1265–1312 (2001)zbMATHCrossRefGoogle Scholar
  16. 16.
    Navarro, G., Raffinot, M.: Fast Regular Expression Search. In: Vitter, J.S., Zaroliagis, C.D. (eds.) WAE 1999. LNCS, vol. 1668, pp. 198–212. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  17. 17.
    Navarro, G., Raffinot, M.: Compact DFA Representation for Fast Regular Expression Search. In: Brodal, G.S., Frigioni, D., Marchetti-Spaccamela, A. (eds.) WAE 2001. LNCS, vol. 2141, pp. 1–12. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  18. 18.
    Navarro, G., Raffinot, M.: Flexible Pattern Matching in Strings. Practical On-Line Search Algorithms for Texts and Biological Sequences. Cambridge University Press, Cambridge (2002)zbMATHGoogle Scholar
  19. 19.
    Paige, R., Tarjan, R.E.: Three Partition Refinement Algorithms. SIAM J. Comput. 16(6), 973–989 (1987)zbMATHCrossRefMathSciNetGoogle Scholar
  20. 20.
    Thompson, K.: Regular expression search algorithm. Comm. ACM 11(6), 419–422 (1968)zbMATHCrossRefGoogle Scholar
  21. 21.
    Wu, S., Mamber, U.: Fast text searching allowing errors, Comm. Comm. ACM 35(10), 83–91 (1992)CrossRefGoogle Scholar
  22. 22.
    Yu, S.: Regular Languages. In: Rozenberg, G., Salomaa, A. (eds.) Handbook of Formal Languages, vol. I, pp. 41–110. Springer, Berlin (1997)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Lucian Ilie
    • 1
  • Gonzalo Navarro
    • 2
  • Sheng Yu
    • 1
  1. 1.Department of Computer ScienceUniversity of Western OntarioLondonCanada
  2. 2.Department of Computer ScienceUniversity of ChileSantiagoChile

Personalised recommendations