I'm having a lot of trouble with translating this statement into predicate logic and I'm not sure how to go about it anymore. I'll give an example of what I think but any help would be much appreciated.

There is a child who has a parent that owns a restaurant that employs every teenager.

The predicates are child, parent, owns, employs, teenager, and restaurant.

$$ \exists w \exists x \exists y \forall z ((\operatorname{child}(w) \wedge \operatorname{parent}(x,w) \wedge \operatorname{restaurant}(y) \wedge \operatorname{teenager}(z)) \implies \operatorname{employs}(x,z) \wedge \operatorname{owns}(x, y)) $$

I'm almost positive this is 100% wrong but this is only my third day translating english statements to predicate logic, so please forgive me. I really need help.

Thank you.

  • 1
    $\begingroup$ Please use variable names that make sense. C for child, P for parent, R for restaurant, T for teenager. It will make things much easier for you too. $\endgroup$ – DanielV Nov 6 '13 at 3:10
  • 1
    $\begingroup$ @DanielV I'm not sure how it would make things easier. It's just simplifying the names of the predicates, that's all. $\endgroup$ – Requiem Nov 6 '13 at 3:49

Not quite. There is a child who has a parent who owns a restaurant and everybody/everything in the universe of discourse (including the restaurant and the child and the parent!) is a teenager and is employed by the parent.

EDIT: Now that you changed it, it says there exist $w$, $x$ and $y$ such that for some $z$, if $w$ is a child and $x$ is that child's parent and $y$ is a restaurant and $z$ is a teenager then that parent owns that restaurant and employs that teenager. For example, the statement $$(child(w) \wedge parent(x,w) \wedge restaurant(y) \wedge teenager(z)) \implies employs(x,z) \wedge owns(x, y)$$ would be true whenever $w$ is not a child or $x$ is not $w$'s parent or $y$ is not a restaurant or $z$ is not a teenager.

I think what you want is

$$ \exists w \exists x \exists y \forall z \ child(w) \wedge parent(x,w) \wedge restaurant(y) \wedge owns(x,y) \wedge (teenager(z) \implies employs(x,z))$$

  • $\begingroup$ So is the overall structure right and just a small change needs to be made or what? And how would I go about writing it this way I guess? >.< $\endgroup$ – Requiem Nov 6 '13 at 3:22

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.