Я работаю над созданием генеалогического древа в прологе. Где я нахожусь в беде, когда я звоню сестре или брату. Результаты, которые я получаю, верны, где Джули - сестра майка, Джули - сестра аманды, аманда - сестра Майка, а Аманда - сестра юли. Но что происходит, а не заканчивается там, если я продолжаю ударять по ключу «n», он снова проведет повторную проверку результатов. Почему это происходит?Пролог - генеалогическое дерево
parent(pete,mike).
parent(pete,julie).
parent(pete,amanda).
parent(mary,mike).
parent(mary,julie).
parent(mary,amanda).
female(mary).
female(julie).
female(amanda).
male(mike).
male(pete).
mother(X,Y):-
parent(X,Y),
female(X).
father(X,Y):-
parent(X,Y),
male(X).
sibling(X,Y):-
parent(Z,X),
parent(Z,Y),
X\=Y.
sister(X,Y):-
sibling(X,Y),
female(X).
brother(X,Y):-
sibling(X,Y),
male(X).
Как бы я так сказал? – OmonoiatisUSa
@OmonoiatisUSa Как вы это сделали, просто добавьте еще два «родительских» подзаголовка в определение 'sibling' (и не забудьте сказать, что« Parent1 »и« Parent2 »не совпадают). –
Да, я знаю, это звучит глупо, но я все еще не уверен, как:/ты не возражаешь, показывая мне? – OmonoiatisUSa