module Bio.Alignment.Multiple
where
import Bio.Alignment.AlignData
import Bio.Sequence
progressive :: (Sequence a -> Sequence a -> (Double,EditList)) -> [Sequence a] -> [String]
progressive = undefined
indirect :: EditList -> EditList -> EditList
indirect (Repl x1 _x2:xs) (Repl _y1 y2:ys) = Repl x1 y2 : indirect xs ys
indirect xs@(Repl _ _:_) (Ins y1:ys) = Ins y1 : indirect xs ys
indirect (Repl x1 _:xs) (Del _y1:ys) = Del x1 : indirect xs ys
indirect (Del x1:xs) ys = Del x1 : indirect xs ys
indirect (Ins _x1:xs) (Repl _ y2:ys) = Ins y2 : indirect xs ys
indirect (Ins _x1:xs) (Del _y1:ys) = indirect xs ys
indirect xs@(Ins _:_) (Ins y1:ys) = Ins y1 : indirect xs ys
indirect [] ys = ys
indirect xs [] = xs