If I would like to translate the English sentence below into a predicate logic formula

"The parents of a green dragon are green"

Using predicates dragon, childOf and green, how would I go about this?

I understand that it may help to work the sentence into something that looks like logic, but I am getting stuck at how to represent "parents" as it is not a predicate.

Do either of these translations help me? Are they correct interpretations of the original sentence?

If a dragon is the child of green parents then it is green. All dragons who are children of green parents are green.

∀(X) . dragon(X) ∧ childOf(X)  ...?

please help. thank you in advance

  • $\begingroup$ There seems to be an implicit assumption that the parents of dragons are dragons. $\endgroup$ – Git Gud May 26 '14 at 22:52
  • $\begingroup$ I think the main idea is that "X is a child of Y" means the same thing as "Y is a parent of X". So instead of the "parentOf" predicate you can use the "childOf" predicate instead. (Note by the way that childOf must be a binary predicate.) $\endgroup$ – mweiss May 27 '14 at 0:09

$$\forall x (\exists y (y \text{is a green dragon} \wedge y \text{ is child of } x) \rightarrow x\text{is a green dragon})$$

  • $\begingroup$ You misinterpreted the statement, it should be understood as "If a dragon is a parent of (any) green dragon, then the first dragon is green". $\endgroup$ – Git Gud May 26 '14 at 22:57
  • $\begingroup$ I don't think there's anything in the statement that insists that only dragons can be parents of green dragons. Perhaps the parent of a green dragon is a green basilisk. $\endgroup$ – mweiss May 27 '14 at 12:45
  • $\begingroup$ There is no misinterpretation that is what the sentence says. $\endgroup$ – Rene Schipperus May 28 '14 at 1:25

I would use the following English paraphrase, which seems (to me) equivalent to the given formulation:

"For all x and y, if x is a dragon and x is green and x is a child of y, then y is green."


Being a parent is a relation. Let $D$ be the predicate of being a dragon, $G$ being the predicate of being green and $P$ being the "is a parent of" relation.

Then we have: $\forall x\forall y (G(x)\wedge D(x)\wedge P(y,x))\implies G(y)$

  • $\begingroup$ The OP has provided a different predicate to convey your $P$ and your parentheses are misplaced/missing. $\endgroup$ – Git Gud May 26 '14 at 23:05

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.