- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
将下面的公式翻译成斯科伦形式的喇叭公式:
∀w¬∀x∃z(H(w)∧(¬G(x,x)∨¬H(z)))
它是从德文翻译成英文的,如何将它写成喇叭形式然后再写成 skolem 形式,我在互联网上没有找到任何东西......请帮助我
最佳答案
我将始终使用 skolemization 的可满足性保留版本,即那些被替换的版本,当移动到公式的头部时将成为存在量词。
为了让生活更简单一些,让我们把否定推向原子。我们还可以看到 w 没有出现在 ¬G(x,x)∨¬H(z) 中,x,z 也没有出现在 H(w) 中,这让我们可以在内部分配量词。
然后我们得到公式∀w¬H(w) ∨ ∃x∀z (G(x,x)∧ H(z)) 。
我们对∃x进行skolem化并删除∀w,∀z并获得:
¬H(w) ∨ (G(c,c)∧ H(z))
经过CNF变换后,我们有:
(¬H(w) ∨ G(c,c)) ∧ (¬H(w) ∨ H(z))
两个子句都只有一个正字面量,所以它们都是喇叭子句。翻译成 Prolog 语法我们得到:
g(c,c) :- h(W).
h(Z) :- h(W).
我们必须在 skolemize 之前取反,导致:
∃w H(w) ∧ ∀x∃z (¬G(x,x) ∨ ¬H(z))
对∃w和∃z进行skolemizing,删除∀x和CNF变换后,我们得到:
H(c) ∧ (¬G(x,x) ∨ ¬H(f(x)))
这可以解释为一个事实 h(c)
和一个查询 ?- g(X,X), h(f(X))。
老实说,这两种变体都没有多大意义 - 第一个变体不会因任何输入而终止,而在第二个版本中,查询将失败,因为 g/2
未定义。
关于prolog - 如何写成 skolem 形式?(Prolog),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48634301/
我的老师要我写一个函数,它获取一个整数值 N 并返回长度为 2n 的数组,并包含该值的一个 skolem 序列。 例如:function(4) 将返回 {4,2,3,2,4,3,1,1} 我不知道该怎
(∀u∃v a(u,v)) ∧ (∀x∃y a(x,y)) 的斯科勒化形式是什么? 我不确定,因为可能存在不同的 perenex 范式: ∀u∃v ∀x∃y (a(u,v) ∧ a(x,y)) ∀u∀
将下面的公式翻译成斯科伦形式的喇叭公式: ∀w¬∀x∃z(H(w)∧(¬G(x,x)∨¬H(z))) 它是从德文翻译成英文的,如何将它写成喇叭形式然后再写成 skolem 形式,我在互联网上没有找到任
将下面的公式翻译成斯科伦形式的喇叭公式: ∀w¬∀x∃z(H(w)∧(¬G(x,x)∨¬H(z))) 它是从德文翻译成英文的,如何将它写成喇叭形式然后再写成 skolem 形式,我在互联网上没有找到任
根据 What are skolems? ,这有效: {-# LANGUAGE ExistentialQuantification #-} data AnyEq = forall a. Eq a =>
我是一名优秀的程序员,十分优秀!