Table of Contents
Fetching ...

Deterministic Suffix-reading Automata

R Keerthan, B Srivathsan, R Venkatesh, Sagar Verma

TL;DR

It is proved that given a DFA and a number k, the problem of deciding if there exists an equivalent DSA of total-size at most k is NP-complete.

Abstract

We introduce deterministic suffix-reading automata (DSA), a new automaton model over finite words. Transitions in a DSA are labeled with words. From a state, a DSA triggers an outgoing transition on seeing a word ending with the transition's label. Therefore, rather than moving along an input word letter by letter, a DSA can jump along blocks of letters, with each block ending in a suitable suffix. This feature allows DSAs to recognize regular languages more concisely, compared to DFAs. In this work, we focus on questions around finding a "minimal" DSA for a regular language. The number of states is not a faithful measure of the size of a DSA, since the transition-labels contain strings of arbitrary length. Hence, we consider total-size (number of states + number of edges + total length of transition-labels) as the size measure of DSAs. We start by formally defining the model and providing a DSA-to-DFA conversion that allows to compare the expressiveness and succinctness of DSA with related automata models. Our main technical contribution is a method to derive DSAs from a given DFA: a DFA-to-DSA conversion. We make a surprising observation that the smallest DSA derived from the canonical DFA of a regular language L need not be a minimal DSA for L. This observation leads to a fundamental bottleneck in deriving a minimal DSA for a regular language. In fact, we prove that given a DFA and a number k, the problem of deciding if there exists an equivalent DSA of total-size at most k is NP-complete.

Deterministic Suffix-reading Automata

TL;DR

It is proved that given a DFA and a number k, the problem of deciding if there exists an equivalent DSA of total-size at most k is NP-complete.

Abstract

We introduce deterministic suffix-reading automata (DSA), a new automaton model over finite words. Transitions in a DSA are labeled with words. From a state, a DSA triggers an outgoing transition on seeing a word ending with the transition's label. Therefore, rather than moving along an input word letter by letter, a DSA can jump along blocks of letters, with each block ending in a suitable suffix. This feature allows DSAs to recognize regular languages more concisely, compared to DFAs. In this work, we focus on questions around finding a "minimal" DSA for a regular language. The number of states is not a faithful measure of the size of a DSA, since the transition-labels contain strings of arbitrary length. Hence, we consider total-size (number of states + number of edges + total length of transition-labels) as the size measure of DSAs. We start by formally defining the model and providing a DSA-to-DFA conversion that allows to compare the expressiveness and succinctness of DSA with related automata models. Our main technical contribution is a method to derive DSAs from a given DFA: a DFA-to-DSA conversion. We make a surprising observation that the smallest DSA derived from the canonical DFA of a regular language L need not be a minimal DSA for L. This observation leads to a fundamental bottleneck in deriving a minimal DSA for a regular language. In fact, we prove that given a DFA and a number k, the problem of deciding if there exists an equivalent DSA of total-size at most k is NP-complete.

Paper Structure

This paper contains 10 sections, 11 theorems, 15 figures.

Key Result

Lemma 1

For every DSA $\mathcal{A}$, the language $\mathcal{L}(\mathcal{A})$ equals the language $\mathcal{L}(M_\mathcal{A})$ of its tracking DFA.

Figures (15)

  • Figure 1: DSA for out-of-context else
  • Figure 2: Examples of DFAs and corresponding DGAs, over alphabet $\{a, b\}$.
  • Figure 3: DSA $\mathcal{A}_2$ accepts $L_2 = \Sigma^*aab$, with $\Sigma = \{a, b\}$.
  • Figure 4: $\mathcal{A}_3$ accepts $L_3=\Sigma^* ab \Sigma^*bb$ and $\mathcal{A}_4$ accepts $L_4=(b^*ba)^*a^*ab$.
  • Figure 5: A DSA on the left, and the corresponding DFA for matching the strings $abaa$ and $baaa$.
  • ...and 10 more figures

Theorems & Definitions (26)

  • Definition 1: DSA
  • Definition 2
  • Definition 3
  • Definition 4: Tracking DFA for a DSA.
  • Lemma 1
  • Lemma 2
  • Theorem 1
  • Definition 5: Simple words
  • Definition 6: Induced DSA
  • Definition 7: Suffix-compatible transitions
  • ...and 16 more