这些 FOL 公式是否都代表“你可以一直愚弄一些人”?

人工智能 逻辑 象征性的ai
2021-11-05 21:36:38

你可以一直愚弄一些人。

这可以在 FOL 中表示如下

(1)xt(person(x)time(t))can-fool(x,t)

xtcan-fool(person(x),time(t))相当于 (1) ?

1个回答

(1) 可以解释为“存在一个x,并且对于任何t如果x是一个人而t是一个时间,那么x可以在时间t被愚弄”(我会使用Fool-able而不是can-fool,因为它更接近预期的含义)。

(2) 将是“存在一个x,并且对于任何t,您可以愚弄x是一个人,而t是一个时间。”

它们是不等价的:person(x)time(t)是布尔谓词,它们返回一个真值:如果x是一个人,并且t是一个时间,它们分别为真。因此,在 (1) 中,它们充当了xt可以采用的值的约束。如果x是一个平底锅,那么person(x)将是错误的,因此您将无法声称您可以欺骗一个平底锅。

所以can-fool有两个论据:一个是真实的,一个时间是真实的。但在 (2) 中,参数实际上是布尔真值:如果x是“Falstaff”并且t是“昨天”,那么在 (1) 中,前提将是真的,如person("Falstaff")time("昨天")是真的,所以你得出结论can-fool("Falstaff", "yesterday")

在 (2) 中,它变为can-fool(person("Falstaff"), time("yesterday")),其计算结果为can-fool(true, true),这将不起作用。