Optimal Wheeler Language Recognition
Ruben Becker, Davide Cenzato, Sung-Hwan Kim, Bojana Kodric, and Alberto Policriti, Nicola Prezza

TL;DR
This paper presents a new, more efficient algorithm for deciding whether a regular language is Wheeler, significantly improving previous methods and establishing tight bounds under the strong exponential time hypothesis.
Contribution
It introduces an $O(mn)$ time algorithm for Wheeler language recognition from DFA, improving over prior polynomial-time algorithms, and provides a matching lower bound under SETH.
Findings
Decidable in $O(mn)$ time for DFA recognition of Wheeler languages.
Previous algorithm had a running time of $O(n^{13} + m ext{log} n)$.
The problem cannot be solved in strongly subquadratic time unless SETH fails.
Abstract
A Wheeler automaton is a finite state automaton whose states admit a total Wheeler order, reflecting the co-lexicographic order of the strings labeling source-to-node paths. A Wheeler language is a regular language admitting an accepting Wheeler automaton. Wheeler languages admit efficient and elegant solutions to hard problems such as automata compression and regular expression matching, therefore deciding whether a regular language is Wheeler is relevant in applications requiring efficient solutions to those problems. In this paper, we show that it is possible to decide whether a DFA with n states and m transitions recognizes a Wheeler language in time. This is a significant improvement over the running time of the previous polynomial-time algorithm (Alanko et al., Information and Computation 2021). A proof-of-concept implementation of this algorithm is…
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
Topicssemigroups and automata theory · Algorithms and Data Compression · Network Packet Processing and Optimization
