Licencja
Fully Polynomial-Time Parameterized Computations for Graphs and Matrices of Low Treewidth
Abstrakt (EN)
We investigate the complexity of several fundamental polynomial-time solvable problems on graphs and on matrices, when the given instance has low treewidth; in the case of matrices, we consider the treewidth of the graph formed by non-zero entries. In each of the considered cases, the best known algorithms working on general graphs run in polynomial time; however, the exponent of the polynomial is large. Therefore, our main goal is to construct algorithms with running time of the form poly(k)⋅ n or poly(k)⋅ nlog n, where k is the width of the tree decomposition given on the input. Such procedures would outperform the best known algorithms for the considered problems already for moderate values of the treewidth, like O(n1/c) for a constant c. Our results include the following: — an algorithm for computing the determinant and the rank of an n×n matrix using O(k3⋅n) time and arithmetic operations; —an algorithm for solving a system of linear equations using O(k3⋅n) time and arithmetic operations; —an O(k3⋅n log n)-time randomized algorithm for finding the cardinality of a maximum matching in a graph; —an O(k4⋅n log2 n)-time randomized algorithm for constructing a maximum matching in a graph; —an O(k2⋅n log n)-time algorithm for finding a maximum vertex flow in a directed graph. Moreover, we give an approximation algorithm for treewidth with time complexity suited to the running times as above. Namely, the algorithm, when given a graph G and integer k, runs in time O(k7⋅n log n) and either correctly reports that the treewidth of G is larger than k, or constructs a tree decomposition of G of width O(k2). The above results stand in contrast with the recent work of Abboud et al. (SODA 2016), which shows that the existence of algorithms with similar running times is unlikely for the problems of finding the diameter and the radius of a graph of low treewidth.