Module Int.Product

A monoid over product

include Base with type t = int
type t = int
val zero : t

zero an element that is neutral to plus

val plus : t -> t -> t

plus x y an associative operation.

val concat : t list -> t

concat xs reduces xs to using plus

val (@@) : t -> t -> t

x @@ y is plus x y