I'm new to predicate logic and I'm not sure if I understand it.
Could someone verify my solutions? If something is wrong, please tell me why and how it can be improved.
Express the sentences in predicate logic:
- Some people feel offended when they hear the truth.
ƎX∀Y(says_true(Y,X) ⇒ feels_offended(X,Y))
or
ƎX(hears(X, truth) ⇒ feels_offended(X))
I'm not sure which one is better.
- Enemies of our enemies are our friends.
∀X∀Y∀Z(enemies(X,Y) ∧ enemies(Y,Z) ⇒ friends(X,Z))
- A brother of ones father is his uncle.
∀X∀Y∀Z(brother(X,Y) ∧ father(Y,Z) ⇒ uncle(X,Z))
- There are animals that do not have natural enemies.
ƎX∀Y(is_animal(X) ⇒ ¬natural_enemies(X, Y))
- There are some who raise children of other people.
ƎXƎY(¬is_parent(X,Y) ∧ is_raising(X,Y))
- If a politician has supporters, he also has haters.
∀XƎYƎZ(is_politician(X) ∧ supporter(X,Y) ⇒ hater(X,Z))