Я впервые пробую Prolog, и у меня возникли небольшие трудности с использованием списков.
Скажем, я есть список элементов. Я хочу проверить, что в списке есть следующие элементы:
Все из: A1, A2, A3, A4, A5
Один из: B1, B2, B3, B4
Два из: C1, C2, C3, C4, C5, C6
Например, [A1, A2, B2, C1, A3, A4, C4, A5] соответствует требованиям, а [A2, A1, C1, B1, A3, A4] - нет.
Как я могу написать что-то, что возвращает Yes / True, если список соответствует требованиям, и No / False в противном случае ? Аналогичным образом, как насчет того, чтобы написать что-то, что возвращает недостающие значения из списка, необходимого для удовлетворения требований?