`sig type base_t type t val bounds : base_t bound_t * base_t bound_t val bounded : (base_t, t) bounding_f val base_of_t : t -> base_t option val base_of_t_exn : t -> base_t module Infix : sig val ( + ) : base_t -> base_t -> base_t val ( - ) : base_t -> base_t -> base_t val ( * ) : base_t -> base_t -> base_t val ( / ) : base_t -> base_t -> base_t val ( ** ) : base_t -> base_t -> base_t val ( -- ) : base_t -> base_t -> base_t BatEnum.t val ( --- ) : base_t -> base_t -> base_t BatEnum.t end end`