3SUM 与全源最短路的真正更快的做法

· · 算法·理论

书接上文一个假的全源最短路更快做法:全源最短路的更快做法,以及对于贡献定位没有那么准确的技术报告:O(n^{2-eps}) 3sum。

二次与三次屏障同时失守

一场由 AI 发现触发的算法革命

3SUM、APSP、Exact Triangle,以及经由归约连接的 MinConv,在同一条算法链上接连跨过了固定指数的障碍。

这件事的震撼程度,不能只用小数点后的几位变化衡量。细粒度复杂性长期研究的核心命题之一,就是这些问题是否存在任何固定的 \varepsilon>0,使二次时间降为 n^{2-\varepsilon}、三次时间降为 n^{3-\varepsilon}。这篇论文给出了肯定答案,并通过既有归约,把突破传送到图算法、序列优化、背包、部分计算几何问题与数据结构。arxiv.org

一、论文是谁写的,AI 究竟做了什么

论文标题:
Truly Subquadratic 3SUM and Truly Subcubic APSP via Triangles in Sparse Lopsided Graphs

作者:

论文署名列出的单位分别为 Columbia University 与 MIT。

固定版本与地址:

本文分析的是 2026 年 10 月 5 日提交的 v1 预印本。论文摘要给出的整数确定性界为:

\mathrm{3SUM}:O(n^{1.9992}),\qquad \mathrm{APSP}:O(n^{2.9995}).

其中,定理 22 将 APSP 的指数写得更细,为 2.99942。实数版本则给出 Las Vegas 期望时间:

\mathrm{3SUM}:O(n^{1.998}),\qquad \mathrm{APSP}:O(n^{2.998}).

实数上的运算仅需加法、减法和比较。arxiv.org

AI 发现过程:从密码构造转向击穿其困难性基础

按照论文末尾 Acknowledgments and Methodology 的公开声明,最初的任务来自密码学:Anthropic 的一位员工让内部研究版 Claude 检查、改进基于 Zero-k-Clique 平均情形困难性的密码构造。

模型转而发展出更快的算法,先处理平均情形,再推进到最坏情形。作者记录,这次会话使用了 1600 万输出 token,期间没有人类继续输入。这一表述指该次探索会话内部;问题设置与后续研究仍有人类参与。arxiv.org

Anthropic 在 2026 年 9 月将算法分享给两位作者。被分享的核心基本对应论文第 2 节的薄矩阵稀疏输出算法,原始参数和表述有所不同。作者随后理解、简化、加强并扩展算法,组织既有归约,发展出在线数据结构版本及 Hinted OMv 后果,并承担论文内容的全部责任。arxiv.org

因此,AI 的贡献可以准确地写成:

Claude 发现了推翻核心猜想的算法;人类研究者将这一发现发展为一套清晰、可扩展、与既有复杂性理论连接起来的数学成果。

论文还报告,在写作完成后,内部研究模型使用 Lean 4 与 Mathlib 形式化验证了 Exact Triangle 的定理 19、3SUM/Min-Plus Product/APSP 的定理 22,以及推论 39 的 Zero-Weight k-Clique 情形及其依赖。公开目录为 anthropics/formal-math/3sum-apsp。这份清单有明确范围;下面额外推导的应用不能一并宣称已经获得同样的形式化认证。arxiv.org

二、复杂度刷新总表

读表约定

完整报告将结果拆为 76 行;这里将相关问题合并展示,覆盖同一组已核验的结果及直接推论。

使用四个缩写:

\begin{aligned} T_{\mathrm I}(n)&=\widetilde O(n^{2.99825}) &&\text{整数矩阵与 APSP,D},\\ T_{\mathrm R}(n)&=O(n^{2.998}) &&\text{实数矩阵与 APSP,LV},\\ C_{\mathrm I}(n)&=\widetilde O(n^{1.999125}) &&\text{整数全输出卷积,D},\\ C_{\mathrm R}(n)&=O(n^{1.999}) &&\text{实数全输出卷积,LV}. \end{aligned}

其中,T_{\mathrm I} 来自论文脚注 10 提示的逐边 Exact Triangle 路线,比摘要中经全局检测得到的界更强;两个卷积界再由矩阵到卷积的归约得到。后文会把这两步展开。arxiv.org

