Пример 6.7. Правила с символьными ограничениями

(defrule Find-data

(data 1 blue red)

=>

(printout t crlf "Found data (data 1 blue red)" crlf))

(defrule Find-Bob-20

(person (name Bob) (age 20))

=>

(printout t crlf "Found Bob-20 (person (name Bob) (age 20))" crlf))

(defrule Find-Bob-30

(person (name Bob) (age 30))

=>

(printout t crlf "Found Bob-30 (person (name Bob) (age 30))" crlf))

Выполните команды reset и run. Вы должны получить результат, приведен­ный на рис. 6.5.

Рис. 6.5. Выполнение правил с символьными ограничениями

Как мы видим, были активированы и выполнены два правила: Find-data и Find-Bob-20. Это произошло потому, что образцы, заданные в левой части этих правил, нашли в списке фактов данные, полностью соответствующие заданным символьным ограничениям.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: