Module type Index_intf.TERM_IDX

module type TERM_IDX = sig .. end

type t 
type elt 
module Leaf: Index_intf.LEAF  with type elt = elt
val name : string
val empty : unit -> t
val is_empty : t -> bool
val size : t -> int
val add : t ->
Index_intf.term -> elt -> t
val add_seq : t ->
(Index_intf.term * elt) Sequence.t ->
t
val add_list : t ->
(Index_intf.term * elt) list -> t
val remove : t ->
Index_intf.term -> elt -> t
val iter : t ->
(Index_intf.term -> elt -> unit) -> unit
val fold : t ->
('a -> Index_intf.term -> elt -> 'a) -> 'a -> 'a
val retrieve_unifiables : ?subst:Index_intf.subst ->
t Scoped.t ->
Index_intf.term Scoped.t ->
(Index_intf.term * elt * Index_intf.subst) Sequence.t
val retrieve_generalizations : ?subst:Index_intf.subst ->
t Scoped.t ->
Index_intf.term Scoped.t ->
(Index_intf.term * elt * Index_intf.subst) Sequence.t
val retrieve_specializations : ?subst:Index_intf.subst ->
t Scoped.t ->
Index_intf.term Scoped.t ->
(Index_intf.term * elt * Index_intf.subst) Sequence.t
val to_dot : elt CCFormat.printer ->
t CCFormat.printer
print oneself in DOT into the given file