“Gap preserving reduction 是多项式时间映射 $f$,把源 promise problem 的 YES 实例映到目标 YES 区域、NO 实例映到目标 NO 区域,并显…”
形式陈述
沿用概率可检验证明(PCP)对随机位数与查询数的定义,PCP 定理的标准类等式为
也就是说,对每个
反向包含还需说明证明的可访问部分为何多项式大。枚举全部
下面概述 Dinur 证明的构造顺序,具体的预处理、powering 与 assignment-tester 引理见原论文。它从Cook–Levin 型归约开始,把 NP 计算变为多项式大小、常数字母表的约束图。Yes 实例的全部约束可同时满足;no 实例的每个赋值都至少违反一个约束,但违反比例可能只有规模的倒数。
随后迭代放大这个比例。预处理先用有界度扩张图连接变量的多个副本,以一致性约束控制度数,再叠加辅助扩张图的恒真约束,取得整个底层图的统一扩张保证,并完成所需正则化与自环处理。后一步只使不可满足比例损失常数倍;局部副本连接本身并不保证整体已是扩张图。在这些前提下,图 powering 让短随机游走同时检查多条约束,放大不可满足比例;alphabet reduction 再用 assignment tester 把增长的复合字母编码回常数字母表。各步保留完全可满足性,并以常数倍规模开销获得净的 gap 增长。经过对数轮迭代,gap 达到固定
得到常数 gap CSP 后,可补入恒真约束,使约束总数成为二的幂;总数增加不到一倍,gap 至少保留为
直觉
PCP 定理通过重编码,把原始 NP 见证变成高度冗余的约束系统。Gap amplification 使 no 实例的每个赋值都违反常数比例约束,于是随机的局部检查有固定概率发现错误。
随机位数为
图中的 prep 包含度数缩减与全局扩张;prep、powering、alphabet 三步构成一轮,重复
例子与边界
直接对 Cook–Levin 公式随机抽一条子句不够:一个不可满足实例可能有某个赋值只违反
若验证者查询的是未经编码的普通 SAT 赋值,常数查询无法确认所有变量和子句的全局一致性。Assignment tester 需要同时检查局部约束和不同位置对同一逻辑值的编码一致性;只做前者会让证明在不同检查中给出互相矛盾的局部答案。
这套迭代的关键是参数配合:图放大带来的 gap 增益须超过字母表缩减造成的损失,同时每轮规模只增大常数倍。净增益保证只需对数轮,受控的规模增长则保证最终证明长度为多项式。
推论与应用
PCP 定理把 NP 的精确可满足性转化为常数 gap 可满足性,是许多不可近似结果的共同源头。对具体优化问题,gap-preserving reduction 进一步把“全可满足”与“至多满足固定比例”的差距映射为目标函数值之比,从而确定该问题的近似困难阈值。
查询常数不表示验证总时间为常数:验证者仍需读取输入、计算查询位置并处理随机性。证明长度、随机位、查询数、字母表和 soundness 都应一起报告。
参考资料
- Sanjeev Arora, Carsten Lund, Rajeev Motwani, Madhu Sudan, and Mario Szegedy, “Proof Verification and the Hardness of Approximation Problems,” Journal of the ACM 45(3), 1998, pp. 501–555.
- Irit Dinur, “The PCP Theorem by Gap Amplification,” Journal of the ACM 54(3), 2007, Article 12.