开发者

Representing a sentence in FOL

How to represent the following sentence in FOL ( First Order Logic ) "There is an animal which only eats meat"

Is the following repre开发者_开发技巧santaion true ?

Ǝx Eats(x, meat) where x is animal


No, it's not entirely correct. As pointed out in the comments by Gabe, your expression does not exclude the possibility of x eating other things as well. You'll need to add a conjunct that excludes all foodstuffs that aren't meat. How you do this depends a bit on which kind of logic you're using.


Could he just say:

-Eats(x, y) ^ y != meat

implying meat is the only thing the animal doesn't not eat?

Pretty pessimistic view, but it gets the job done, haha.


One minor correction would make it corrrect. It would look a little silly though. Make Eats into OnlyEats.


I think that a simple way to represent the sentence is:

Ǝx∀y (Animal(x) ∧ Eats(x,y)) --> Meat(y)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