   (add-triple! [_ t])
   (remove-triple! [_ t])
   (register-query! [_ q])
+  (unregister-query! [_ q])
   (query-for-pattern [_ pattern]))
 
 (defprotocol ITripleQuery

                 ::f/score-collect-fn (score-collect-min-signal-vals 3)})
          [s p o] pattern
          this (assoc _ :acc acc :result res)]
      (f/add-edge! g subj acc signal-index-select [0 s])
      (f/add-edge! g pred acc signal-index-select [1 p])
      (f/add-edge! g obj  acc signal-index-select [2 o])

      (register-query! g this)))
  (remove-from-graph!
    [_ g]
    (unregister-query! g _)
    (f/remove-vertex! g result)
    (f/remove-vertex! g acc)
    (assoc _ :acc nil :result nil)))
