Оргправило системы MYCIN, записанное на языке CLIPS
Листинг 5.1. Оргправило системы MYCIN, записанное на языке CLIPS
(defrule diagnosis
(patient (name Jones)
(organism organism-1))
(organism (name organism-1)
(morphology rod)
(aerobicity aerobic)) =>
(assert
(organism
(name organism-1)
(identify enterobacteriaceae)
(confidence 0.8)))
На языке CLIPS представление правила имеет следующий формат:
(defrule <наименование правила>
<предпосылка1>
<предпосылка m >
=>
<действие 1>
<действие n>
(organism (name organism-1)
(identify enterobacteriaceae)
(confidence 0.8)).
Желание сформировать общие правила требует включения в него переменных, которые играют роль местодержателя. В правиле, представленном в листинге 5.2, такие переменные отличаются от прочих членов наличием префикса ? перед именем. Обратите внимание на то, что переменная ?pat не появляется в заключительной части правила, а значит, использование поля имени пациента в предпосылках правила действительно является избыточным.