问题与适用范围 原有指数台阶 新上界与保证
整数 3SUM、三集合 3SUM 二次型 D O(n^{1.9992})
任意实数 3SUM 二次型 LV O(n^{1.998})
整数 Exact Triangle、逐边 Exact Triangle 三次型 D \widetilde O(n^{2.99825})
实数 Exact Triangle 三次型 LV O(n^{2.998})
整数 APSP、Min-Plus/Max-Plus 矩阵乘法 三次型 主定理 O(n^{2.99942});逐边加强为 T_{\mathrm I}(n)
实数 APSP、Min-Plus/Max-Plus 矩阵乘法 三次型 T_{\mathrm R}(n)
薄矩阵指定位置计算、偏斜稀疏逐边三角形检测与计数 对应实例的二次型成本 O(N^2/D^{0.063}+\operatorname{size}(W)D^{0.437}),D;D\le N^{1/18}
在线单项乘积查询、小宇宙集合相交及交集大小 全预处理或每问 O(D) 预处理 O(N^2/D^{0.063}),每问 O(D^{0.437}),D
有向无权 APSP、多对数整数权 APSP \widetilde O(n^{2+\mu}) D O(n^{2+\mu-\delta});\omega(1,\mu,1)=1+2\mu,\mu<0.5275
负权三角形检测、最小/最大权三角形 三次型 整数 T_{\mathrm I};实数 T_{\mathrm R}
有向无负环图的最小权环 三次型 整数 T_{\mathrm I};实数 T_{\mathrm R}
无向非负整数权最小简单环 三次型 D T_{\mathrm I};使用专门归约
有向 Replacement Paths、第二条不同的最短简单路径 三次型 D T_{\mathrm I};第二条允许与第一条同长
全部离心率、半径、直径 三次型 整数 T_{\mathrm I};实数 T_{\mathrm R}
图中位点、各点距离和、Closeness Centrality、Wiener Index 三次型 整数 T_{\mathrm I};实数 T_{\mathrm R}
给定点的 Betweenness Centrality 三次型 正权且最短路唯一时,整数 T_{\mathrm I}、实数 T_{\mathrm R}
所有点的 Betweenness Centrality 三次型 正整数权且最短路唯一时,D O(n^{3-\delta});报告推导
给定点的 Reach Centrality 三次型 严格正权时,整数 T_{\mathrm I}、实数 T_{\mathrm R}
Metricity/三角不等式验证、Min-Plus 乘积验证 三次型 整数 T_{\mathrm I};实数 T_{\mathrm R}
一般带权、有序树编辑距离 三次型 D \widetilde O(n^{2.99825}),整数代价
二维最大连续子矩阵和 三次型 D O(n^{3-\delta})
固定 d\ge2 维最大连续子盒和,边长 n n^{2d-1} 型 D O(n^{2d-1-\delta});报告推导
Min-Plus 每个输出的最优中间点个数 三次型 D O(n^{3-\delta}),整数
零权/负权三角形总数、逐边计数、计数奇偶 三次型 D O(n^{3-\delta}),整数
全点对最短路径条数模 U 模计数的三次型 D O(n^{3-\delta});正整数权,U 为多对数位整数
距离、Min-Plus 输出、半径、图中位值、Wiener 指数、替代路径距离的值奇偶 三次型 D T_{\mathrm I}
每个矩阵位置的阈值计数、指定秩/中位数、最小绝对偏差和 三次型 D O(n^{3-\delta}),整数;报告推导
GeomBase:点位于三条平行线上 二次型 整数 D O(n^{1.9992});实数 LV O(n^{1.998})
非平凡固定整数系数 3-LDT、3AP、Conv3LDT/ConvAverage 二次型 D O(n^{2-\delta}),保留各自的互异性和索引条件
All-Numbers 3SUM 二次型 D O(n^{2-\delta})
#3SUM、#All-Numbers 3SUM 二次型 D O(n^{2-\delta}),整数
Convolution-3SUM 二次型 总判定 D O(n^{1.9992});逐输出判定、计数为 D O(n^{2-\delta})
MonoConvolution \widetilde O(n^{1.5}) D O(n^{1.4999})
3XOR 二次型 D O(n^{2-\delta});O(\log n) 位向量
一般 Min-Plus/Max-Plus 卷积,完整输出 二次型 整数 C_{\mathrm I};实数 C_{\mathrm R}
卷积验证、逐项上下界测试、超可加性/次可加性检测 二次型 对应的 C_{\mathrm I} 或 C_{\mathrm R}
每种长度的最大/最小连续区间和 二次型 对应的 C_{\mathrm I} 或 C_{\mathrm R}
Tree Sparsity,含完整 sparsity vector 大预算时二次型 D \widetilde O(n^{1.999125})
每个卷积输出的最优分拆个数 二次型 D O(n^{2-\delta}),整数
Polyhedral 3SUM 二次型 D C_{\mathrm I},保留逐对下界承诺
\ell_\infty 项链对齐 二次型 实数 LV O(n^{1.999});整数化输入可用 D 界
任意多个序列的完整 Min-Plus 连乘,总输入长度 L 二次型通用界 D \widetilde O(L^{1.999125});LV \widetilde O(L^{1.999})
整数逐输出阈值计数、指定秩/中位数卷积、最小绝对偏差和 二次型 D \widetilde O(n^{2-\delta_{\rm cnt}});报告推导
多项式整数网格上的 \ell_1 项链对齐 二次型通用界 D \widetilde O(n^{2-\delta_{\rm cnt}});报告推导
Unbounded Knapsack,含全部容量 \widetilde O(n+t^2) 型 D \widetilde O(n+t^{1.999125});LV \widetilde O(n+t^{1.999})
0/1 Knapsack、Bounded Knapsack,含全部容量 容量上的二次台阶 MC \widetilde O(n+t^{1.999})
Subset Sum 的 (1-\epsilon) 近似 \widetilde O(n+\epsilon^{-2}) 型 MC \widetilde O(n+\epsilon^{-1.999})
固定 k 的整数零权/最小权/最大权 k-Clique n^k 型 D O(n^{k-0.0017\lfloor k/3\rfloor})
对应的实数加权 k-Clique n^k 型 LV O(n^{k-0.002\lfloor k/3\rfloor});直接组合推论
零权及最小/最大权 k-Clique 的个数 n^k 型 D O(n^{k-\delta_k}),整数
v-hinted Mv、Mv-hinted Mv 两阶段的原猜想界 O(n^{2-0.063\tau}) 与 O(n^{1+0.437\tau}),D;\tau<1/18
uMv-hinted uMv 多阶段的原猜想界 第 3 阶段 O(n^{1+\tau_2-0.063\tau_1}),第 4 阶段 O(n^{\tau_2+0.437\tau_1}),D;\tau_1<\tau_2/18

