anchor.diff:            (ordered-node-values (sort-node-values node-values)))
         (gethash ordered-node-values cpt))))
   
  -;;; not used anymore
  -;;; question: mustn't lambda be quoted? #'(lambda...
  -#+-(defgeneric compute-node-value-index (node node-value parent-values)
  -  (:documentation "Compute the index of (NODE-VALUE . PARENT-VALUES) in NODE's potential.")
  -  (:method (node node-value parent-values)
  -    (let ((node-index (gethash node-value (node-value-index-table node)))
  -          (parent-indices
  -            (mapcar (lambda (value node)
  -                      (gethash value (node-value-index-table node)))
  -                    parent-values (node-parents node))))
  -      (cons node-index parent-indices))))
  -
  -;; deprecated
  -#+-(defgeneric print-potential (node)
  -  (:documentation "prints the potential / factor-function of the given node.")
  -  (:method (node)
  -    (let ((values (node-domain-values node)))
  -      (format t " ~S | f ~%" (node-name node))
  -      (dotimes (i (length values))
  -        (format t " ~S | ~S~%" (elt values i) (node-probability node (elt values i)))))))
   
   (defgeneric print-potential (node)
     (:documentation "prints the potential / factor-function of the given node.")
  
positive.code: 	(setf result (cons (node-name parent) result)))
        (setf result (cons (node-name node) result))
        (reverse result))))
  
  
  
  ;;; Discrete Nodes
  
negative.code:   (declare (ignorable node))
    t)
  
  ;;; tests if given node is a discrete node
  ;(defmethod node-discrete-p ((node node))
  ;  (if (eql (type-of node) 'DISCRETE-NODE ) T nil ))
  