Predicate logic from formula to English

32 Views Asked by At

I study for an exam and I have this exercise that I've practiced

Let: Monkey(x) = "x is a monkey"

Likes(x, y) = "x likes y"

∃x (Monkey(x) ∧ ∀y(Monkey(y) ∧ x ̸= y ⇒ Likes(y, x)))

My response:

There exists someone to like all monkeys, but not all monkeys like every one.

I could use some feedback, please.

2

There are 2 best solutions below

1
On BEST ANSWER

Let's write

A=Monkey(x)

B=∀y(Monkey(y) ∧ x ̸= y ⇒ Likes(y, x))

We look at "∃x(A and B)". So there exists x such that A and B both holds.

By A, x is a monkey.

By B, we know the following fact: "if y is a monkey and y is not x, then y likes x".

As a conclusion, we obtain that: "there is a monkey (let's call him x) such that every other monkey likes him (i.e. any monkey that is not x likes x) . "

0
On

Propositional logic and its variable cousain, the predicate logic is not able to model all predicates in natural language, including that of English.

This is one motivation for higher order logic. And in fact, this is a form of set theory with one inaccessible cardinal. But as a language, it is more expressible.