细粒度空间复杂度与线性空间假设
在当今的计算领域,对于问题复杂度的研究一直是核心议题。传统上,我们将 P 类中的计算问题视为“可处理的”,并投入大量精力去高效解决“难处理的”问题,尤其是 NP 完全问题。然而,随着对计算资源需求的不断变化,对于可处理问题的细粒度复杂度研究变得越发重要。
1. 背景与概述
1.1 从细粒度时间复杂度到细粒度空间复杂度
过去,为了应对 3CNF 布尔公式可满足性问题(3SAT)在次指数时间内求解的困难,Impagliazzo、Paturi 和 Zane 提出了指数时间假设(ETH)和强指数时间假设(SETH)。这些假设比 P ≠ NP 更强,在它们的基础上,许多知名问题的时间复杂度得到了严格的下界。例如独立集、支配集、团覆盖、最大割和击中集等问题。
近年来,Williams 观察到许多可处理问题的复杂度与 SETH 或其他类似假设相关,从而开启了“细粒度(时间)复杂度”的研究。除了 ETH 和 SETH,正交向量问题(OVP)等假设也被提出,用于为算法解决可处理问题所需的运行时间提供更严格的界限。如果 SETH 为真,对于任何常数 ε > 0,不存在能在 O(n² - ε) 时间内解决 OVP 的确定性算法。
在实际应用中,对于大规模数据集的小空间计算变得至关重要。为了在小型设备上管理大型数据库,我们更关注内存空间的使用。因此,2017 年提出了线性空间假设(LSH),它类似于 SETH,是一个看似比 L ≠ NL 和 LOGDCFL ≠ LOGCFL 更强的假设。LSH 断言,对于任何常数 ε > 0 和任何多对数函数 polylog(·),不存在确定性算法能在以 2CNF 公式 φ 中的变量