#prolog
#пролог
Вопрос:
существует какая-то ошибка с правилами бабушки, двоюродного брата, брата, дяди я перепробовал так много правил, но все равно не смог найти правильное, оно возвращает false , пожалуйста, helpppppppppp
/*rules*/
male(james).
male(charles).
male(william).
female(megan).
male(george).
female(catherine).
female(diana).
female(elizabith).
parent(james, charles).
parent(james, elizabeth).
parent(charles, catherine).
parent(charles, william).
parent(charles, megan).
parent(elizabeth, diana).
parent(diana, george).
/*rules*/
father(X, Y) :- parent(X,Y), male(X).
mother(X, Y) :- parent(X,Y), female(X).
child(Y, X) :- parent(X, Y).
grandparent(X, Y) :- parent(X, Z), parent(Z, Y).
grandpa(X, Y) :- grandparent(X, Y), male(X).
grandma(X, Y) :- grandparent(X, Y), female(X).
brother(X, Y) :- male(X), parent(X, Z), parent(Y, Z), X = Y.
uncle(X, Y) :- brother(X, Z), parent(Y, Z).
grandchild(X, Y) :- grandparent(Y, X).
grandson(X, Y) :- grandchild(X, Y), male(X).
granddaughter(X, Y) :- grandchild(X, Y), female(X).
siblings(B,G) :- parent(P,B), parent(P,G), B=G.
cousins(X,Y) :- parent(A,X), parent(B,Y), siblings(A,B), X=Y.
Ответ №1:
Найдено: женщина (Элизабет). элизабет неправильно написана !
С этим исправлением ваш код должен работать как обычно. Я ответил на ваш запрос о помощи?