                (let [lexicon (or (:lexicon (:generate language-model)) (:lexicon language-model))
                      subset (if-let [index-fn (:index-fn language-model)]
                               (do
-                                (log/debug (str "using index to find lexical heads for parent:"
+                                (log/trace (str "using index to find lexical heads for parent:"
                                                 (:rule parent)))
                                 (index-fn (get-in parent [:head] :top)))
                               (flatten (vals lexicon)))]

    (if (> max-total-depth 0)
      (let [prob (- 1.0 (/ (- max-total-depth depth)
                           max-total-depth))]
        (log/debug (str "P(c," depth ") = " prob " (c: probability of choosing lexemes rather than phrases given depth " depth ")"))
        (> (* 10 prob) (rand-int 10)))
      false)))


                   (concat lexemes bolts-at)
                   (concat bolts-at lexemes)))
              comp-paths))]
    (doall (map #(log/debug 
                  (str "comp-paths-to-bolt-map: " (show-bolt bolt model) "@:" % ":"
                       (string/join "," (map (fn [bolt] (show-bolt bolt model))
                                             (get result %)))))
                (sort (keys result))))
    result))

(defn add-comps
