Minimization of Automata

This chapter is concerned with the design and analysis of algorithms for minimizing finite automata. Getting a minimal automaton is a fundamental issue in the use and implementation of finite automata tools in frameworks like text processing, image analysis, linguistic computer science, and many other applications. There are two main families of minimization algorithms. The first by a sequence of refinements of a partition of the set of states, the second by a sequence of fusions or merges of states. Hopcroft's and Moore's algorithms belong to the first family, the linear-time minimization of acyclic automata of Revuz belongs to the second family. One of our studies is upon the comparison of the nature of Moore's and Hopcroft's algorithms. This gives some new insight in both algorithms. As we shall see, these algorithms are quite different both in behavior and in complexity. In particular, we show that it is not possible to simulate the computations of one of the algorithm by the other. We describe the minimization algorithm by fusion for so-called local automata. A special case of minimization is the construction o minimal automata for finite sets. We consider briefly this case, and in particular describe incremental algorithms. Finally, we consider the case of updating a minimal automaton when a word is added or removed from the set it recognizes.

[1]  Julien David,et al.  The Average Complexity of Moore's State Minimization Algorithm Is O(n log log n) , 2010, MFCS.

[2]  M. W. Shields An Introduction to Automata Theory , 1988 .

[3]  Nikos Fakotakis,et al.  Optimal insertion in deterministic DAWGs , 2003, Theor. Comput. Sci..

[4]  Jeffrey D. Ullman,et al.  Introduction to Automata Theory, Languages and Computation , 1979 .

[5]  Henrik Björklund,et al.  The tractability frontier for NFA minimization , 2008, J. Comput. Syst. Sci..

[6]  Maxime Crochemore,et al.  Transducers and Repetitions , 1986, Theor. Comput. Sci..

[7]  Maxime Crochemore,et al.  Algorithms on strings , 2007 .

[8]  Bruce W. Watson,et al.  Incremental construction of minimal acyclic finite state automata , 2000, CL.

[9]  Georg Schnitger,et al.  Minimizing nfa's and regular expressions , 2007, J. Comput. Syst. Sci..

[10]  Kevin Barraclough,et al.  I and i , 2001, BMJ : British Medical Journal.

[11]  Antonio Restivo,et al.  Hopcroft's Algorithm and Cyclic Automata , 2008, LATA.

[12]  Andreas Malcher,et al.  Minimizing finite automata is computationally hard , 2004, Theor. Comput. Sci..

[13]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[14]  Mikel L. Forcada,et al.  Incremental Construction and Maintenance of Minimal Finite-State Automata , 2002, CL.

[15]  J. Brzozowski Canonical regular expressions and minimal state graphs for definite events , 1962 .

[16]  John E. Hopcroft,et al.  An n log n algorithm for minimizing states in a finite automaton , 1971 .

[17]  A. Restivo,et al.  Circular words and automata minimization , 2007 .

[18]  Maxime Crochemore,et al.  Minimizing local automata , 2007, 2007 IEEE International Symposium on Information Theory.

[19]  Norbert Blum,et al.  An O(n log n) Implementation of the Standard Method for Minimizing n-State Finite Automata , 1996, Inf. Process. Lett..

[20]  Jan Daciuk Comparison of construction algorithms for minimal, acyclic, deterministic, finite-state automata from sets of strings , 2002, CIAA'02.

[21]  Georg Schnitger,et al.  Minimizing NFA's and Regular Expressions , 2005, STACS.

[22]  Christophe Hancart On Simon's String Searching Algorithm , 1993, Inf. Process. Lett..

[23]  Olivier Carton,et al.  Sturmian Trees , 2009, Theory of Computing Systems.

[24]  Edward F. Moore,et al.  Gedanken-Experiments on Sequential Machines , 1956 .

[25]  Jean-Eric Pin,et al.  Infinite words - automata, semigroups, logic and games , 2004, Pure and applied mathematics series.

