Abstract
We consider the following model for sampling pairs of strings: s₁ is a uniformly random bitstring of length n, and s₂ is the bitstring arrived at by applying substitutions, insertions, and deletions to each bit of s₁ with some probability. We show that the edit distance between s₁ and s₂ can be computed in O(n ln n) time with high probability, as long as each bit of s₁ has a mutation applied to it with probability at most a small constant. The algorithm is simple and only uses the textbook dynamic programming algorithm as a primitive, first computing an approximate alignment between the two strings, and then running the dynamic programming algorithm restricted to entries close to the approximate alignment. The analysis of our algorithm provides theoretical justification for alignment heuristics used in practice such as BLAST, FASTA, and MAFFT, which also start by computing approximate alignments quickly and then find the best alignment near the approximate alignment. Our main technical contribution is a partitioning of alignments such that the number of the subsets in the partition is not too large and every alignment in one subset is worse than an alignment considered by our algorithm with high probability. Similar techniques may be of interest in the averagecase analysis of other problems commonly solved via dynamic programming.
BibTeX  Entry
@InProceedings{ganesh_et_al:LIPIcs:2020:12806,
author = {Arun Ganesh and Aaron Sy},
title = {{NearLinear Time Edit Distance for Indel Channels}},
booktitle = {20th International Workshop on Algorithms in Bioinformatics (WABI 2020)},
pages = {17:117:18},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {9783959771610},
ISSN = {18688969},
year = {2020},
volume = {172},
editor = {Carl Kingsford and Nadia Pisanti},
publisher = {Schloss DagstuhlLeibnizZentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/opus/volltexte/2020/12806},
URN = {urn:nbn:de:0030drops128061},
doi = {10.4230/LIPIcs.WABI.2020.17},
annote = {Keywords: edit distance, averagecase analysis, dynamic programming, sequence alignment}
}
Keywords: 

edit distance, averagecase analysis, dynamic programming, sequence alignment 
Collection: 

20th International Workshop on Algorithms in Bioinformatics (WABI 2020) 
Issue Date: 

2020 
Date of publication: 

25.08.2020 