Menu

Let the predicate P(x, y) mean x is a parent of y. You are allowed to use the quantifiers, the predicates P, =, and ̸=, logical operators and variables, and, in each part, the predicates from the pre…

Let the predicate P(x, y) mean x is a parent of y. You are allowed to use
the quantifiers, the predicates P, =, and ̸=, logical operators and variables, and, in each part, the predicates from the previous parts. For the purposes of the problem below, the notion of “sibling”
includes half-siblings. For long formulas, please add English-languages phrases explaining
what different parts of the formula are saying, so that graders can understand what
you mean. For example, underline a portion of the formula, or separate it on a line by itself,
and write next to it “this expresses that a is a cousin or a sibling of b.” Hint: it helps to draw
genealogical trees.
a) Define a predicate G(a, b) which is true when a is a grandparent of b.
b) Define a predicate S(a, b) which is true when a is a sibling of b (recall that a person is not their
own sibling).
c) Define a predicate A(a, b) which is true when a is an aunt or uncle of b (which means a is a
sibling of a parent of b).
d) Define a predicate C(a, b) which is true when a is a first cousin of b (which means parents of a
and b are siblings; think about the warning in part (b) and how it applies to this case).
e) Define a predicate R(a, b) which is true when a is a first cousin once removed of b (which means
a parent of a is a cousin of b, or a cousin of a is a parent of b).

OR