В Лиспе, предположим, что у меня есть эти два правила в базе знаний:Deductive Retriever Пример
(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)))
?
Это один из примеров моего класса Lisp, надеюсь, вы могли бы помочь мне понять этого ретривера. Спасибо.
Это похоже на Lispy Prolog, возможно, из PAIP (http://norvig.com/paip.html). Это, конечно, не входит в стандартный Common Lisp (или Scheme, или Emacs Lisp ...). Если вы более подробно о том, откуда он, мы могли бы быть более полезными. – Pillsy