Я посещаю занятия по искусственному интеллекту, и мы работаем с программированием наборов ответов (в частности, Clingo). На данный момент мы говорим в основном о теории, и у меня возникают проблемы с разграничением моделей и наименьших моделей. У меня есть следующие определения:
Удовлетворяющие правила, модели, наименьшие модели и наборы ответов определенной программы
- Программа называется определенной, если в теле ее правил нет слова «не».
- Говорят, что множество S удовлетворяет правилу вида a :- b1,..., bm, а не c1,..., не cn. если его тело удовлетворяется S (т. е. b1 … bm находятся в S и ни одно из c1 … cn не принадлежит S), следует, что его голова должна удовлетворяться S (т. е. a находится в S).
- Говорят, что набор S удовлетворяет программе, если он удовлетворяет всем правилам этой программы.
- Набор S называется набором ответов определенной программы P, если (a) S удовлетворяет P (также называется S является моделью P) и (b) никакое строгое подмножество S не удовлетворяет P (т. е. S является наименьшая модель P).
С вопросом (снят со слайдов лекции, а не домашнего задания):
P is defined as:
a :- b,e.
b.
c :- d,b.
d.
Which of the following are models and least models?
{}, {b}, {b,d}, {b,d,c}, {b,d,c,e}, {b,d,c,e,a}
Может ли кто-нибудь дать мне знать, что ответ на вопрос выше? Я, вероятно, могу понять разницу оттуда, хотя, если бы кто-то мог объяснить разницу в просторечии (а не в определении из учебника), это было бы замечательно. Я не уверен, на каком форуме разместить этот вопрос - пожалуйста, дайте мне знать, если его следует разместить где-то еще.
Спасибо