Aggregation-based minimization of finite state automata

We present a minimization algorithm for non-deterministic finite state automata that finds and merges bisimulation-equivalent states. The bisimulation relation is computed through partition aggregation, in contrast to existing algorithms that use partition refinement. The algorithm simultaneously generalises and simplifies an earlier one by Watson and Daciuk for deterministic devices. We show the algorithm to be correct and run in time $$ O \left( n^2 r^2 \left| \varSigma \right| \right) $$ O n 2 r 2 Σ , where n is the number of states of the input automaton $$M$$ M , r is the maximal out-degree in the transition graph for any combination of state and input symbol, and $$\left| \varSigma \right| $$ Σ is the size of the input alphabet. The algorithm has a higher time complexity than derivatives of Hopcroft’s partition-refinement algorithm, but represents a promising new solution approach that preserves language equivalence throughout the computation process. Furthermore, since the algorithm essentially computes the maximal model of a logical formula derived from  $$M$$ M , optimisation techniques from the field of model checking become applicable.

[1]  A. Nerode,et al.  Linear automaton transformations , 1958 .

[2]  Parosh Aziz Abdulla,et al.  A Uniform (Bi-)Simulation-Based Framework for Reducing Tree Automata , 2009, Electron. Notes Theor. Comput. Sci..

[3]  Albert R. Meyer,et al.  The Equivalence Problem for Regular Expressions with Squaring Requires Exponential Space , 1972, SWAT.

[4]  Heiko Vogler,et al.  Bisimulation Minimisation of Weighted Automata on Unranked Trees , 2009, Fundam. Informaticae.

[5]  Andreas Maletti Minimizing Weighted Tree Grammars Using Simulation , 2009, FSMNLP.

[6]  Robert E. Tarjan,et al.  Three Partition Refinement Algorithms , 1987, SIAM J. Comput..

[7]  Jan Daciuk Optimization of Automata , 2014 .

[8]  Theodore M. Booth Demonstrating hazards in sequential relay circuits , 1963, SWCT.

[9]  Julien David,et al.  Average complexity of Moore's and Hopcroft's algorithms , 2012, Theor. Comput. Sci..

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

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

[12]  Peter Buchholz,et al.  Bisimulation relations for weighted automata , 2008, Theor. Comput. Sci..

[13]  Andreas Maletti,et al.  Backward and forward bisimulation minimization of tree automata , 2009, Theor. Comput. Sci..

[14]  Lgwa Loek Cleophas,et al.  Minimization of finite state automata through partition aggregation , 2016, LACL 2016.

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

[16]  Derrick G. Kourie,et al.  On Minimizing Deterministic Tree Automata , 2009, Stringology.

[17]  Nelma Moreira,et al.  Incremental DFA minimisation , 2010, RAIRO Theor. Informatics Appl..

[18]  Jeffrey D. Ullman,et al.  Set Merging Algorithms , 1973, SIAM J. Comput..

[19]  ten Hmm Huub Eikelder Some algorithms to decide the equivalence of recursive types , 1991 .

[20]  Bruce W. Watson,et al.  An efficient incremental DFA minimization algorithm , 2003, Natural Language Engineering.

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

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

[23]  Robert E. Tarjan,et al.  Efficiency of a Good But Not Linear Set Union Algorithm , 1972, JACM.