translate sentences into logic

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)  ...?


• There seems to be an implicit assumption that the parents of dragons are dragons. – Git Gud May 26 '14 at 22:52
• 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.) – 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})$$

• 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". – Git Gud May 26 '14 at 22:57
• 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. – mweiss May 27 '14 at 12:45
• There is no misinterpretation that is what the sentence says. – 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)$

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