Skip to main content

Simple DFA Construction Algorithm Using Divide-and-Conquer Approach

  • Conference paper
  • First Online:
Data Analytics and Learning

Part of the book series: Lecture Notes in Networks and Systems ((LNNS,volume 43))

Abstract

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Martin, J.C.: Introduction to Languages and the Theory of Computation, vol. 4. McGraw-Hill NY, USA (1991)

    Google Scholar 

  2. Rabin, M.O., Scott, D.: Finite automata and their decision problems. IBM J. Res. Dev. 3(2), 114–125 (1959)

    Article  MathSciNet  Google Scholar 

  3. Hopcroft, J.E.: Introduction to Automata Theory, Languages, and Computation. Pearson Education India (2008)

    Google Scholar 

  4. Chomsky, N.: On certain formal properties of grammars. Inf. Control 2(2), 137–167 (1959)

    Article  MathSciNet  Google Scholar 

  5. Myers, G.: A four Russians algorithm for regular expression pattern matching. J. ACM (JACM) 39(2), 432–448 (1992)

    Article  MathSciNet  Google Scholar 

  6. Lochan, M., Garhwal, S., Kumar, A.: Closure properties of prefix-free regular languages. Int. J. Comput. Appl. 52(8) (2012)

    Article  Google Scholar 

  7. Stearns, R.E., Hartmanis, J.: Regularity preserving modifications of regular expressions. Inf. Control 6(1), 55–69 (1963)

    Article  MathSciNet  Google Scholar 

  8. Ben-David, S., Fisman, D., Ruah, S.: Embedding finite automata within regular expressions. Theor. Comput. Sci. 404(3), 202–218 (2008)

    Article  MathSciNet  Google Scholar 

  9. Berry, G., Sethi, R.: From regular expressions to deterministic automata. Theor. Comput. Sci. 48, 117–126 (1986)

    Article  MathSciNet  Google Scholar 

  10. Daciuk, J., Mihov, S., Watson, B.W., Watson, R.E.: Incremental construction of minimal acyclic finite-state automata. Comput. Linguist. 26(1), 3–16 (2000)

    Article  MathSciNet  Google Scholar 

  11. Omlin, C.W., Giles, C.L.: Constructing deterministic finite-state automata in recurrent neural networks. J. ACM (JACM) 43(6), 937–972 (1996)

    Article  MathSciNet  Google Scholar 

  12. Parekh, R., Honavar, V.: Learning DFA from simple examples. In: International Workshop on Algorithmic Learning Theory, pp. 116–131. Springer (1997)

    Google Scholar 

  13. Tomita, M.: Learning of construction of finite automata from examples using hill-climbing: RR: Regular Set Recognizer (1982)

    Google Scholar 

  14. Lucas, S.M., Reynolds, T.J.: Learning deterministic finite automata with a smart state labeling evolutionary algorithm. IEEE Trans. Pattern Anal. Mach. Intell. 27(7), 1063–1074 (2005)

    Article  Google Scholar 

  15. Kumar KS, M.D.: A novel method to construct deterministic finite automata from a given regular grammar. Int. J. Sci. Eng. Res. 6(3), 106–111 (2015)

    Google Scholar 

  16. Horowitz, E., Sahni, S.: Fundamentals of Computer Algorithms. Google Scholar (1978)

    Google Scholar 

  17. Nerode, A.: Linear automaton transformations. Proc. Am. Math. Soc. 9(4), 541–544 (1958)

    Article  MathSciNet  Google Scholar 

  18. Högberg, J., Larsson, L.: DFA minimisation using the Myhill-Nerode theorem. a a 1(q2) q3

    Google Scholar 

Download references

Acknowledgements

The first author thanks the Ministry of Electronics and Information Technology (MeitY), New Delhi for granting Visvesvaraya Ph.D. fellowship through file no. PhD-MLA\(\backslash \)4(34)\(\backslash \)201-1 Dated: 05/11/2015.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Darshan D. Ruikar .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2019 Springer Nature Singapore Pte Ltd.

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Ruikar, D.D., Hegadi, R.S. (2019). Simple DFA Construction Algorithm Using Divide-and-Conquer Approach. In: Nagabhushan, P., Guru, D., Shekar, B., Kumar, Y. (eds) Data Analytics and Learning. Lecture Notes in Networks and Systems, vol 43. Springer, Singapore. https://doi.org/10.1007/978-981-13-2514-4_21

Download citation

Publish with us

Policies and ethics