这张表来自论文主定理、既有正向归约和报告中展开的组合推论。APSP 类、计数类、MinConv/背包类分别依赖相应的路径—矩阵归约、检测—计数归约和卷积归约;它们的随机性与指数损失必须逐项保留。arxiv.org

树编辑距离采用保持矩阵乘法指数的归约;近似 Subset Sum 使用 \widetilde O(n+T(1/\epsilon)) 的接口;MonoConvolution 和 Polyhedral 3SUM 则来自各自的专门联系。arxiv.org

这张表最需要防止的误读,是把“3SUM-hard”直接变成“现在有更快算法”。 若已知的只有

\mathrm{3SUM}\le_{\mathrm{fg}}P,

更快的 3SUM 并不自动给出更快的 P。因此,一般平面三点共线,以及许多只有单向困难性归约的几何、动态问题,没有被冒进地塞进新算法表。论文也明确指出,这些问题仍然开放。arxiv.org

三、算法真正突破的地方:只算薄矩阵中需要的位置

整篇论文的核心任务是:

X\in\mathbb Z^{N\times D},\qquad Y\in\mathbb Z^{D\times N},

给定位置集合 W,只输出

(XY)_{ij},\qquad (i,j)\in W.

这里是普通加乘矩阵乘法。输入可以稠密,完整输出也可以稠密;稀疏的是我们请求的输出位置。

当

D\le N^{1/18},\qquad |W|\le \frac{N^2}{\sqrt D},

新算法的时间为

