Artificial intelligence 如何将这个句子转换成一阶逻辑格式良好的公式?

Artificial intelligence 如何将这个句子转换成一阶逻辑格式良好的公式?,artificial-intelligence,logic,nlp,first-order-logic,Artificial Intelligence,Logic,Nlp,First Order Logic,我试图用一阶逻辑(谓词逻辑)将下面的句子转换成一个格式良好的公式 所有的塔都是同一种颜色 我定义了以下谓词: 塔(x)::x是一座塔 颜色(x,y)::x是y的颜色 我无法使用上述谓词将上述句子转换为格式良好的公式。是否可以使用上述谓词转换它,或者需要一些新的谓词。请告知 编辑:忘记添加详细信息。世界上只有三种颜色(红、绿、蓝)。这个细节可以用吗。这对解决方案有什么影响吗?存在一个Y1,因此对于所有的X塔(X)意味着颜色(X,Y1)我们不要假设存在任何塔或颜色 tower(x) ∧ tower(

我试图用一阶逻辑(谓词逻辑)将下面的句子转换成一个格式良好的公式

所有的塔都是同一种颜色

我定义了以下谓词:

塔(x)::x是一座塔

颜色(x,y)::x是y的颜色

我无法使用上述谓词将上述句子转换为格式良好的公式。是否可以使用上述谓词转换它,或者需要一些新的谓词。请告知


编辑:忘记添加详细信息。世界上只有三种颜色(红、绿、蓝)。这个细节可以用吗。这对解决方案有什么影响吗?

存在一个Y1,因此对于所有的X塔(X)意味着颜色(X,Y1)

我们不要假设存在任何塔或颜色

tower(x) ∧ tower(y) ∧ color(x,z) → color(y,z)

在StackOverflow上发布了这篇文章之后,我意识到这个问题更适合于其他人。所以我把问题转告了那里


虽然Dave的解决方案是完全正确的,但在那里发布的解决方案似乎更直观,因此我将其链接以供其他用户参考。

我已经想到了这一点,但请您解释一下,它如何限制所有此类塔楼的颜色应相同。正如您使用了存在量词来量化变量Y1,表示“至少”有一个Y1。不是“至多”,这就是我认为句子的意义应该如何发音的。“强调,我会说你的“至多”部分是由戴维的回答所涵盖的,因为如果你认为Y1和Y2满足他的属性,那么采取一些X,这样的塔(X),我们有颜色(x,y1)和颜色(x,y2)。假设一座塔只能有一种颜色,则得到Y1=Y2。当然,我们在这里假设存在一座塔。@Dunaril如果我错了,请纠正我。假设我们的世界上有两座塔x1,x2。现在使用大卫的公式,我们可以得到颜色(x1,y1)和颜色(x2,y2)。但我们不希望这样,我们希望设置一个约束,使x1和y1的颜色都相同。@Dunaril:不需要假设塔的存在。即使颜色的存在也不需要假设,如果公式的前缀是“如果存在X和Y,那么塔(X)和颜色(X,Y),那么……”强调的是geek:约束是David的公式,因为根据该公式和颜色(x1,y1)和颜色(x2,y2),可以得出y1=y2。它们是表示同一实体(单一颜色)的不同变量。家庭作业标签在哪里?不知道存在这样的标签。无论如何,现在更新了标签。非常感谢。