命题逻辑的归结
将逻辑公式转换成合取范式(CNF)的方法:
1.消去{}以外的逻辑联结词。
常见联结词的转换方法:
2.利用德摩根律将否定联结词内移到命题变量之前,消去双重否定。
3.利用分配律化成合取范式。
例: 求的合取范式。
例: 求的合取范式。
一个合取范式是永真式,当且仅当它的每个基本和都是永真式。
一个基本和是永真式,当且仅当至少含有一个命题变量及其否定。
一个子句(Clause)是一个文字集合中所有元素的析取。
一个单位子句(Unit Clause)的文字集合仅含一个文字。
一个空子句(Empty Clause )的文字集合是空集。空子句记为.
一个公式可以表示成含有若干个子句的集合的形式, 称为子句标准形(Clause Form)。该公式的真值是子句标准形中所有子句的合取。
子句标准形可以是空集,记为.
每个公式都可以转换成子句标准形, 因为子句标准形与合取范式是对应的。
例:
合并子句中的相同元素,可化简为:
合并相同的子句,可化简为:
对应的子句标准形是:
子句标准形也可以表达成缩写形式:
如果一个子句仅包含一对互补的文字,称该子句是平凡的(Trivial).
平凡子句是永真式, 空子句是永假式。
空子句集是永真式。
在子句标准形中, 归结(Resolution)是将包含互补文字的两个子句 ()和 ()转化为一个子句的操作。转化后的子句是:
例:
例:
定理: 是可满足的,当且仅当子句和都是可满足的。
称与是等可满足性的(Equisatisfiable), 用≈表示。
时都为假; 都为真;
都可满足; 都可满足。
归结过程不唯一