\boxed{O\!\left(\frac{N^2}{D^{0.063}}\right)}.

这比写出整个 N\times N 乘积所需的 N^2 次输出还少。它也比逐个算内积的 |W|D 快一个多项式因子。arxiv.org

这个任务与三角形的关系非常直接。若 X,Y 是三部图两侧的邻接矩阵,那么

(XY)_{a,b} = \#\{c:(a,c),(c,b)\in E\}.

再把 (a,b)\in W 视作第三条边,这个矩阵元素就是经过该边的三角形数量。

下面的箭头表示算法成果的传播方向:

flowchart TD
    A["十乘法恒等式与递归剪枝"] --> B["薄矩阵的稀疏输出"]
    B --> C["整数逐边 Exact Triangle"]
    B --> D["实数比较计数"]
    B --> J["集合相交与 Hinted OMv"]
    C --> E["3SUM"]
    C --> F["APSP 与 min-plus 矩阵"]
    D --> E
    D --> F
    F --> G["min-plus 卷积"]
    F --> I["图指标与树编辑距离"]
    G --> H["序列优化与背包"]

3.1 先找到一种适合省略输出的代数分解

Schönhage 的经典恒等式,把九个外积项 x_i y_j 和一个四项内积

h=\sum_{i,j=1}^{2}p_{ij}q_{ij}

放进一个十次乘法的构造中。直接分别计算需要 9+4=13 次乘法;十次乘法构造的外积部分会带误差,需要后续结构将其精确消去。

令

\widehat p= \begin{pmatrix} p_{11}&p_{12}&0\\ p_{21}&p_{22}&0\\ -p_{11}-p_{21}&-p_{12}-p_{22}&0 \end{pmatrix}, \widehat q= \begin{pmatrix} q_{11}&q_{12}&-q_{11}-q_{12}\\ q_{21}&q_{22}&-q_{21}-q_{22}\\ 0&0&0 \end{pmatrix}.

计算九项

P_{ij}=(x_i+\widehat p_{ij})(y_j+\widehat q_{ij}),

以及第十项

P_0=-\left(\sum_i x_i\right)\left(\sum_jy_j\right).

由于 \widehat p 每列和为零、\widehat q 每行和为零,

\sum_{i,j}P_{ij}+P_0 = \sum_{i,j=1}^{2}p_{ij}q_{ij}.

所以内积是精确的。

更关键的是输出依赖关系:

论文利用的正是这三种结构。arxiv.org

3.2 递归之后,误差为什么会完全消失

把恒等式递归 L 层,只保留左右输入各有恰好 m 层使用 inner 变量的部分。记

D=4^m,\qquad N_0=3^{L-m},\qquad K=\binom Lm.

每选一个大小为 m 的层集合 Q,就得到一个

N_0\times D\quad\text{乘}\quad D\times N_0

的薄矩阵乘积。整棵递归树同时装入 K 个这样的独立乘积。

固定一个所需输出,它的 inner 层集合也是 Q。

在最终解码的多线性系数中,Q 内的每一层都要求左右输入为 inner。这已经用完了输入允许的全部 m 个 inner 层。因此,Q 外只能使用 outer 输入。

而误差恰好要求在某个 outer 输出层出现 inner 输入。于是误差无法进入所需输出,全部被精确排除。

算法没有使用数值近似,也没有把误差当成“小量”丢掉。它通过固定层数,让误差在代数结构上无处进入。

3.3 真正决定速度的是“叶子的并集”

递归树有 10^L 个乘法叶子。算法按需求递归:只有能够影响所需输出的分支才执行,同一个叶子被多个输出需要时只算一次。

设一个小块请求的输出集合为 U。将叶子按阶数 d 分类,可以得到两种上界:

\alpha_d=\binom md9^d

是一个输出依赖的第 d 阶叶子数量;

\beta_d=\binom L{m-d}9^{L-m+d}

是整棵树里第 d 阶叶子的总数量。

因此:

\boxed{ |\operatorname{Leaves}(U)| \le \sum_{d=0}^{m} \min\{|U|\alpha_d,\beta_d\}. }

这条式子是突破的组合核心:某些叶子虽然会被很多输出使用,但它们在全局的总数很少;另一些叶子数量多,但一个输出只需要其中很少的一部分。

