sig
  val foldn : f:('-> int -> 'a) -> init:'-> int -> 'a
  val sum_int : int Std_internal.List.t -> int
  type 'a gen = unit -> 'a
  val pfg : unit -> float
  val fg : unit -> float
  val nng : unit -> int
  val uig : unit -> int
  val lg : (unit -> 'a) -> ?size_gen:(unit -> int) -> unit -> 'a list
  val pg : (unit -> 'a) -> (unit -> 'b) -> unit -> 'a * 'b
  val tg :
    (unit -> 'a) -> (unit -> 'b) -> (unit -> 'c) -> unit -> 'a * 'b * 'c
  val cg : unit -> char
  val sg :
    ?char_gen:(unit -> char) ->
    ?size_gen:(unit -> int) -> unit -> Std_internal.String.t
  val oneof : 'Std_internal.List.t -> 'a
  val always : '-> unit -> 'a
  val frequency : (int * 'a) Std_internal.List.t -> 'a
  val frequencyl : (int * 'a) Std_internal.List.t -> unit -> 'a
  val laws : int -> (unit -> 'a) -> ('-> bool) -> 'a option
  val laws_exn : string -> int -> (unit -> 'a) -> ('-> bool) -> unit
  val statistic_number : 'Std_internal.List.t -> (int * 'a) list
  val statistic : 'Std_internal.List.t -> (int * 'a) Std_internal.List.t
  val laws2 :
    int ->
    ('-> bool * 'b) ->
    (unit -> 'a) -> 'a option * (int * 'b) Std_internal.List.t
  val repeat : int -> ('-> 'b) -> (unit -> 'a) -> unit
end