Prolog, есть ли здесь ошибки?
domains
s=symbol
predicates
parent(s,s).
male(s).
female(s).
greatgrandfather(s,s).
mother(s,s).
son(s,s).
sister(s,s).
happy(s).
clauses
Parent(ann,olga).
Parent(ann,ben).
Parent(bob,olga).
Parent(bob,ben).
Parent(olga,pam).
Parent(olga,mikl).
Parent(ben,selina).
Parent(kelly,selina).
Parent(selina,david).
Parent(pam,alex).
Male(bob).
Male(ben).
Male(mikl).
Male(alex).
Male(david).
Female(ann).
Female(olga).
Female(kelly).
Female(pam).
Female(selina).
greatgrandfather(x,y):-Parent(x,u),Parent(u,z),Parent(z,y),male(x).
son(x,y):-Parent(y,x),male(x).
mother(x,y):-Parent(x,y),female(x).
happy(x):-Parent(x,y).
sister(x,y):-Parent(z,x),Parent(z,y),female(x).