取 L=19m,则

\frac{\beta_d}{\beta_{d-1}}<\frac12.

以 m/9 为分界,低阶按 |U|\alpha_d 收费,高阶按 \beta_d 收费,得到

|\operatorname{Leaves}(U)| \le D^{-1/18}\left(\sqrt D\,|U|+2M\right), \qquad M=KN_0^2.

对所有小块求和,再使用 |W|\le N^2/\sqrt D,便得到少于 N^2 的总工作量。

输入编码同样需要控制。论文把矩阵组织成行带、列带,使同一条带的编码在许多小乘积之间复用,编码总费用为

O\!\left(\frac{N10^L}{\sqrt K\,N_0}\right).

稀疏输出、叶子共享、编码复用,三者共同兑现了复杂度节省。arxiv.org

3.4 在线版本为什么还能更强

如果查询位置逐个到来,不能提前知道要保留哪些递归分支。论文于是预存高度共享的叶子部分和,称为 boxes。

高阶叶子按照 inner 位置中最靠右的 t 个非 P_0 项来划分,其余适当位置用星号表示。星号展开成全部十项,利用动态规划计算每个 box 的和。一次查询只读取少量低阶叶子和少量 box。

取

L=21m,\qquad t\approx m/9,

并吸收对数因子,得到:

\boxed{ P(N,D)=O(N^2/D^{0.063}),\qquad Q(D)=O(D^{0.437}). }

因为 0.5-0.437=0.063,处理 N^2/\sqrt D 个查询仍在同一预算内。

更一般的参数分析把薄维度范围扩展到

D\le N^\varepsilon,\qquad \varepsilon< \frac{\ln4}{5\ln10} = 0.120411998\ldots.

这个 0.1204 是当前恒等式和编码分析给出的参数界,后续仍有改进空间。arxiv.org

四、怎样把这个矩阵算法变成真正亚三次的 Exact Triangle

给定三部加权图,要寻找

w(a,b)+w(a,c)+w(b,c)=0.

整数权重允许先模一个素数 p 筛选候选。但模零可能是假阳性,所以算法必须同时控制:

  1. 产生多少个薄矩阵实例;
  2. 最后核查多少个假阳性。

4.1 素数选择也能确定性完成

取 p 约为 \sqrt D。记 F(p) 为模 p 等于零、原整数和却不为零的三角形数量。

算法通过模 p 的多项式矩阵乘法,计算每个候选素数下的模零三角形数量。真正零三角形的数量对所有 p 都相同,因此最小化这个总数就等价于最小化假阳性数量,无须预先知道真正零三角形有多少个。

可以确定性地选到满足

F(p)=O\!\left(\frac{n^3\log n}{\sqrt D}\right)

的素数。

随后将顶点与剩余类拆分成偏斜稀疏实例,交给薄矩阵算法,最后对候选见证检查原整数权和。arxiv.org

4.2 0.00175 是怎样算出来的

设切分参数为 g。实例求解的成本约为

O\!\left(\frac{n^3g}{D^{0.063}}\right),

假阳性核查成本约为

\widetilde O(n^3/g).

令

g=D^{0.0315},

两项平衡。再取

D=n^{1/18},

便得到

\frac{0.0315}{18}=0.00175,

从而:

\boxed{ T_{\rm ExactTriangle}(n) = \widetilde O(n^{2.99825}). }

这解释了核心指数的每一层来源:薄矩阵节省 0.063,平衡真假候选损失一半,再通过 D=n^{1/18} 换算成原问题规模。

五、3SUM 与 APSP 的指数怎样落地

5.1 3SUM:保留一半节省

已知确定性归约把规模 n 的整数 3SUM,变成约 n^{1/2+o(1)} 个规模 n^{1/2+o(1)} 的 Exact Triangle 实例。因此:

n^{1/2+o(1)} \left(n^{1/2+o(1)}\right)^{3-0.00175} = n^{1.999125+o(1)} \subseteq O(n^{1.9992}).

这里的 o(1) 不能随意删除。arxiv.org

5.2 APSP:保留逐边输出,才能避免多损失一次指数

