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 animalNo, 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)
精彩评论