Я использую SWI-Prolog
У меня есть списки, подобные этому
[sunny,hot,high,weak,no]
и
[outlook,temperature,humidity,wind,play_tennis]
Я хочу создать предикат вроде
run(no, [outlook=sunny, temp=hot, humidity=high, wind=weak ]).
Возможно ли это?
Да, но вам нужно будет реализовать соответствующий алгоритм машинного обучения (ваш пример выглядит так же, как в учебнике по машинному обучению Митчелла, это домашнее задание?).Вы можете использовать оператор =.., чтобы превратить список в предикат, что может помочь вам, если я неправильно понял ваш исходный вопрос.Другими словами, A=..[a,b,c] связывает a(b,c) с A
=..
A=..[a,b,c]
a(b,c)
A