sig
  type _ t
  val mk :
    'InputSystem.t ->
    TransSys.t -> string -> string -> string -> 'TestgenIO.t
  val rm : 'TestgenIO.t -> unit
  val testcase_count : 'TestgenIO.t -> int
  val error_count : 'TestgenIO.t -> int
  val log_testcase :
    'TestgenIO.t -> Scope.t list list -> Model.t -> Numeral.t -> unit
  val log_deadlock :
    'TestgenIO.t -> Scope.t list list -> Model.t -> Numeral.t -> unit
  val log_test_glue_file :
    string ->
    string ->
    string * (Lib.position * int) list * (string * Lib.position * int) list ->
    string -> string list -> unit
end