Efficient implied alignment

Alex J. Washburn, Ward C. Wheeler
2020 BMC Bioinformatics  
Given a binary tree [Formula: see text] of n leaves, each leaf labeled by a string of length at most k, and a binary string alignment function ⊗, an implied alignment can be generated to describe the alignment of a dynamic homology for [Formula: see text]. This is done by first decorating each node of [Formula: see text] with an alignment context using ⊗, in a post-order traversal, then, during a subsequent pre-order traversal, inferring on which edges insertion and deletion events occurred
more » ... g those internal node decorations. Previous descriptions of the implied alignment algorithm suggest a technique of "back-propagation" with time complexity [Formula: see text]. Here we describe an implied alignment algorithm with complexity [Formula: see text]. For well-behaved data, such as molecular sequences, the runtime approaches the best-case complexity of Ω(k∗n). The reduction in the time complexity of the algorithm dramatically improves both its utility in generating multiple sequence alignments and its heuristic utility.
doi:10.1186/s12859-020-03595-2 pmid:32646365 fatcat:s6t7gws5azehza2b2qrfs4do3e