From a4db34804749d120a5e93fa8c07e17294dc22279 Mon Sep 17 00:00:00 2001 From: Utz-Uwe Haus Date: Tue, 22 Jun 2010 17:21:43 +0200 Subject: [PATCH] Avoid double mapping from symbolic literals to variables in CNF creation Signed-off-by: Utz-Uwe Haus --- satwrap.lisp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/satwrap.lisp b/satwrap.lisp index 4b2f6fe..116b7b2 100644 --- a/satwrap.lisp +++ b/satwrap.lisp @@ -421,11 +421,11 @@ Supports :IMPLY, :IFF, binary :XOR, and :NOR. " (clean-clauses (cnf) ;; destructively apply MAPPING (if (atomic cnf) - (setf cnf (funcall mapping cnf)) + (setf cnf cnf) (setf (cdr cnf) ;; we must be looking at an AND (loop :for clause :in (cdr cnf) :if (atomic clause) - :collect (funcall mapping clause) + :collect clause :else :if (not (trivial-clausep clause)) :collect `(:OR ,@(remove-duplicates (cdr clause) -- 2.11.4.GIT