anchor.diff:      (iter (initially (setf i (lower-bound interval)))
             (repeat (1- n))
             (for i = (next-element-in-set interval i))
  -          (finally (return (if (funcall (element-member-fn interval) interval i)
  -                               i nil)))))
  +          (finally 
  +           (return (if (funcall (element-member-fn interval) interval i)
  +                       i
  +                       nil)))))
   
     (:method ((mi multi-interval) (n integer))
       (iter (for interval in (intervals mi))
  
positive.code:   (lower-bound (car (intervals mi))))
  (defmethod upper-bound ((mi multi-interval))
    (upper-bound (car (last (intervals mi)))))
  (defmethod lower-bound-included-p ((mi multi-interval))
    (lower-bound-included-p (car (intervals mi))))
  (defmethod upper-bound-included-p ((mi multi-interval))
    (upper-bound-included-p (car (last (intervals mi)))))
  
  
  
  ;;; ------------------------------------
  
negative.code:                         :initarg :previous-element-fn)
     (element-member-fn :accessor element-member-fn
                        :initarg :element-member-fn))
    (:documentation "A list that cannot conain doublettes. The order is
  given by the property of the objects, not by the order of insertion
  into the set."))
  
  (defgeneric next-element-in-set (set element)
    (:documentation "The smallest element x in set, for which element < x.")
  