Linear-time Minimization of Wheeler DFAs
Abstract
Wheeler DFAs (WDFAs) are a sub-class of finite-state automata which is playing an important role in the emerging field of compressed data structures: as opposed to general automata, WDFAs can be stored in just bits per edge, being the alphabet's size, and support optimal-time pattern matching queries on the substring closure of the language they recognize. An important step to achieve further compression is minimization. When the input is a general deterministic finite-state automaton (DFA), the state-of-the-art is represented by the classic Hopcroft's algorithm, which runs in time. This algorithm stands at the core of the only existing minimization algorithm for Wheeler DFAs, which inherits its complexity. In this work, we show that the minimum WDFA equivalent to a given input WDFA can be computed in linear time. When run on de Bruijn WDFAs built from real DNA datasets, an implementation of our algorithm reduces the number of nodes from 14% to 51% at a speed of more than 1 million nodes per second.
Keywords
Cite
@article{arxiv.2111.02480,
title = {Linear-time Minimization of Wheeler DFAs},
author = {Jarno Alanko and Nicola Cotumaccio and Nicola Prezza},
journal= {arXiv preprint arXiv:2111.02480},
year = {2021}
}