1
1)
2)
3)
predicates
parent(String,String)
man(String)
woman(String)
married(String,String)
plem(String,String)
uncle(String,String)
mother(String,String)
grandma(String,String)
father(String,String)
grandfa(String,String)
son(String,String)
brother(String,String)
Clauses
man(evgeniy).
man(vlad).
man(iliya).
man(yan).
man(sergey).
man(valera).
man(vova).
man(igor).
man(aleksandr).
woman(tania).
woman(anna).
woman(olga).
parent(evgeniy,vlad).
parent(evgeniy,iliya).
parent(olga,vlad).
parent(olga,iliya).
parent(iliya,yan).
parent(iliya,sergey).
parent(aleksandr,evgeniy).
parent(aleksandr,valera).
parent(aleksandr,vova).
parent(valera,tania).
parent(vova,igor).
parent(vova,anna).
married(evgeniy,olga).
grandma(X,Y):-mother(X,Z),parent(Z,Y).
mother(X,Y):-woman(X),parent(X,Y).
father(X,Y):-man(X),parent(X,Y).
son(X,Y):-man(Y),parent(X,Y).
uncle(X,Y):-man(X),brother(X,Z),parent(Z,Y).
grandfa(X,F):-parent(X,Y),parent(Y,F),man(X).
brother(X,Y):-parent(Z,X),parent(Z,Y),man(X),X<>Y.
plem(X,F):-parent(Z,F),man(F),parent(P,X),parent(P,Z),Z<>X.
print.
%GOAL
%print,
%readln(I).