anchor.diff:  (defun get-root()
     (make-tree-node :data (make-node-data :score 0.0 :game-number 0 :lower-bound 0.0 :upper-bound 1.0)))
   
  +
  +;; Gets the root of the tree for the current node based on its ancestors
  +(defun find-root(node)
  +  (if(eq (tree-node-parent node) nil)
  +     node
  +  (find-root (tree-node-parent node))))
  +
   ;; Function to initialize the sensory channels for the agent
   (defun init-sensory-channels()
     (let ((channels '()))
  
positive.code:   (setf (tree-node-left-child node) (make-tree-node :data (make-node-data :lower-bound (get-lower-bound node) :upper-bound (/ (+ (get-lower-bound node) (get-upper-bound node)) 2.0))))
    (setf (tree-node-right-child node) (make-tree-node :data (make-node-data :lower-bound (/ (+ (get-lower-bound node) (get-upper-bound node)) 2.0) :upper-bound (get-upper-bound node))))
    node)
  
  ;; Function in charge of discriminate a value inside a node (tree representation)
  (defun discriminate-values(node topic-value object-value)
  
negative.code: ;; Function to run a single discrimination game
  (defun run-single-game(agent)
    (let ((scene (create-scene)))
      (setq discrimination-results (run-discrimination agent scene))
      ))
  
  ;; Definition of the game. Main function to run.
  (defun exec-game()
  