经全局检测版 Exact Triangle 的归约,APSP 只保留三分之一节省:

\widetilde O(n^{3-0.00175/3}) = \widetilde O(n^{2.9994166\ldots}),

对应定理中的 O(n^{2.99942})。

但作者脚注 10 指出,同一个算法实际上可以在相同主导时间内回答每条边是否有零权三角形。利用这一更丰富的接口,矩阵乘法可以保留全部节省。arxiv.org

下面是一个具体的恢复办法。

先将矩阵项平移为非负整数。定义

A_h=\lfloor A/2^h\rfloor,\quad B_h=\lfloor B/2^h\rfloor,\quad C_h=A_h\star B_h.

如果已经知道 C_h,加入下一位时必有

C_{h-1}[i,j]\in \{2C_h[i,j],\,2C_h[i,j]+1,\,2C_h[i,j]+2\}.

每一位只需两次逐边 Exact Triangle,询问是否存在 k 满足

A_{h-1}[i,k]+B_{h-1}[k,j]=2C_h[i,j],

以及右端加 1 的等式。

第一式有解,取第一个候选;否则第二式有解,取第二个;都没有,答案必为第三个。

整个过程只有 O(\log U) 轮,矩阵规模始终不变,于是得到:

\boxed{ T_{\mathrm I}(n)=\widetilde O(n^{2.99825}). }

这一逐位推导也说明,算法没有把“等式检测”未经证明地当成“不等式判定”。

5.3 实数版本:通过比较计数绕开整数取模

任意实数不能直接套用模素数哈希。实数路线采用 Fredman 技巧:

a'+b'<a+b \iff a'-a<b-b'.

右边把行相关信息与列相关信息分开。把带颜色的比较元素排序、分块后:

矩阵项只是元素个数,所以原始数据即使是任意实数,核心薄矩阵步骤仍满足整数定理的条件。

取 d=n^{1/40} 后,比较计数的预算最终给出

\widetilde O(n^{1.9979})\subseteq O(n^{1.998})

的 3SUM,以及

\widetilde O(n^{2.9979})\subseteq O(n^{2.998})

的 Min-Plus Product 和 APSP。随机性来自前驱/后继搜索中的抽样,答案始终正确,因此是 Las Vegas。arxiv.org

六、从 Min-Plus 矩阵到卷积,再到背包

这条传播链最值得展开,因为它会直接改变许多动态规划的通用上界。

6.1 为什么矩阵快了 \eta,卷积就快了 \eta/2

需要计算全部

c_k=\min_{i+j=k}(a_i+b_j).

取 h=\lceil\sqrt n\rceil。对每个余数 r\in\{0,\ldots,h-1\},构造

A[p,t]=a_{ph+t},\qquad B_r[t,s]=b_{sh+r-t},

越界位置设为适当的哨兵。计算 C_r=A\star B_r,再取

c_{qh+r} = \min_{\substack{0\le p<h\\0\le q-p\le h}} C_r[p,q-p].

因为

(ph+t)+((q-p)h+r-t)=qh+r,

所有合法分拆都准确落在相应位置。

这样共有 O(\sqrt n) 个边长 O(\sqrt n) 的矩阵乘法。因此,如果方阵乘法为 \widetilde O(s^{3-\eta}),则

T_{\rm conv}(n) = \widetilde O\!\left( \sqrt n\,(\sqrt n)^{3-\eta} \right) = \widetilde O(n^{2-\eta/2}).

这正是矩阵—卷积关系在此处的具体展开。arxiv.org

代入两种矩阵算法:

\boxed{ C_{\mathrm I}(n)=\widetilde O(n^{1.999125}), \qquad C_{\mathrm R}(n)=O(n^{1.999}). }

这些都是完整卷积输出,不是只回答一个位置。

6.2 无界背包:重复平方

令容量为 t,物品重量为正整数。建立精确重量数组:

F[0]=0,\qquad F[w]=\text{重量恰为 }w\text{ 的最佳单件利润}.

缺失状态记为不可达。

一次 Max-Plus 自卷积得到至多两件物品的答案,再平方得到至多四件、八件、十六件……由于重量至少为 1,任何可行解最多使用 t 件物品,故 O(\log t) 次截断平方足够。

