far(peter,jeppe). far(peter,lotte). mor(else,jeppe). mor(else,lotte). far(jeppe,estrid). mor(lotte,erik). mor(lotte,ida). han(peter). han(jeppe). han(erik). hun(else). hun(estrid). hun(ida). hun(lotte). farfar(Aeldre,Yngre) :- far(Aeldre,Mellem),far(Mellem,Yngre). farmor(Aeldre,Yngre) :- mor(Aeldre,Mellem),far(Mellem,Yngre). morfar(Aeldre,Yngre) :- far(Aeldre,Mellem),mor(Mellem,Yngre). mormor(Aeldre,Yngre) :- mor(Aeldre,Mellem),mor(Mellem,Yngre). soen(Yngre,Aeldre) :- han(Yngre),far(Aeldre,Yngre). soen(Yngre,Aeldre) :- han(Yngre),mor(Aeldre,Yngre). datter(Yngre,Aeldre) :- hun(Yngre),far(Aeldre,Yngre). datter(Yngre,Aeldre) :- hun(Yngre),mor(Aeldre,Yngre). bedstemor(Aeldre,Yngre) :- mormor(Aeldre,Yngre). bedstemor(Aeldre,Yngre) :- farmor(Aeldre,Yngre). bedstefar(Aeldre,Yngre) :- morfar(Aeldre,Yngre). bedstefar(Aeldre,Yngre) :- farfar(Aeldre,Yngre). barnebarn(Yngre,Aeldre) :- bedstemor(Aeldre,Yngre). barnebarn(Yngre,Aeldre) :- bedstefar(Aeldre,Yngre). soennesoen(Yngre,Aeldre) :- soen(Yngre,Mellem), soen(Mellem,Aeldre). datterdatter(Yngre,Aeldre) :- datter(Yngre,Mellem), datter(Mellem,Aeldre). soeskende(A,B) :- far(X,A), far(X,B), not(A = B). soeskende(A,B) :- mor(X,A), mor(X,B), not(A = B).