The Monotone Min-Plus Product problem is a useful primitive that has seen many algorithmic applications over the past decade. In this problem, we are given two $n\times n$ integer matrices $A$ and $B$, where each row of $B$ is a monotone non-decreasing sequence of integers from $\{1,\dots,n\}$, and the goal is to compute their Min-Plus product, defined as the $n\times n$ matrix $C$ with $C_{i,j} = \min_{k}\{A_{i,k} + B_{k,j}\}$. The fastest known algorithm for this task [Chi, Duan, Xie, and Zhang, STOC'22] runs in $n^{(ω+3)/2+o(1)} = O(n^{2.686})$ time, significantly improving over the brute-force cubic algorithm. However, its main disadvantage is that it requires randomization, which is then inherited by all downstream applications. Our main result is a deterministic algorithm for Monotone Min-Plus product with the same time complexity $n^{(ω+3)/2+o(1)} = O(n^{2.686})$ as its randomized counterpart, improving upon the previous deterministic bound $O(n^{2.875})$ [Gu, Polak, Vassilevska Williams, and Xu, ICALP'21]. Our derandomization also applies to previously studied extensions and variants (e.g., [Dürr, IPL'23]), including rectangular matrices, bounded range $[n^μ]$, and column-monotone matrices. As an immediate consequence, we derandomize state-of-the-art algorithms for multiple problems, including Language Edit Distance, RNA Folding, Optimum Stack Generation, unweighted Tree Edit Distance, Batched Range Mode, and Approximate All-Pairs Shortest Paths. Our techniques also yield a deterministic algorithm for the Monotone Min-Plus Convolution problem that runs in $n^{1.5+o(1)}$ time, nearly matching the best known randomized time complexity $\widetilde{O}(n^{1.5})$ [Chi, Duan, Xie, and Zhang, STOC'22]. This algorithm can be used to derandomize state-of-the-art algorithms for Jumbled Indexing for binary strings and several variants of Knapsack.
翻译:单调最小-加乘积问题是一种在过去十年中见证了诸多算法应用的基础性原语。在该问题中,给定两个 $n\times n$ 整数矩阵 $A$ 和 $B$,其中 $B$ 的每一行都是来自 $\{1,\dots,n\}$ 的单调非减整数序列,目标是计算它们的最小-加乘积,定义为 $n\times n$ 矩阵 $C$,满足 $C_{i,j} = \min_{k}\{A_{i,k} + B_{k,j}\}$。该问题目前最快的已知算法 [Chi, Duan, Xie, and Zhang, STOC'22] 运行时间为 $n^{(ω+3)/2+o(1)} = O(n^{2.686})$,显著优于暴力立方算法。然而,其主要缺陷在于需要随机化,这一特性进而被所有下游应用所继承。我们的主要成果是为单调最小-加乘积问题提出一种确定性算法,其时间复杂度与随机化版本相同,均为 $n^{(ω+3)/2+o(1)} = O(n^{2.686})$,改进了先前的确定性界 $O(n^{2.875})$ [Gu, Polak, Vassilevska Williams, and Xu, ICALP'21]。我们的去随机化方法同样适用于先前研究的扩展和变种(例如 [Dürr, IPL'23]),包括矩形矩阵、有界范围 $[n^μ]$ 以及列单调矩阵。作为直接结果,我们对多个问题的最新算法进行了去随机化,包括语言编辑距离、RNA折叠、最优栈生成、无权树编辑距离、批量范围众数以及近似全对最短路径。我们的技术还产生了一种针对单调最小-加卷积问题的确定性算法,运行时间为 $n^{1.5+o(1)}$,几乎匹配了已知最优随机化时间复杂度 $\widetilde{O}(n^{1.5})$ [Chi, Duan, Xie, and Zhang, STOC'22]。该算法可用于对二进制字符串的乱序索引以及若干背包变种的最新算法进行去随机化。