「On Lisp」の「Prolog」でハノイの塔を解くには次のようにする。
(<- (hanoi 1 ?from ?to ?via) (move 1 ?from ?to) (cut)) (<- (hanoi ?n ?from ?to ?via) (is ?n1 (- ?n 1)) (hanoi ?n1 ?from ?via ?to) (move ?n ?from ?to) (hanoi ?n1 ?via ?to ?from) ) (<- (move ?n ?from ?to) (lisp (progn (princ 'move) (princ " ") (prin1 ?n) (princ " ") (princ 'from) (princ " ") (prin1 ?from) (princ " ") (princ 'to) (princ " ") (prin1 ?to) (terpri) t) ) ) (with-inference (hanoi 6 'a 'c 'b))