sig
  type t = (Wpo.prover, Wpo.result) Hashtbl.t
  val create : unit -> ('a, 'b) Hashtbl.t
  val replace : ('a, 'b) Hashtbl.t -> '-> '-> unit
  val clear : ('a, 'b) Hashtbl.t -> unit
  val remove : ('a, 'b) Hashtbl.t -> '-> unit
  val get : ('a, 'b) Hashtbl.t -> '-> 'b option
  val iter : ('-> '-> unit) -> ('a, 'b) Hashtbl.t -> unit
end