В Лиспе, предположим, у меня есть два правила в базе знаний:
(append nil ?x ?x)
(<- (append (cons ?x ?l1) ?l2 (cons ?x ?l3))
(append ?l1 ?l2 ?l3))
Тогда как я могу сделать вывод, что если мы спросим
(ask '(append (cons a (cons b nil))
(cons c nil)
?l)
'?l))
мы получим результат '((cons a (cons b (cons c nil)))
?
Это один пример из моего класса на Лиспе, надеюсь, вы могли бы помочь мне понять этот ретривер.
Спасибо.