Correcting Counter-Automaton-Recognizable Languages
Correction of a string $x$ into a language $L$ is the problem of finding a string $y \in L$ to which $x$ can be edited at least cost. The edit operations considered here are single-character deletions, single-character insertions, and single-character substitutions, each at an independent cost that...
Gespeichert in:
Veröffentlicht in: | SIAM journal on computing 1978-08, Vol.7 (3), p.357-375 |
---|---|
Hauptverfasser: | , |
Format: | Artikel |
Sprache: | eng |
Schlagworte: | |
Online-Zugang: | Volltext |
Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
Zusammenfassung: | Correction of a string $x$ into a language $L$ is the problem of finding a string $y \in L$ to which $x$ can be edited at least cost. The edit operations considered here are single-character deletions, single-character insertions, and single-character substitutions, each at an independent cost that does not depend on context. Employing a linear-time algorithm for solving single-origin graph shortest distance problems, it is shown how to correct a string of length $n$ into the language accepted by a counter automaton in time proportional to $n^2 $ on a RAM with unit operation cost function. The algorithm is uniform over counter automata and edit cost functions; and it is shown how the correction time depends on the size of the automaton, the nature of the cost function, and the correction cost itself. For less general cases, potentially faster algorithms are described, including a linear-time algorithm for the case that very little correction is necessary and that the automaton's counter activity is determined by the input alone. Specializing the main result to counter automata which do not use their counters gives general linear-time correction into regular languages. |
---|---|
ISSN: | 0097-5397 1095-7111 |
DOI: | 10.1137/0207029 |