functor (P : Poly.Arbitrary->
  functor (M : Arbitrary->
    sig
      type t = M.t P.t
      val gen : ?size:int -> Random.State.t -> Reins.Types.Mono.ComposeGen.t
      val to_string : Reins.Types.Mono.ComposeGen.t -> string
    end