On the parameterized complexity of the Minimum Path Cover problem in DAGs

07/15/2020
by   Manuel Cáceres, et al.
0

A minimum path cover (MPC) of a directed acyclic graph (DAG) G = (V,E) is a minimum-size set of paths that together cover all the vertices of the DAG. The size k of a MPC is also called the width of G. Computing a MPC is a basic problem, dating back to Dilworth's and Fulkerson's results in the 1950s, and is solvable in quadratic time in the worst case. Since the width of the DAG can be small in practical applications (e.g., from bioinformatics), research has also studied algorithms whose complexity is parameterized on k. Despite these efforts, it is a major open problem whether there exists a linear-time O(f(k)(|E| + |V|)) parameterized algorithm. We present here two significant results in this direction. First, we obtain an O(|E| + k^2|V|log|V|)-time algorithm, which in particular is faster than all existing MPC algorithms when k = o(√(|V|)/log|V|) and |E| = ω(k|V|) but |E| = o(|V|^2). We obtain this by a new combination of three techniques: transitive edge sparsification, divide-and-conquer, and shrinking. This algorithm is also simple and can be parallelized, making it ideal for practical use. We also show that some basic problems on DAGs (reachability queries, longest increasing / common subsequence, co-linear chaining) get faster algorithms as immediate corollaries of this result. Second, we obtain an O(poly(k)(2^k|E| + 4^k|V|))-time algorithm for the dual problem of computing the width of the DAG. This is based on the notion of frontier antichains, generalizing the standard notion of right-most maximum antichain. As we process the vertices in a topological order, these at most 2^k frontier antichains can be maintained with the help of several combinatorial properties. As such, it is enough to sweep the graph once from left to right, paying only f(k) along the way, which is a new surprising insight into the classical MPC problem.

READ FULL TEXT

Please sign up or login with your details

Forgot password? Click here to reset