«Или» процедура в прологе

Я делаю прологическую программу для колледжа, которая немного похожа на игру cluedo. У меня шесть подозреваемых с разными чертами:

suspect(Name, Age, Weapon, Shape, Object, Shoes)

Цель состоит в том, чтобы реализовать ряд подсказок, чтобы в программе говорилось, какие разные черты у всех шести подозреваемых. Например: я

suspect(Hannibal Lecter,67,knife,'in good shape',mac,'high heels')

у меня возникли проблемы, пытаясь реализовать ключ

or(suspect1, suspect2, suspect3, listOfSuspects)

Эта подсказка должна сказать, чтоsuspect1 имеет те же черты, что иsuspect2 ИЛИ какsuspect3 но не оба. Пример: Чтобы указать, что подозреваемый, которому 50 лет, имеет кольцо или макинтош, но не оба:

or(suspect(_, 50, _, _, _, _),
   suspect(_, _, _, _, ring, _),
   suspect(_, _, _, _, mac, _), listOfSuspects).

Любая помощь будет оценена.

Ответы на вопрос(1)

Ваш ответ на вопрос