sig
  val add : 'Cudd.Weakke.compare -> 'Cudd.Weakke.t -> '-> unit
  val find_or :
    'Cudd.Weakke.compare ->
    'Cudd.Weakke.t -> '-> (int -> int -> 'a) -> 'a
  val merge : 'Cudd.Weakke.compare -> 'Cudd.Weakke.t -> '-> 'a
  val merge_map :
    'Cudd.Weakke.compare -> 'Cudd.Weakke.t -> '-> ('-> 'a) -> 'a
  val find : 'Cudd.Weakke.compare -> 'Cudd.Weakke.t -> '-> 'a
  val find_shadow :
    'Cudd.Weakke.compare ->
    'Cudd.Weakke.t -> '-> ('Weak.t -> int -> 'b) -> '-> 'b
  val remove : 'Cudd.Weakke.compare -> 'Cudd.Weakke.t -> '-> unit
  val mem : 'Cudd.Weakke.compare -> 'Cudd.Weakke.t -> '-> bool
  val find_all : 'Cudd.Weakke.compare -> 'Cudd.Weakke.t -> '-> 'a list
end