functor (A : Arbitrary) (B : Arbitrary) (C : Arbitrary) -> sig type t = A.t * B.t * C.t val gen : ?size:int -> Random.State.t -> Reins.Types.Mono.Gen3Tuple.t val to_string : Reins.Types.Mono.Gen3Tuple.t -> string end