定理用A *算法证明

时间:2012-09-21 19:40:46

标签: artificial-intelligence theorem-proving

我正在为我的硕士学位做期末考试,这是过去考试的问题,这真的让我感到困惑,不知道从哪里开始。

我的想法是可接受的启发式解决规则,然后证明解决规则是可以接受的,是吗?如果是这样,为了证明解决规则是可以接受的,我应该从哪里开始?谢谢你的帮助。

考虑一个定理证明器应用程序。 A *算法可用于搜索最简单的算法 (最短)证明。假设已知的公理和定理在命题逻辑中表示为Horn子句的知识库,并且证明者使用后向链。

(a)提出可接受的启发式方法。

(b)证明提议的启发式是可以接受的

1 个答案:

答案 0 :(得分:4)

是的,theorm证明意味着它是一种解决方案。
Horn子句既可以是明确的子句,也可以是完整性约束。也就是说,Horn子句的头部有假或正常原子 完整性约束是形式
的一个条款 假←a1∧...∧ak。
完整性约束允许系统证明原子的某些结合在知识库的所有模型中都是错误的 - 也就是说,证明原子否定的分离 Horn子句知识库可能意味着对原子的否定 例如:考虑知识库KB1:

false←a∧b.
a←c.
b←c.

在KB1的所有模型中,原子c都是假的。如果c在KB1的模型I中为真,那么a和b在I中都是正确的(否则我不会是KB1的模型)。因为I中的false是假的,而I中的a和b都是真的,所以I中的第一个子句是假的,与我作为KB1的模型相矛盾。因此,在KB1的所有模型中c都是假的。这表示为 KB1¬c 这意味着在所有KB1模型中¬c都是正确的,因此在KB1的所有模型中c都是假的。