形式陈述
把子句视为文字集合。给定合取范式 公理库 合取范式 Conjunctive normal form · CNF 由文字的析取形成子句,再对这些子句取合取所得的命题公式形状。 F = C 1 ∧ ⋯ ∧ C m ,归结规则从含相反文字的一对子句
C ∨ x , D ∨ ¬ x 推出 resolvent C ∨ D ;集合口径会删去重复文字,若结果同时含 u , ¬ u ,则它是永真子句,可直接丢弃。归结反驳是一列子句,每行要么是 F 的初始子句,要么由较早两行用一次归结得到,末行为空子句 ⊥ 。空子句在每个赋值下为假,所以它见证 F 不可满足。
规则可靠,因为任何同时满足两个前提子句的赋值,无论令 x 为真还是假,都必须满足 C ∨ D 。归结对不可满足 CNF 也完备:若 F 无满足赋值 公理库 可满足公式 Satisfiable formula 存在至少一个真值赋值使其为真的命题公式。 ,总能通过有限归结导出空子句。固定行编码、父行编号和 pivot 后,每步可在多项式时间检查;把 F 的反驳编码成 ¬ F 的证明,得到针对 CNF 否定式的证明系统。要成为覆盖全部 TAUT 的Cook–Reckhow 系统 公理库 Cook–Reckhow 命题证明系统 Cook–Reckhow proof system · Propositional proof system 以多项式时间可验证、恰好生成全部命题永真式为条件的抽象证明系统。 ,还须固定任意 φ 到 E ( ¬ φ ) 的等可满足 CNF 编码,接受的证书是这个 CNF 的归结反驳,输出则是原公式 φ 。否则只证明一种语法的永真式,尚未满足全部 TAUT 的满射要求。
直觉
一条归结推理消去一个二择变量。第一前提说“若 x 为假,就必须靠 C ”;第二前提说“若 x 为真,就必须靠 D ”。不论怎样选择 x ,剩余赋值都要让 C 或 D 成立,所以可以把 x 从结论中消去。反驳不断压缩所有可能分支,直到得到没有任何文字可挽救的空子句。
这种局部性既是力量也是限制。验证者只需比较两行和一个 pivot,归结因而非常适合 SAT 求解器的冲突证书;但每行只能表达一个析取子句,无法像一般 Frege 证明那样把任意嵌套公式作为中间引理。证明复杂度下界正是量化:一个不可满足公式虽没有模型,要让这种单一行语言暴露矛盾,可能需要多少子句、多少宽度或多少次重复推导。
例子与边界
考虑
F = ( x ∨ y ) ∧ ( ¬ x ∨ y ) ∧ ( x ∨ ¬ y ) ∧ ( ¬ x ∨ ¬ y ) . 前两项以 x 为 pivot 归结得单位子句 y ;后两项归结得 ¬ y ;再以 y 归结得到空子句:
x ∨ y ¬ x ∨ y y , x ∨ ¬ y ¬ x ∨ ¬ y ¬ y , y ¬ y ⊥ . 图片加载失败 归结 DAG 导出空子句 这是三次推理、最大子句宽度为 2 的可手检反驳。它也说明方向:归结证明的输入是不可满足 CNF,输出不是某个“假赋值”,而是从所有子句推出矛盾。相应的永真式是 ¬ F ;把 F 自身误称为被证明的永真式会倒置语义。
完备性可按变量消元理解:选变量 x ,保留不含 x 的子句,把所有含 x 的子句与含 ¬ x 的子句两两归结,再删去含 x 的原子句。对剩余变量的每个赋值,所得公式恰好判断原公式能否通过选择 x 扩展为满足赋值。若扩展的 x = 0 和 x = 1 都失败,就有一对前提的其余文字同时为假,其归结式也为假;反之,归结式全真便不会同时出现两种冲突要求。逐变量消元后,不可满足性只能表现为空子句。这个过程可能产生指数多子句,所以完备性没有给出短反驳。
归结完备性依赖先把公式放进 CNF。Tseitin 编码引入辅助变量后通常只保持等可满足性,而非原变量上逐赋值同值;证明长度比较必须把编码规模计入。不同定义可能允许 weakening、删去永真子句或把同一子句重复登记,这些约定通常可多项式互译,却会改变精确的行数。对子句数的下界若不声明计数节点、推理步还是总文字数,也没有可复核含义。
推论与应用
树形归结 公理库 树形归结 Tree-like resolution 每个导出子句至多被后续一步使用、因而证明依赖图为树的归结限制。 禁止共享已导出子句,DAG 形归结 公理库 DAG 形归结 DAG-like resolution · General resolution 允许已导出子句被多个后续步骤共享的一般归结证明表示。 允许一个引理被多次引用;二者使用同一局部规则,却有不同的全局资源。归结宽度 公理库 归结宽度 Resolution width · Clause width in resolution 以证明中最大子句文字数衡量归结反驳所需的局部表达宽度。 记录反驳中最宽的子句,规模—宽度权衡 公理库 归结的规模—宽度权衡 Resolution size-width tradeoff · Ben-Sasson–Wigderson theorem 将一般归结的短证明转化为窄证明,并把宽度瓶颈转换为规模下界。 把某些宽度下界转成长度下界。这些指标共同解释为什么“规则只有一行”仍能产生精细的复杂度层次。
现代 CDCL SAT 求解器的冲突分析和 clause learning 可输出归结式证书;带 restart 的理想化 CDCL 与一般归结之间存在多项式模拟结果,但具体结论依赖学习方案、分支规则与是否允许擦除。工程求解速度也不等于短归结证明:预处理、扩展变量、异或推理或专用理论传播可能已经越出纯归结模型,认证时必须把这些步骤展开或交给更强的证书格式。
参考资料
John Alan Robinson, “A Machine-Oriented Logic Based on the Resolution Principle,” Journal of the ACM 12(1), 1965, pp. 23–41, resolution rule and completeness.
Armin Haken, “The Intractability of Resolution,” Theoretical Computer Science 39, 1985, pp. 297–308.
Jan Krajíček, Proof Complexity , Cambridge University Press, 2019, Chapter 4, resolution.