在一阶逻辑中,我知道规则。但是,每当我将一些句子转换为 FOL 时,我都会出错,我阅读了很多书籍和教程,你有什么技巧可以帮助我吗?
我犯错误的一些例子
有些孩子会吃任何食物
C(x) means “x is a child.”
F(x) means “x is food.”
Eat(x,y) x eats y
I would have written like this:
(∃x)(∀y) C(x) ∧ Eat(x,y)
edit: (∃x)(∀y) C(x) ∧ F(y) ∧ Eat(x,y)
But the book write it like this
(∃x)(C(x) ∧ (∀y)(F(y)→Eat(x,y)))
编辑 No2:我犯的第二类错误:海龟比兔子更长寿。
i'm writing it like this: ∀x,y Turtle(x) ∧ Rabbit(y) ∧ Outlast(x,y)
but according to the book ∀x,y Turtle(x) ∧ Rabbit(y) --> Outlast(x,y)
当然,我同意这本书,但是我的版本有什么问题吗?