On the Hopcroft's minimization algorithm
Andrei Paun

TL;DR
This paper proves that de Bruijn words are the worst-case input for Hopcroft's minimization algorithm on unary languages, refining previous results and analyzing implementation differences and extensions to cover automata.
Contribution
It establishes de Bruijn words as the absolute worst case for Hopcroft's algorithm on unary languages and examines implementation effects and extensions to cover automata.
Findings
De Bruijn words are the worst-case inputs for unary language minimization.
FIFO implementation of Hopcroft's algorithm reaches the worst-case complexity.
LIFO implementation does not achieve the same worst-case complexity.
Abstract
We show that the absolute worst case time complexity for Hopcroft's minimization algorithm applied to unary languages is reached only for de Bruijn words. A previous paper by Berstel and Carton gave the example of de Bruijn words as a language that requires O(n log n) steps by carefully choosing the splitting sets and processing these sets in a FIFO mode. We refine the previous result by showing that the Berstel/Carton example is actually the absolute worst case time complexity in the case of unary languages. We also show that a LIFO implementation will not achieve the same worst time complexity for the case of unary languages. Lastly, we show that the same result is valid also for the cover automata and a modification of the Hopcroft's algorithm, modification used in minimization of cover automata.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
Topicssemigroups and automata theory · Natural Language Processing Techniques · Logic, programming, and type systems
