Module type Indexed_apply.WITH_PRODUCT

Minimal interface using product.

type ('a, 'index) t

The type held by the Indexed Apply.

val product : ('a, 'index) t -> ('b, 'index) t -> ('a * 'b, 'index) t

Monoidal product between two t.