sig
  type t = ProofStep.of_
  val is_proof_of_false : ProofPrint.t -> bool
  module Tbl :
    sig
      type key = ProofStep.of_
      type 'a t
      val create : int -> 'a t
      val clear : 'a t -> unit
      val reset : 'a t -> unit
      val copy : 'a t -> 'a t
      val add : 'a t -> key -> '-> unit
      val remove : 'a t -> key -> unit
      val find : 'a t -> key -> 'a
      val find_all : 'a t -> key -> 'a list
      val replace : 'a t -> key -> '-> unit
      val mem : 'a t -> key -> bool
      val iter : (key -> '-> unit) -> 'a t -> unit
      val fold : (key -> '-> '-> 'b) -> 'a t -> '-> 'b
      val length : 'a t -> int
      val stats : 'a t -> Hashtbl.statistics
      val get : 'a t -> key -> 'a option
      val get_or : 'a t -> key -> or_:'-> 'a
      val add_list : 'a list t -> key -> '-> unit
      val incr : ?by:int -> int t -> key -> unit
      val decr : ?by:int -> int t -> key -> unit
      val keys : 'a t -> key CCHashtbl.sequence
      val values : 'a t -> 'CCHashtbl.sequence
      val keys_list : 'a t -> key list
      val values_list : 'a t -> 'a list
      val map_list : (key -> '-> 'b) -> 'a t -> 'b list
      val to_seq : 'a t -> (key * 'a) CCHashtbl.sequence
      val of_seq : (key * 'a) CCHashtbl.sequence -> 'a t
      val add_seq : 'a t -> (key * 'a) CCHashtbl.sequence -> unit
      val add_seq_count : int t -> key CCHashtbl.sequence -> unit
      val of_seq_count : key CCHashtbl.sequence -> int t
      val to_list : 'a t -> (key * 'a) list
      val of_list : (key * 'a) list -> 'a t
      val update : 'a t -> f:(key -> 'a option -> 'a option) -> k:key -> unit
      val print :
        key CCHashtbl.printer ->
        'CCHashtbl.printer -> 'a t CCHashtbl.printer
    end
  val as_graph :
    (ProofPrint.t, ProofPrint.t * ProofStep.rule * ProofPrint.t) CCGraph.t
  val traverse :
    ?traversed:unit ProofPrint.Tbl.t ->
    ProofPrint.t -> ProofPrint.t Sequence.t
  val pp_result : ProofStep.result CCFormat.printer
  val pp_result_of : ProofPrint.t CCFormat.printer
  val pp_notrec : ProofPrint.t CCFormat.printer
  val pp_tstp : ProofPrint.t CCFormat.printer
  val pp_normal : ProofPrint.t CCFormat.printer
  val pp :
    Libzipperposition.Options.print_format -> ProofPrint.t CCFormat.printer
  val pp_dot : name:string -> ProofPrint.t CCFormat.printer
  val pp_dot_file : ?name:string -> string -> ProofPrint.t -> unit
  val pp_dot_seq : name:string -> ProofPrint.t Sequence.t CCFormat.printer
  val pp_dot_seq_file :
    ?name:string -> string -> ProofPrint.t Sequence.t -> unit
end