[26]  Frédérique Bassino,et al.  Building the Minimal Automaton of A*X in Linear Time, When X Is of Bounded Cardinality , 2010, CPM.

[27]  Cyril Nicaud,et al.  Average Case Analysis of Moore’s State Minimization Algorithm , 2011, Algorithmica.

[28]  Galina Jirásková,et al.  Magic Numbers and Ternary Alphabet , 2009, Int. J. Found. Comput. Sci..

[29]  Tao Jiang,et al.  Minimal NFA Problems are Hard , 1991, SIAM J. Comput..

[30]  Julien David Génération aléatoire d'automates et analyse d'algorithmes de minimisation. (Random generation of automata and analysis of their state minimization algorithms) , 2010 .

[31]  Tsunehiko Kameda,et al.  On the State Minimization of Nondeterministic Finite Automata , 1970, IEEE Transactions on Computers.

[32]  Olivier Carton,et al.  Continuant polynomials and worst-case behavior of Hopcroft's minimization algorithm , 2009, Theor. Comput. Sci..

[33]  Dominique Revuz,et al.  Minimisation of Acyclic Deterministic Automata in Linear Time , 1992, Theor. Comput. Sci..

[34]  Philippe Chrétienne,et al.  Eléments d'algorithmique , 1992 .

[35]  S. L. Krivoi Algorithms for minimization of finite acyclic automata and pattern matching in terms , 1991 .

[36]  Timo Knuutila,et al.  Re-describing an algorithm by Hopcroft , 2001, Theor. Comput. Sci..

[37]  David Gries,et al.  Describing an algorithm by Hopcroft , 1973, Acta Informatica.

[38]  Bruce W. Watson A new algorithm for the construction of minimal acyclic DFAs , 2003, Sci. Comput. Program..

[39]  Andrei Paun,et al.  On the Hopcroft's minimization technique for DFA and DFCA , 2009, Theor. Comput. Sci..

[40]  Maurice Nivat,et al.  A note about minimal non-deterministic automata , 1992, Bull. EATCS.

[41]  Aurélien Lemay,et al.  Residual Finite State Automata , 2002, Fundam. Informaticae.

[42]  M. Lothaire,et al.  Applied Combinatorics on Words: Algorithms on Words , 2005 .

[43]  Jorge Almeida,et al.  Description and analysis of a bottom-up DFA minimization algorithm , 2008, Inf. Process. Lett..

[44]  Jan Daciuk Comments on Incremental Construction and Maintenance of Minimal Finite-State Automata, by Rafael C. Carrasco and Mikel L. Forcada , 2004, Computational Linguistics.

[45]  Frédérique Bassino,et al.  On the Average Complexity of Moore's State Minimization Algorithm , 2009, STACS.

[46]  Claire Pagetti,et al.  Around Hopcroft's Algorithm , 2006, CIAA.

[47]  Jacques Sakarovitch,et al.  The universal automaton , 2008, Logic and Automata.

[48]  Jacques Sakarovitch,et al.  Elements of Automata Theory , 2009 .

[49]  Jozef Jirásek,et al.  Deterministic Blow-Ups of Minimal Nondeterministic Finite Automata over a Fixed Alphabet , 2007, Developments in Language Theory.

[50]  Jozef Jirásek,et al.  Deterministic Blow-Ups of Minimal Nondeterministic Finite Automata over a Fixed Alphabet , 2008, Int. J. Found. Comput. Sci..

[51]  Antti Valmari,et al.  Efficient Minimization of DFAs with Partial Transition , 2008, STACS.

[52]  Maxime Crochemore,et al.  Minimizing incomplete automata , 2008, FSMNLP 2008.

[53]  David Haussler,et al.  The Smallest Automaton Recognizing the Subwords of a Text , 1985, Theor. Comput. Sci..

[54]  Olivier Carton,et al.  On the Complexity of Hopcroft's State Minimization Algorithm , 2004, CIAA.

[55]  Antonio Restivo,et al.  Circular sturmian words and Hopcroft's algorithm , 2009, Theor. Comput. Sci..