🤖 AI Summary
This work addresses the problem of efficiently determinizing a Wheeler nondeterministic finite automaton (WNFA) into an equivalent Wheeler deterministic finite automaton (WDFA). Assuming the Wheeler order of the input WNFA is given, the paper presents the first linear-time determinization algorithm—under a constant-size alphabet—with time complexity $O(n_A + m_A + n_D + m_D)$, achieving a speedup of $n_A^2 / \sigma$ over existing methods. The algorithm exploits the structural properties of the Wheeler order through a combination of graph traversal and state-merging strategies to eliminate redundant computations. Furthermore, the authors construct a worst-case instance whose output size is $\Theta(n\sigma)$, demonstrating that the proposed time bound is tight for inputs presented in sorted order.
📝 Abstract
Given a Wheeler NFA $\mathcal{A}$, the Wheeler determinization problem is to construct a Wheeler DFA $\mathcal{D}$ that accepts the same language as $\mathcal{A}$. We use the notation $n_{\mathcal{A}},m_{\mathcal{A}}$ for the number of vertices and edges of $\mathcal{A}$, and equivalently $n_{\mathcal{D}},m_{\mathcal{D}}$ for $\mathcal{D}$. Alanko et al. [SODA 2020, Inf. Comp. 2021] show that we can solve this problem in $O(n_{\mathcal{A}}^3)$ time. In this paper, we show how to improve the running time to $O(n_{\mathcal{A}} + m_{\mathcal{A}} + n_{\mathcal{D}} + m_{\mathcal{D}})$ when given the Wheeler order of $\mathcal{A}$ (which can be computed in $O(m_{\mathcal{A}}\log n_{\mathcal{A}})$ with an algorithm by Becker et al. [ESA 2023]).
Our running time is a factor $n_{\mathcal{A}}^2/σ$ faster than the state of the art, where $σ$ is the size of the alphabet. Furthermore, for $σ=O(1)$ we have the first linear time algorithm for this problem. We show that our bound is tight for sorted inputs with any combination of $n$ and $σ$, by giving a family of inputs for which our output $\mathcal{D}$ is minimum, and of maximum size $Θ(nσ)$.