Я пытаюсь создать программу, в которой seat(Guests, Seating)
удерживается, если люди в списке «Гости» могут быть перегруппированы в список «Размещение», чтобы каждый из них был совместим с теми, кто находится по обе стороны.
У меня есть факты для каждого человека:
topics(neil, [diving, football, computers, hockey]).
и т.д...
У меня также есть общий предикат - правило, которое проверяет, есть ли у двух людей общая тема.
common(Person1, Person2, Topic)
Мне придется использовать встроенный предикат выбора и мой общий предикат, определенный пользователем, но я не уверен, как это сделать.
Может кто-нибудь предоставить подходящее решение или объяснение, пожалуйста?