Abstract

Obtaining a minimal automaton is a fundamental issue in the theory and practical implementation of deterministic finite automatons (DFAs). A minimization algorithm is presented in this paper that consists of two main phases. In the first phase, the backward depth information is built, and the state set of the DFA is partitioned into many blocks. In the second phase, the state set is refined using a hash table. The minimization algorithm has a lower time complexity O(n) than a naive comparison of transitions O(n2). Few states need to be refined by the hash table, because most states have been partitioned by the backward depth information in the coarse partition. This method achieves greater generality than previous methods because building the backward depth information is independent of the topological complexity of the DFA. The proposed algorithm can be applied not only to the minimization of acyclic automata or simple cyclic automata, but also to automata with high topological complexity. Overall, the proposal has three advantages: lower time complexity, greater generality, and scalability. A comparison to Hopcroft’s algorithm demonstrates experimentally that the algorithm runs faster than traditional algorithms.

Highlights

  • Finite automata, regular grammar, and regular expressions are three dissimilar representations for regular languages

  • An nondeterministic finite automatons (NFAs) was produced starting from regular expressions using the Thompson method [10], and a deterministic finite automatons (DFAs) was generated by subset construction [12]

  • This is for three main reasons: the mechanism of coarse partitioning according to backward depth information, the highly efficient comparison of transition information using a hash table, and few hash collisions

Read more

Summary

Introduction

Regular grammar, and regular expressions are three dissimilar representations for regular languages. The backward depth information is built, and the state set of the DFA is partitioned into many blocks. We present the detailed steps for obtaining a minimal DFA: building backward depth information, hash table refinement with hash collision checking.

Results
Conclusion

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.