最后做前缀最大,得到全部容量的最优值:

\widetilde O(n+t^{1.999125})\quad\text{D},

或

\widetilde O(n+t^{1.999})\quad\text{LV}.

6.3 0/1 与有界背包:必须保留外层随机性

0/1 背包不能重复平方同一个数组,否则同一物品会被重复使用。既有归约通过重量分层、随机分组和颜色编码,将总卷积工作压到

\widetilde O(n+T_{\rm conv}(t)).

代入较快的卷积算法,得到

\boxed{\widetilde O(n+t^{1.999})\quad\text{MC}.}

即使内部卷积始终正确,外层颜色编码仍可能漏掉最优方案,因此不能把整个算法标成 LV。arxiv.org

有界背包先将每类重数截断到 \lfloor t/w_i\rfloor,再用标准二进制分组转成 O(n\log t) 个 0/1 物品,得到同样的 MC 上界。

这里的参数是容量 t,不能替换成最大单件重量 w_{\max}。这些结果也仍是伪多项式算法;它们不意味着精确背包有了强多项式算法。

6.4 更多序列动态规划如何跟着变化

几个典型例子:

最后一条覆盖不等长序列,也解释了为什么不能简单把“合并次数”乘上“全长卷积成本”。

七、额外推导:计数甚至打开了中位数卷积

原论文的影响不止于“求一个最优值”。既有研究证明,整数 Exact Triangle、Min-Plus Product、3SUM 与适当的计数版本之间存在细粒度归约;结合去随机化结果,可以得到确定性的整数逐输出计数算法。arxiv.org

报告进一步展开了下面这条链:

\text{等式计数} \longrightarrow \text{阈值计数} \longrightarrow \text{指定秩/中位数} \longrightarrow \text{绝对偏差和与 }\ell_1\text{ 项链}.

这些扩展在报告中明确标为组合推论,没有冒充原论文逐条陈述的定理。

7.1 等式计数怎样变成不等式计数

对非负整数定义

s_q= \left\lfloor\frac a{2^q}\right\rfloor+ \left\lfloor\frac b{2^q}\right\rfloor- \left\lfloor\frac c{2^q}\right\rfloor, \qquad h_q=[s_q<0].

因为

s_q=2s_{q+1}+a_q+b_q-c_q,

符号变化只有两种:

\begin{aligned} h_q-h_{q+1} ={}&[s_{q+1}=0,\ (a_q,b_q,c_q)=(0,0,1)]\\ &-[s_{q+1}=-1,\ (a_q,b_q,c_q)=(1,1,0)]. \end{aligned}

对全部位求和,左端望远镜消去为 [a+b<c]。

因此,不等式计数可转换为 O(\log U) 次带位掩码的等式计数。这里的负项不可省略:它不是按不同位作互不相交分类,而是有符号求和。

保留下标编码后,就能同时得到每个 k 的

\#\{i+j=k:a_i+b_j<c_k\},

并允许每个输出使用不同阈值。

7.2 并行二分求每个输出的指定秩

每个反对角线维护自己的二分区间,一轮中使用各自的中点作为阈值。一次全输出阈值计数,就足以更新所有位置的区间。

所以每条反对角线的一个指定秩,包括中位数,只需再乘 O(\log U) 因子:

\boxed{ \widetilde O(n^{2-\delta_{\rm cnt}}). }

此前通用的中位数/指定秩卷积加速仍是对数因子级;这里的结论限于多项式大小整数输入。tmc.web.engr.illinois.edu

7.3 为什么知道中位数后,还要计算一个加权和

记该反对角线的多重集为 D_k,中位数为 z_k,并令

L_k=\#\{d<z_k\},\quad S_k=\sum_{d\in D_k}d,\quad S_{<,k}=\sum_{d<z_k}d.

则

\boxed{ \min_z\sum_{d\in D_k}|d-z| = S_k-2S_{<,k}+z_k(2L_k-|D_k|). }

阈值以下的和值 S_{<,k},可以把输入值按二进制位加掩码,再做阈值计数恢复,仍只增加多对数因子。

