English

Succinct Representation for (Non)Deterministic Finite Automata

Data Structures and Algorithms 2019-07-24 v1 Discrete Mathematics Formal Languages and Automata Theory

Abstract

Deterministic finite automata are one of the simplest and most practical models of computation studied in automata theory. Their conceptual extension is the non-deterministic finite automata which also have plenty of applications. In this article, we study these models through the lens of succinct data structures where our ultimate goal is to encode these mathematical objects using information-theoretically optimal number of bits along with supporting queries on them efficiently. Towards this goal, we first design a succinct data structure for representing any deterministic finite automaton D\mathcal{D} having nn states over a σ\sigma-letter alphabet Σ\Sigma using (σ1)nlogn+O(nlogσ)(\sigma-1) n\log n + O(n \log \sigma) bits of space, which can determine, given an input string xx over Σ\Sigma, whether D\mathcal{D} accepts xx in O(xlogσ)O(|x| \log \sigma) time, using constant words of working space. When the input deterministic finite automaton is acyclic, not only we can improve the above space-bound significantly to (σ1)(n1)logn+3n+O(log2σ)+o(n)(\sigma -1) (n-1)\log n+ 3n + O(\log^2 \sigma) + o(n) bits, we also obtain optimal query time for string acceptance checking. More specifically, using our succinct representation, we can check if a given input string xx can be accepted by the acyclic deterministic finite automaton using time proportional to the length of xx, hence, the optimal query time. We also exhibit a succinct data structure for representing a non-deterministic finite automaton N\mathcal{N} having nn states over a σ\sigma-letter alphabet Σ\Sigma using σn2+n\sigma n^2+n bits of space, such that given an input string xx, we can decide whether N\mathcal{N} accepts xx efficiently in O(n2x)O(n^2|x|) time. Finally, we also provide time and space-efficient algorithms for performing several standard operations such as union, intersection, and complement on the languages accepted by deterministic finite automata.

Keywords

Cite

@article{arxiv.1907.09271,
  title  = {Succinct Representation for (Non)Deterministic Finite Automata},
  author = {Sankardeep Chakraborty and Roberto Grossi and Kunihiko Sadakane and Srinivasa Rao Satti},
  journal= {arXiv preprint arXiv:1907.09271},
  year   = {2019}
}
R2 v1 2026-06-23T10:27:03.170Z