%-----------------Daten--------------------- %maenlich m(x) m(phillip). m(charles). m(william). m(harry). m(george). m(louis). m(archie). m(andrew). m(edward). %weiblich w(x) w(elizabeth). w(diana). w(catherine). w(meghan). w(charlotte). w(sarah). w(beatrice). w(eugenie). %X ist Elternteil von Y p(X,Y) p(elizabeth, charles). p(elizabeth, andrew). p(elizabeth, edward). p(phillip, charles). p(phillip, andrew). p(phillip, edward). p(diana, william). p(diana, harry). p(charles, william). p(charles, harry). p(catherine, george). p(catherine, charlotte). p(catherine, louis). p(william, george). p(william, charlotte). p(william, louis). p(meghan, archie). p(harry, archie). p(sarah, beatrice). p(sarah, eugenie). p(andrew, beatrice). p(andrew, eugenie). %-----------------Regeln--------------------- %X ist Vater von Y vater(X,Y) :- p(X,Y),m(X). %X ist Mutter von Y mutter(X,Y) :- p(X,Y),w(X). %X ist Sohn von Y sohn(X,Y) :- p(Y,X),m(X). %X ist Tochter von Y tochter(X,Y) :- p(Y,X),w(X). %X ist Bruder von Y, P Vater, M Mutter bruder(X,Y) :- p(P,X),p(P,Y),p(M,X),p(M,Y),m(X),X\=Y, M\=P. %X ist Schwester von Y, P Vater, M Mutter schwester(X,Y) :- p(P,X),p(P,Y),p(M,X),p(M,Y),w(X),X\=Y, M\=P. %X ist Onkel von Y, H ist Parent von Y bzw. Bruder von X onkel(X,Y) :- p(H,Y),bruder(X,H). %X ist Tante von Y, H ist Parent von Y bzw. Schwester von X tante(X,Y) :- p(H,Y),schwester(X,H). %X ist Cousine von Y, A & B sind geschwister cousine(X,Y) :- p(A,X),p(B,Y),A \= B,bruder(A,B), w(X). cousine(X,Y) :- p(A,X),p(B,Y),A \= B,schwester(A,B), w(X). %X ist Cousin von Y, A & B sind geschwister cousin(X,Y) :- p(A,X),p(B,Y),A \= B,bruder(A,B), m(X). cousin(X,Y) :- p(A,X),p(B,Y),A \= B,schwester(A,B), m(X). %X ist Großvater von Y grossvater(X,Y) :- vater(X,H),p(H,Y). %X ist Großmutter von Y grossmutter(X,Y) :- mutter(X,H),p(H,Y).