使用词典翻译成谓词逻辑 (PL)

Translation to Predicate Logic (PL) with lexicon

我想将以下语句转换为谓词逻辑:

推送系统的性能会因环境而异,但拉式系统的性能总是更好。

给出了以下词典:

P(x, y): x是y的表现

H(x): x 是一个推送系统

L(x): x 是拉式系统

E(x): x 是环境

V(x, y): x 会根据 y

B(x, y): x 永远比 y 好

我想到了这个翻译:

∃x(P(x, H(x)) ⇒ V(x, E(y)) ∧∀x(P(x, L(y)) ⇒ B(L(x), H( y))

但是,我被告知我不能提供谓词作为其他谓词的参数,因此我在上面所做的 P(x, H) 是不正确的。关于如何正确翻译声明的任何建议?谢谢。

我不确定这个问题是否适合 Whosebug。有两种不同的讨论:

  1. 如何使用上面的词汇表示法以逻辑形式表示这句话。

  2. 如何将文本自动翻译成该逻辑形式。

主要问题好像是怎么表示。我将用 P(x, H(x)).

来解释问题

根据您的词典,H(x) 代表 "x is a push system" 因此 H(x) 具有命题类型(也许您称之为 t-类型)。

为了更清楚,让我们把你问的表述 P(x, H(x)) 翻译回英文。 P(x, H(x)) ==> "x is the performance of H(x)" ==> "x is the performance of 'x is a push system'" ~~> "x is the performance of a proposision about x"

没有意义,因为H(x)代表的是命题,与x本身不同。

可能,您想要这样的东西:P(x, y) ∧ H(y)