这就补齐了“中位数值”到“最小 \ell_1 代价”的完整算法。再接上项链的圆周展开关系,即得到多项式整数网格上的真正亚二次 \ell_1 项链对齐。实数 \ell_\infty 项链对齐则直接由 Min/Max-Plus 卷积得到。arxiv.org

八、为什么无权 APSP、Clique 和在线问题也受到冲击

有向无权 APSP:替换原算法的瓶颈

一般 APSP 的 n^{2.998} 显然不足以直接改善约 n^{2.5275} 的无权算法。真正的连接来自 Zwick 算法在瓶颈处的

n\times n^\mu \quad\text{乘}\quad n^\mu\times n

Min-Plus 乘积。

将其切成 n^{2-2\mu} 个 n^\mu 阶方阵乘法,若方阵指数为 3-\eta,总成本为

n^{2-2\mu}(n^\mu)^{3-\eta} = n^{2+\mu-\mu\eta}.

在瓶颈周围平衡参数,并用确定性桥接集合控制长路径,便获得 O(n^{2+\mu-\delta})。这解释了为什么一个“早已亚三次”的特殊问题,也能继续获得固定指数改进。arxiv.org

加权 k-Clique:把位置分成三组

令 k=3h+r,r\in\{0,1,2\}。先枚举余下 r 个顶点,再把其余位置分成三组。每组的部分 clique 成为新顶点,三组间的连接形成一个加权三角形实例。

若三角形算法为 N^{3-\eta},则总时间为

n^r(n^h)^{3-\eta} = n^{k-\eta\lfloor k/3\rfloor}.

这直接解释了论文的 k-Clique 指数形式,也给出了实数版本的相应组合推论。arxiv.org

Hinted OMv:只在确实足够“薄”的提示区间击穿猜想

令中间维度 D=n^\tau。预处理薄矩阵乘积后,输出一列需要 n 次单项查询,于是:

P=O(n^{2-0.063\tau}),\qquad Q_{\rm column}=O(n^{1+0.437\tau}).

两阶段同时改善了对应猜想的界。一般参数分析将正改进区间扩展到 \tau<0.1204。

这一结果针对三种具体的 Hinted OMv 及其参数范围。普通 OMv,以及在更厚矩形区间建立的动态矩阵逆主界,仍需分别研究。arxiv.org

九、这场突破对理论计算机科学意味着什么

1. 一组长期充当“停止线”的猜想,已经成为可以越过的路标

细粒度复杂性积累了大量这样的关系:

P\le_{\mathrm{fg}}Q.

它既传递困难性,也传递算法。此前,因为 3SUM、APSP 长期没有固定指数改善,人们更多使用前一种解释;现在后一种解释开始集中兑现。

一篇论文提供底层技术,几十个问题族同时获得新算法。归约网络在这一刻成为了算法传播网络。 这正体现了细粒度复杂性最有价值的积累。arxiv.org

2. 代数算法的研究目标发生了具体变化

新的问题不只是“怎样降低完整矩阵乘法的秩”,还包括:

Schönhage 的恒等式与 Coppersmith 的递归都来自经典工作;此次新发现,是它们的支持结构可以服务于稀疏输出,并且能被精确分析到足以跨越 3SUM 与 APSP 的指数屏障。

3. 归约损耗从“无关紧要的常数”变成优化目标

证明困难性时,只要保留某个正数节省即可。现在真正设计算法时,保留一半、三分之一还是全部节省,会直接改变最后的指数。

APSP 的逐边加强就是一个鲜明例子:

2.99942\longrightarrow 2.99825,

核心矩阵算法没有变化,只是更充分地利用了它已经提供的输出信息。作者也明确指出,许多归约仍有改进空间。arxiv.org

4. 渐近突破与工程加速需要分别评价

从 n^3 到 n^{2.9995},纯指数改善因子是 n^{0.0005}。即使 n=10^{12},它也只有约 1.014,尚未计入巨大常数。因此,目前结果的力量主要体现在理论边界上。

但对“是否存在任何固定 \varepsilon>0”这个命题,0.0005 已经具有决定性。

这篇论文没有给出 3SUM 与 APSP 的最终指数,却已经打开了一整组曾经关闭的指数区间。 后续研究现在拥有一个具体起点:恒等式、递归支持、共享计数、确定性归约,以及可以继续优化的每一处指数损耗。