|
ПравилаТеперь необходимо все рассуждения эксперта представить в виде формализованных правил и фактов. Например, правило "9. Если монитор показывает ненормально, то необходимо выяснить тип монитора. (Монитор может быть двух типов: жидкокристаллический или электронно-лучевой. В зависимости от типа монитора, будем предпринимать дальнейшие рассуждения)." должно быть преобразовано к виду: (defrule DetermineTypeMonitor ""(declare (salience -30)) ?adress2 <- (Diagnose $?) (not (type monitor ?)) (not (repair ?)) (Diagnose Doing) (elementary checking false) (Continue True 1) => (if (eq (Question "Какой тип вашего монитора (crt/fpd)? " crt fpd) crt) then (assert (type monitor cathode_ray_tube)) else (assert (type monitor flad_panel_display)) ) (retract ?adress2) (assert (Diagnose Doing)) ) |