sig
  type key
  type prop
  type t
  val create : int -> Hashcons.S.t
  val clear : Hashcons.S.t -> unit
  val hashcons :
    Hashcons.S.t ->
    Hashcons.S.key ->
    Hashcons.S.prop -> (Hashcons.S.key, Hashcons.S.prop) Hashcons.hash_consed
  val find :
    Hashcons.S.t ->
    Hashcons.S.key -> (Hashcons.S.key, Hashcons.S.prop) Hashcons.hash_consed
  val iter :
    ((Hashcons.S.key, Hashcons.S.prop) Hashcons.hash_consed -> unit) ->
    Hashcons.S.t -> unit
  val fold :
    ((Hashcons.S.key, Hashcons.S.prop) Hashcons.hash_consed -> '-> 'a) ->
    Hashcons.S.t -> '-> 'a
  val stats : Hashcons.S.t -> int * int * int * int * int * int
end