The notion of edit distance arises in very different fields such as self-correcting codes, parsing theory, speech recognition, and molecular biology. The edit distance between an input string and a language L is the minimum cost of a sequence of edit operations (substitution of a symbol in another incorrect symbol, insertion of an extraneous symbol, deletion of a symbol) needed to change the input string into a sentence of L. In this paper we study the complexity of computing the edit distance, discovering sharp boundaries between classes of languages for which this function can be efficiently evaluated and classes of languages for which it seems to be difficult to compute. Our main result is a parallel algorithm for computing the edit distance for the class of languages accepted by one-way nondeterministic auxiliary pushdown automata working in polynomial time, a class that strictly contains context–free languages. Moreover, we show that this algorithm can be extended in order to find a sentence of the language from which the input string has minimum distance.
|Titolo:||How Hard Is Computing the Edit Distance?|
|Autori interni:||PIGHIZZINI, GIOVANNI (Primo)|
|Parole Chiave:||Computational complexity; Dynamic programming; Edit distance; Error correction; Formal languages; String correction|
|Settore Scientifico Disciplinare:||Settore INF/01 - Informatica|
|Data di pubblicazione:||2001|
|Digital Object Identifier (DOI):||10.1006/inco.2000.2914|
|Appare nelle tipologie:||01 - Articolo su periodico|