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

Minimization of symbolic automata

Published:08 January 2014Publication History

ABSTRACT

Symbolic Automata extend classical automata by using symbolic alphabets instead of finite ones. Most of the classical automata algorithms rely on the alphabet being finite, and generalizing them to the symbolic setting is not a trivial task. In this paper we study the problem of minimizing symbolic automata. We formally define and prove the basic properties of minimality in the symbolic setting, and lift classical minimization algorithms (Huffman-Moore's and Hopcroft's algorithms) to symbolic automata. While Hopcroft's algorithm is the fastest known algorithm for DFA minimization, we show how, in the presence of symbolic alphabets, it can incur an exponential blowup. To address this issue, we introduce a new algorithm that fully benefits from the symbolic representation of the alphabet and does not suffer from the exponential blowup. We provide comprehensive performance evaluation of all the algorithms over large benchmarks and against existing state-of-the-art implementations. The experiments show how the new symbolic algorithm is faster than previous implementations.

Skip Supplemental Material Section

Supplemental Material

d3_left_t5.mp4

mp4

367.4 MB

References

  1. BRICS finite state automata utilities. http://www.brics.dk/automaton/.Google ScholarGoogle Scholar
  2. J. Almeida and M. Zeitoun. Description and analysis of a bottomup DFA minimization algorithm. Information Processing Letters, 107(2):52--59, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. M. Almeida, N.Moreira, and R. Reis. On the performance of automata minimization algorithms. Technical Report DCC-2007-03, University of Porto, 2007.Google ScholarGoogle Scholar
  4. D. Angluin. Learning regular sets from queries and counterexamples. Inf. Comput., 75(2):87--106, 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. M.-P. Béal and M. Crochemore. Minimizing incomplete automata. In Finite-State Methods and Natural Language Processing, 7th International Workshop, pages 9--16, 2008.Google ScholarGoogle Scholar
  6. J. Berstel, L. Boasson, and O. Carton. Hopcroft's automaton minimization algorithm and Sturmian words. In DMTCS'2008, pages 355--366, 2008.Google ScholarGoogle Scholar
  7. J. Berstel, L. Boasson, O. Carton, and I. Fagnot. Minimization of automata. To appear in Handbook of Automata, 2011.Google ScholarGoogle Scholar
  8. J. Berstel and O. Carton. On the complexity of Hopcroft's state minimization algorithm. In CIAA'2004, volume 3317, pages 35--44, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. N. Bjørner, V. Ganesh, R. Michel, and M. Veanes. An SMT-LIB format for sequences and regular expressions. In P. Fontaine and A. Goel, editors, SMT'12, pages 76--86, 2012.Google ScholarGoogle Scholar
  10. N. Blum. An 0(n log n) implementation of the standard method for minimizing n-state finite automata. Information Processing Letters, 57:65--69, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. M. Bojaczyk and S. Lasota. A machine-independent characterization of timed languages. In A. Czumaj, K. Mehlhorn, A. Pitts, and R.Wattenhofer, editors, Automata, Languages, and Programming, volume 7392 of LNCS, pages 92--103. Springer Berlin Heidelberg, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. M. Botinčan and D. Babiū. Sigma*: symbolic learning of input-output specifications. In POPL'13, pages 443--456, New York, NY, USA, 2013. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. J. A. Brzozowski. Canonical regular expressions and minimal state graphs for definite events. In Proc. Sympos. Math. Theory of Automata, pages 529--561, New York, 1963.Google ScholarGoogle Scholar
  14. D. Bustan. Modular minimization of deterministic finite-state machines. In In 6th International Workshop on Formal Methods for Industrial Critical Systems, pages 163--178, 2001.Google ScholarGoogle Scholar
  15. R. C. Carrasco and M. L. Forcada. Incremental construction and maintenance of minimal finite-state automata. Comput. Linguist., 28(2):207--216, June 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. S. Cassel, B. Jonsson, F. Howar, and B. Steffen. A succinct canonical register automaton model for data domains with binary relations. In S. Chakraborty and M. Mukund, editors, ATVA 2012, volume 7561 of LNCS, pages 57--71. Springer, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. L. D'Antoni and M. Veanes. Equivalence of extended symbolic finite transducers. In N. Sharygina and H. Veith, editors, CAV 2013, volume 8044 of LNCS, pages 624--639. Springer, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. L. D'Antoni, M. Veanes, B. Livshits, and D. Molnar. Fast: A transducer-based language for tree manipulation. Technical Report MSR-TR-2012--123, Microsoft Research, November 2012.Google ScholarGoogle Scholar
  19. L. de Moura and N. Bjørner. Z3: An Efficient SMT Solver. In TACAS'08, LNCS. Springer, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. M. Droste,W. Kuich, and H. Vogler. Handbook of Weighted Automata. Springer Publishing Company, Incorporated, 1st edition, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. P. Gawrychowski, A. Jež, and A. Maletti. On minimising automata with errors. In MFCS'11, pages 327--338, Berlin, Heidelberg, 2011. Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. J. Henriksen, J. Jensen,M. Jørgensen, N. Klarlund, B. Paige, T. Rauhe, and A. Sandholm. Mona: Monadic second-order logic in practice. In TACAS '95, volume 1019 of LNCS. Springer, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. M. Holzer and S. Jakobi. From equivalence to almost-equivalence, and beyond -- minimizing automata with errors. In H.-C. Yen and O. Ibarra, editors, Developments in Language Theory, volume 7410 of LNCS, pages 190--201. Springer, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. M. Holzer and A. Maletti. An nlogn algorithm for hyper-minimizing a (minimized) deterministic automaton. Theor. Comput. Sci., 411(38--39):3404--3413, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. P. Hooimeijer, B. Livshits, D. Molnar, P. Saxena, and M. Veanes. Fast and precise sanitizer analysis with Bek. In USENIX Security, August 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. P. Hooimeijer and M. Veanes. An evaluation of automata algorithms for string analysis. In VMCAI'11, volume 6538 of LNCS, pages 248--262. Springer, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. J. Hopcroft. An nlogn algorithm for minimizing states in a finite automaton. In Z. Kohavi, editor, Theory of machines and computations, Proc. Internat. Sympos., Technion, Haifa, 1971, pages 189--196, New York, 1971. Academic Press.Google ScholarGoogle ScholarCross RefCross Ref
  28. J. E. Hopcroft and J. D. Ullman. Introduction to Automata Theory, Languages, and Computation. Addison Wesley, 1979. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. D. Huffman. The synthesis of sequential switching circuits. Journal of the Franklin Institute, 257(3-4):161--190,275--303, 1954.Google ScholarGoogle ScholarCross RefCross Ref
  30. N. Klarlund, A. Møller, and M. I. Schwartzbach. MONA implementation secrets. International Journal of Foundations of Computer Science, 13(4):571--586, 2002.Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. T. Knuutila. Re-describing an algorithm by Hopcroft. Theor. Comput. Sci., 250(1--2):333--363, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. S. L. Krivol. Algorithms for minimization of finite acyclic automata and pattern matching in terms. Cybernetics, 27:324--331, 1991.Google ScholarGoogle ScholarCross RefCross Ref
  33. R. Mayr and L. Clemente. Advanced automata minimization. In POPL'13, pages 63--74, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. E. F. Moore. Gedanken-experiments on sequential machines. Automata studies, Annals of mathematics studies, (34):129--153, 1956.Google ScholarGoogle Scholar
  35. A. Restivo and R. Vaglica. Some remarks on automata minimality. In G. Mauri and A. Leporati, editors, DLT'2011, volume 6795 of LNCS, pages 15--27. Springer, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. D. Revuz. Minimisation of acyclic deterministic automata in linear time. Theoret. Comput. Sci., 92:181--189, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. A. Tewari, U. Srivastava, and P. Gupta. A parallel DFA minimization algorithm. In HiPC 2002, volume 2552 of LNCS, pages 34--40. Springer, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. W. Thomas. Languages, automata, and logic. In Handbook of Formal Languages, pages 389--455. Springer, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. A. Valmari. Fast brief practical DFA minimization. Information Processing Letters, 112:213--217, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. A. Valmari and P. Lehtinen. Efficient minimization of DFAs with partial transition functions. In S. Albers and P. Weil, editors, STACS 2008, pages 645--656, Dagstuhl, 2008.Google ScholarGoogle Scholar
  41. G. van Noord and D. Gerdemann. Finite state transducers with predicates and identities. Grammars, 4(3):263--286, 2001.Google ScholarGoogle ScholarCross RefCross Ref
  42. M. Veanes, N. Bjørner, and L. de Moura. Symbolic automata constraint solving. In C. Fermüller and A. Voronkov, editors, LPAR-17, volume 6397 of LNCS/ARCoSS, pages 640--654. Springer, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. M. Veanes, P. de Halleux, and N. Tillmann. Rex: Symbolic regular expression explorer. In ICST'10, pages 498--507. IEEE, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  44. M. Veanes, P. Hooimeijer, B. Livshits, D. Molnar, and N. Bjørner. Symbolic finite state transducers: Algorithms and applications. In POPL'12, pages 137--150, 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. B. W. Watson. A taxonomy of finite automata minimization algorithms. Computing Science Report 93/44, Eindhoven University of Technology, January 1995.Google ScholarGoogle Scholar
  46. B. W. Watson. Implementing and using finite automata toolkits. In Extended finite state models of language, pages 19--36, New York, NY, USA, 1999. Cambridge University Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. B. W.Watson and J. Daciuk. An efficient incremental DFA minimization algorithm. Nat. Lang. Eng., 9(1):49--64, Mar. 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Minimization of symbolic automata

                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
                • Published in

                  cover image ACM Conferences
                  POPL '14: Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
                  January 2014
                  702 pages
                  ISBN:9781450325448
                  DOI:10.1145/2535838

                  Copyright © 2014 ACM

                  Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                  Publisher

                  Association for Computing Machinery

                  New York, NY, United States

                  Publication History

                  • Published: 8 January 2014

                  Permissions

                  Request permissions about this article.

                  Request Permissions

                  Check for updates

                  Qualifiers

                  • research-article

                  Acceptance Rates

                  POPL '14 Paper Acceptance Rate51of220submissions,23%Overall Acceptance Rate824of4,130submissions,20%

                  Upcoming Conference

                  POPL '25

                PDF Format

                View or Download as a PDF file.

                PDF

                eReader

                View online with eReader.

                eReader