English

Towards practical FPRAS for #NFA: Exploiting the Power of Dependence

Data Structures and Algorithms 2025-07-01 v1

Abstract

#NFA refers to the problem of counting the words of length nn accepted by a non-deterministic finite automaton. #NFA is #P-hard, and although fully-polynomial-time randomized approximation schemes (FPRAS) exist, they are all impractical. The first FPRAS for #NFA had a running time of O~(n17m17ε14log(δ1))\tilde{O}(n^{17}m^{17}\varepsilon^{-14}\log(\delta^{-1})), where mm is the number of states in the automaton, δ(0,1]\delta \in (0,1] is the confidence parameter, and ε>0\varepsilon > 0 is the tolerance parameter (typically smaller than 11). The current best FPRAS achieved a significant improvement in the time complexity relative to the first FPRAS and obtained FPRAS with time complexity O~((n10m2+n6m3)ε4log2(δ1))\tilde{O}((n^{10}m^2 + n^6m^3)\varepsilon^{-4}\log^2(\delta^{-1})). The complexity of the improved FPRAS is still too intimidating to attempt any practical implementation. In this paper, we pursue the quest for practical FPRAS for #NFA by presenting a new algorithm with a time complexity of O(n2m3log(nm)ε2log(δ1))O(n^2m^3\log(nm)\varepsilon^{-2}\log(\delta^{-1})). Observe that evaluating whether a word of length nn is accepted by an NFA has a time complexity of O(nm2)O(nm^2). Therefore, our proposed FPRAS achieves sub-quadratic complexity with respect to membership checks.

Keywords

Cite

@article{arxiv.2506.23561,
  title  = {Towards practical FPRAS for #NFA: Exploiting the Power of Dependence},
  author = {Kuldeep S. Meel and Alexis de Colnet},
  journal= {arXiv preprint arXiv:2506.23561},
  year   = {2025}
}

Comments

23 Pages, full version of paper accepted at PODS 2025