## Abstract

The edit-distance between two strings is the smallest number of operations required to transform one string into the other. The distance between languages L_{1} and L_{2} is the smallest edit-distance between string w_{i} ∈ L_{i}, i = 1, 2. We consider the problem of computing the edit-distance of a given regular language and a given context-free language. First, we present an algorithm that finds for the languages an optimal alignment, that is, a sequence of edit operations that transforms a string in one language to a string in the other. The length of the optimal alignment, in the worst case, is exponential in the size of the given grammar and finite automaton. Then, we investigate the problem of computing only the edit-distance of the languages without explicitly producing an optimal alignment. We design a polynomial time algorithm that calculates the edit-distance based on unary homomorphisms.

Original language | English |
---|---|

Pages (from-to) | 1067-1082 |

Number of pages | 16 |

Journal | International Journal of Foundations of Computer Science |

Volume | 24 |

Issue number | 7 |

DOIs | |

State | Published - Nov 2013 |

## Keywords

- Context-free languages
- Edit-distance
- Levenshtein distance
- Regular languages