Simple DFA Construction Algorithm Using Divide-and-Conquer Approach

In real-world applications like network software design, pattern recognition, compiler construction moreover in some of the applications of formal and natural language like accepter, spell checker and advisor, language dictionary, the Deterministic Finite Automata (DFA) plays an important role. For such applications, specification rules to construct DFA are more complex in nature. More generally, the rules consist of the intricate words like ‘and’, ‘or’, ‘not having’, ‘followed by’. Constructing DFA for such rules is time-consuming and tedious process. To make the construction process easier, simple DFA construction algorithm is proposed. The proposed algorithm is based on divide-and-conquer (D&C) algorithm design strategy. To apply D&C, the first step is to divide given language specification rule into a number of manageable pieces of sub-language specification rules, second construct DFA for each sub-language by any efficient method and at last, combine the DFA using closure properties of the regular set to obtain resultant DFA. To verify the correctness of the proposed algorithm, the obtained resultant DFA is compared with DFA constructed by a conventional method.

[1]  M. Tomita Learning of construction of finite automata from examples using hill-climbing : RR: Regular set Recognizer , 1982 .

[2]  Rajesh Parekh,et al.  Learning DFA from Simple Examples , 1997, ALT.

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

[4]  Dana Fisman,et al.  Embedding finite automata within regular expressions , 2008, Theor. Comput. Sci..

[5]  Dana S. Scott,et al.  Finite Automata and Their Decision Problems , 1959, IBM J. Res. Dev..

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

[7]  Eugene W. Myers,et al.  A Four Russians algorithm for regular expression pattern matching , 1992, JACM.

[8]  Simon M. Lucas,et al.  Learning deterministic finite automata with a smart state labeling evolutionary algorithm , 2005, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[9]  Noam Chomsky,et al.  On Certain Formal Properties of Grammars , 1959, Inf. Control..

[10]  Ellis Horowitz,et al.  Fundamentals of Computer Algorithms , 1978 .

[11]  Richard Edwin Stearns,et al.  Regularity Preserving Modifications of Regular Expressions , 1963, Inf. Control..

[12]  C. Lee Giles,et al.  Constructing deterministic finite-state automata in recurrent neural networks , 1996, JACM.

[13]  Gérard Berry,et al.  From Regular Expressions to Deterministic Automata , 1986, Theor. Comput. Sci..

[14]  Ajay Kumar,et al.  Closure Properties of Prefix-free Regular Languages , 2012 .

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