 
 (define-repl-fn check-counterexample
   "Checks the given counterexample for being valid."
-  (valid-counterexample? state ctx impl)
+  (valid-counterexample? state attributes impl)
   state)
 
 (define-repl-fn quit
   "Quit the REPL, if the given counterexample is valid."
-  (if (valid-counterexample? state ctx impl)
+  (if (valid-counterexample? state attributes impl)
     nil
     state))
 


(defn- valid-counterexample?
  "Checks the given example for being valid."
  [state ctx impl]
  (let [new-atts    (union (set (:positives state)) (set (:negatives state))),
        return      (atom true)]
    (when-not (contains? state :object),
      (println "You need to set a name for the new object.")
      (reset! return false))
    (when-not (= (attributes ctx) new-atts)
      (println "You have not specified a complete counterexample.")
      (reset! return false))
    (let [not-respected (filter (fn [impl]


(define-repl-fn complete-example
  "Adds all attributes, which are not positive, to the negatives."
  (let [non-pos (difference attributes (set (:positives state)))]
    (assoc state :negatives non-pos)))

(define-repl-fn saturate-partial-example
