erro :- gerou(X,A), gerou(Y,A), gerou(Z,A), X \= Y, Y \= Z, Z \= X. erro :- gerou(X,A), sexo(X,S), gerou(Y,A),sexo(Y,S). filha_de(Pai,Mae,Filha) :- gerou(Pai,Filha), sexo(Pai,masculino), gerou(Mae,Filha), sexo(Mae,feminimo), sexo(Filha,feminino). filho_de(Pai,Mae,Filho) :- gerou(Pai,Filho), sexo(Pai,masculino), gerou(Mae,Filho), sexo(Mae,feminimo), sexo(Filho,masculino). com_harem_sem_herdeiros(X) :- sexo(X,masculino), not(filho_de(X,_,_)), filha_de(X,Y,_), filha_de(X,Z,_), Z \= Y. %---------------------- lista([]). lista([_|_]). so_pares([],[]). so_pares([A|B],[X|Y]) :- lista(A),!, so_pares(A,X), so_pares(B,Y). so_pares([A|B],[A|Y]) :- par(A),!, so_pares(B,Y). so_pares([A|B],Y) :- so_pares(B,Y).