# Using Minimum Path Cover to Boost Dynamic Programming on DAGs: Co-Linear   Chaining Extended

**Authors:** Anna Kuosmanen, Topi Paavilainen, Travis Gagie, Rayan Chikhi,, Alexandru I. Tomescu, Veli M\"akinen

arXiv: 1705.08754 · 2018-01-30

## TL;DR

This paper extends co-linear chaining to DAGs using minimum path cover, enabling efficient alignment of sequencing reads on complex genome graphs, with algorithms that outperform previous bounds when the path cover size is small.

## Contribution

It introduces a novel algorithm for minimum path cover in DAGs and a general technique to extend sequence DP algorithms to DAGs, applied to co-linear chaining in genomics.

## Key findings

- New algorithm for minimum path cover in DAGs with O(k|E|log|V|) complexity.
- General method to extend sequence DP algorithms to DAGs.
- Efficient practical implementation for genome graph alignment.

## Abstract

Aligning sequencing reads on graph representations of genomes is an important ingredient of pan-genomics. Such approaches typically find a set of local anchors that indicate plausible matches between substrings of a read to subpaths of the graph. These anchor matches are then combined to form a (semi-local) alignment of the complete read on a subpath. Co-linear chaining is an algorithmically rigorous approach to combine the anchors. It is a well-known approach for the case of two sequences as inputs. Here we extend the approach so that one of the inputs can be a directed acyclic graph (DAGs), e.g. a splicing graph in transcriptomics or a variant graph in pan-genomics.   This extension to DAGs turns out to have a tight connection to the minimum path cover problem, asking for a minimum-cardinality set of paths that cover all the nodes of a DAG. We study the case when the size $k$ of a minimum path cover is small, which is often the case in practice. First, we propose an algorithm for finding a minimum path cover of a DAG $(V,E)$ in $O(k|E|\log|V|)$ time, improving all known time-bounds when $k$ is small and the DAG is not too dense. Second, we introduce a general technique for extending dynamic programming (DP) algorithms from sequences to DAGs. This is enabled by our minimum path cover algorithm, and works by mimicking the DP algorithm for sequences on each path of the minimum path cover. This technique generally produces algorithms that are slower than their counterparts on sequences only by a factor $k$. Our technique can be applied, for example, to the classical longest increasing subsequence and longest common subsequence problems, extended to labeled DAGs. Finally, we apply this technique to the co-linear chaining problem. We also implemented the new co-linear chaining approach. Experiments on splicing graphs show that the new method is efficient also in practice.

## Full text

_Full body text omitted from this summary view._ Fetch the complete paper as Markdown: https://tomesphere.com/paper/1705.08754/full.md

## Figures

7 figures with captions in the complete paper: https://tomesphere.com/paper/1705.08754/full.md

## References

46 references — full list in the complete paper: https://tomesphere.com/paper/1705.08754/full.md

---
Source: https://tomesphere.com/paper/1705.08754