We present a data structure that we call a Dynamic Representative Set. In its most basic form, it is given two parameters $0< k < n$ and allows us to maintain a representation of a family $\mathcal{F}$ of subsets of $\{1,\ldots,n\}$. It supports basic update operations (unioning of two families, element convolution) and a query operation that determines for a set $B \subseteq \{1,\ldots,n\}$ whether there is a set $A \in \mathcal{F}$ of size at most $k-|B|$ such that $A$ and $B$ are disjoint. After $2^{k+O(\sqrt{k}\log^2k)}n \log n$ preprocessing time, all operations use $2^{k+O(\sqrt{k}\log^2k)}\log n$ time. Our data structure has many algorithmic consequences that improve over previous works. One application is a deterministic algorithm for the Weighted Directed $k$-Path problem, one of the central problems in parameterized complexity. Our algorithm takes as input an $n$-vertex directed graph $G=(V,E)$ with edge lengths and an integer $k$, and it outputs the minimum edge length of a path on $k$ vertices in $2^{k+O(\sqrt{k}\log^2k)}(n+m)\log n$ time (in the word RAM model where weights fit into a single word). Modulo the lower order term $2^{O(\sqrt{k}\log^2k)}$, this answers a question that has been repeatedly posed as a major open problem in the field.
翻译:我们提出一种称为动态代表集的数据结构。其最基本形式接受两个参数$0< k < n$,允许我们维护集合族$\mathcal{F}$(由$\{1,\ldots,n\}$的子集构成)的表示。它支持基本更新操作(两个集合族的并集运算、元素卷积)以及查询操作:对于集合$B \subseteq \{1,\ldots,n\}$,判断是否存在大小不超过$k-|B|$的集合$A \in \mathcal{F}$使得$A$与$B$不相交。经过$2^{k+O(\sqrt{k}\log^2k)}n \log n$的预处理时间后,所有操作均可在$2^{k+O(\sqrt{k}\log^2k)}\log n$时间内完成。该数据结构具有诸多算法应用,改进了先前的研究成果。其中一个应用是针对加权有向$k$路径问题的确定性算法,该问题是参数化复杂度领域的核心问题之一。我们的算法以包含边长的$n$顶点有向图$G=(V,E)$和整数$k$作为输入,在$2^{k+O(\sqrt{k}\log^2k)}(n+m)\log n$时间内(在权重可存入单字的字RAM模型中)输出包含$k$个顶点的路径的最小边长。在忽略低阶项$2^{O(\sqrt{k}\log^2k)}$的前提下,这解答了该领域长期被反复提出的重要开放性问题。