weiblich(christine). weiblich(monika). weiblich(susanne). weiblich(angelika). weiblich(maria). maennlich(heinz). maennlich(herbert). maennlich(robert). maennlich(hubert). maennlich(andreas). maennlich(fritz). verheiratet(christine,heinz). verheiratet(monika,herbert). verheiratet(angelika,hubert). verheiratet(maria,fritz). istMutterVon(christine,herbert). istMutterVon(christine,angelika). istMutterVon(monika,susanne). istMutterVon(monika,robert). istMutterVon(angelika,andreas). istMutterVon(maria,herbert). istVaterVon(Vater,Kind) :- verheiratet(Mutter,Vater), istMutterVon(Mutter,Kind). istKindVon(Kind,Mutter) :- istMutterVon(Mutter,Kind). istKindVon(Kind,Vater) :- istVaterVon(Vater,Kind). istEnkelVon(Enkel,OmaOderOpa) :- istKindVon(Enkel,MutterOderVater), istKindVon(MutterOderVater,OmaOderOpa). istOmaVon(Oma,Enkel) :- weiblich(Oma), istEnkelVon(Enkel,Oma). istOpaVon(Opa,Enkel) :- maennlich(Opa), istEnkelVon(Enkel,Opa). geschwister(Kind1,Kind2) :- istMutterVon(Mutter,Kind1), istMutterVon(Mutter,Kind2), dif(Kind1,Kind2). istSchwesterVon(Schwester,Kind) :- weiblich(Schwester), geschwister(Schwester,Kind). istBruderVon(Bruder,Kind) :- maennlich(Bruder), geschwister(Bruder,Kind). istSchwaegerinVon(Schwaegerin,Person) :- verheiratet(Schwaegerin,Ehemann), geschwister(Ehemann,Person). istSchwagerVon(Schwager,Person) :- verheiratet(Ehefrau,Schwager), geschwister(Ehefrau,Person). istTanteVon(Tante,Kind) :- istSchwesterVon(Tante,MutterOderVater), istKindVon(Kind,MutterOderVater). istTanteVon(Tante,Kind) :- istSchwaegerinVon(Tante,MutterOderVater), istKindVon(Kind,MutterOderVater). istOnkelVon(Onkel,Kind) :- istBruderVon(Onkel,MutterOderVater), istKindVon(Kind,MutterOderVater). istOnkelVon(Onkel,Kind) :- istSchwagerVon(Onkel,MutterOderVater), istKindVon(Kind,MutterOderVater). geboren(christine, datum(1,6,1927)). geboren(monika, datum(1,4,1954)). geboren(susanne, datum(26,9,1977)). geboren(angelika, datum(23,2,1960)). geboren(maria, datum(24,12,1936)). geboren(heinz, datum(29,2,1924)). geboren(herbert, datum(23,2,1960)). geboren(robert, datum(13,3,1981)). geboren(hubert, datum(17,4,1952)). geboren(andreas, datum(11,11,1984)). geboren(fritz, datum(10,7,1932)). % geboren(Person, datum(1,4,_)). % geboren(Person, datum(_,_,1960)). zwilling(Person) :- zwillinge(Person,_). zwillinge(Kind1,Kind2) :- geschwister(Kind1,Kind2), geboren(Kind1,Datum), geboren(Kind2,Datum). geburtstag(Tag,Monat) :- geboren(_,datum(Tag,Monat,_)).