๐ฎ
๐ฎ
The Ethereal
Enumerating Regular Languages with Bounded Delay
September 29, 2022 ยท The Ethereal ยท ๐ Symposium on Theoretical Aspects of Computer Science
"No code URL or promise found in abstract"
Evidence collected by the PWNC Scanner
Authors
Antoine Amarilli, Mikaรซl Monet
arXiv ID
2209.14878
Category
cs.FL: Formal Languages
Cross-listed
cs.DS
Citations
7
Venue
Symposium on Theoretical Aspects of Computer Science
Last Checked
1 month ago
Abstract
We study the task, for a given language $L$, of enumerating the (generally infinite) sequence of its words, without repetitions, while bounding the delay between two consecutive words. To allow for delay bounds that do not depend on the current word length, we assume a model where we produce each word by editing the preceding word with a small edit script, rather than writing out the word from scratch. In particular, this witnesses that the language is orderable, i.e., we can write its words as an infinite sequence such that the Levenshtein edit distance between any two consecutive words is bounded by a value that depends only on the language. For instance, $(a+b)^*$ is orderable (with a variant of the Gray code), but $a^* + b^*$ is not. We characterize which regular languages are enumerable in this sense, and show that this can be decided in PTIME in an input deterministic finite automaton (DFA) for the language. In fact, we show that, given a DFA $A$, we can compute in PTIME automata $A_1, \ldots, A_t$ such that $L(A)$ is partitioned as $L(A_1) \sqcup \ldots \sqcup L(A_t)$ and every $L(A_i)$ is orderable in this sense. Further, we show that the value of $t$ obtained is optimal, i.e., we cannot partition $L(A)$ into less than $t$ orderable languages. In the case where $L(A)$ is orderable (i.e., $t=1$), we show that the ordering can be produced by a bounded-delay algorithm: specifically, the algorithm runs in a suitable pointer machine model, and produces a sequence of bounded-length edit scripts to visit the words of $L(A)$ without repetitions, with bounded delay -- exponential in $|A|$ -- between each script. In fact, we show that we can achieve this while only allowing the edit operations push and pop at the beginning and end of the word, which implies that the word can in fact be maintained in a double-ended queue.
Community Contributions
Found the code? Know the venue? Think something is wrong? Let us know!
๐ Similar Papers
In the same crypt โ Formal Languages
๐ฎ
๐ฎ
The Ethereal
Supervisor Synthesis to Thwart Cyber Attack with Bounded Sensor Reading Alterations
๐ฎ
๐ฎ
The Ethereal
An Abstraction-Based Framework for Neural Network Verification
๐ฎ
๐ฎ
The Ethereal
Recurrent Neural Networks as Weighted Language Recognizers
๐ฎ
๐ฎ
The Ethereal
TeSSLa: Temporal Stream-based Specification Language
๐ฎ
๐ฎ
The Ethereal