知识
Conjunctive Normal Form
Definitions:
literal
conjunctive normal form (CNF)
Note:
Examples of CNFs:
Not in CNF:
Validity of a Disjunction of Literals
Lemma:
Proof:
Satisfiability
Definition:
公式ψ是可满足的,如果存在对其命题原子的真值赋值,使得Φ为真。
Proposition:
这是一个简单但非常有用的结果。 Proof:
Useful Identities (Boolean Algebra)
A Procedure to Compute CNFs
我们提出了一种算法来计算与给定任意公式Φ等价的CNF公式。该算法是确定性的,并为任何公式计算唯一的CNF。
该算法描述为:
CNF(NNF(IMPL FREE(Φ)))
对于给定的公式Φ。稍后将讨论CNF、NNF和IMPL_FREE函数。
我们将公式转换为CNF,以便于检查其有效性。
为了检查CNF是否有效,我们只需检查每个共轭中是否有p而不是p。
IMPL_FREE
IMPL_FREE Example
NNF
NNF Example
DISTR
CNF
CNF Example
Horn Clauses
Horn Clauses具有有效的可满足性决定方法,是逻辑编程的基础。
Definitions:
Horn Clause
Horn formula
HORN
Theorem
定理:HORN算法是正确的:当给定的HORN公式是可满足的时,它总是终止,并且它的答案是“可满足的”。
Horn Clauses Examples
Examples (yes)
Examples (no)
作业
2.1 通过证明以下情况,补充命题逻辑的可靠性和完整性证明:
对于可靠性证明,请完成以下证明规则案例的证明:
对于完整性证明,请完成以下情况的证明:
2.2 将以下公式转换为CNF
Φ
¬(p⟶(¬(q⋀(¬p⟶(q⋀r)))))
IMPL_FREE
IMPL_FREE(Φ)=IMPL_FREE(¬(p⟶(¬(q⋀(¬p⟶(q⋀r)))))))
=¬(IMPL_FREE(p⟶(¬(q⋀(¬p⟶(q⋀r))))))[case ¬Φ]
=¬(¬IMPL_FREE(p)⋁IMPL_FREE(¬(q⋀(¬p⟶(q⋀r)))))[case Φ1⟶Φ2]
=¬(¬p⋁¬(IMPL_FREE(q⋀(¬p⟶(q⋀r)))))[case ¬Φ]
=¬(¬p⋁¬(IMPL_FREE(q)⋀IMPL_FREE(¬p⟶(q⋀r)))))[case Φ1⋀Φ2]
=¬(¬p⋁¬(q⋀¬IMPL_FREE(¬p)⋁IMPL_FREE(q⋀r)))[case Φ1⟶Φ2]
=¬(¬p⋁¬(q⋀¬¬IMPL_FREE(p)⋁IMPL_FREE(q)⋀IMPL_FREE(r)))[case ¬Φ][case Φ1⋀Φ2]
=¬(¬p⋁¬(q⋀p⋁q⋀r))
NNF
NNF(IMPL_FREE(Φ))=NNF(¬(¬p⋁¬(q⋀p⋁q⋀r)))
=NNF(¬(¬p)⋀¬(¬(q⋀p⋁q⋀r)))[case Φ1⋁Φ2]
=NNF(p⋀(q⋀p⋁q⋀r))
=NNF(p)⋀NNF(q⋀p⋁q⋀r)[case Φ1⋀Φ2]
=p⋀q⋀p⋁q⋀r
用Horn算法确定下列公式的)=可满足性