Module Preface_laws.Indexed_monad_plus

module type LAWS_MONOID = sig ... end
module type LAWS_LEFT_ABSORPTION = sig ... end
module type LAWS_LEFT_DISTRIBUTIVITY = sig ... end
module type LAWS_LEFT_CATCH = sig ... end
module For_monoidal (M : Preface_specs.INDEXED_MONAD_PLUS) : LAWS_MONOID with type ('a, 'index) t := ('a, 'index) M.t
module For_left_absorption (M : Preface_specs.INDEXED_MONAD_PLUS) : LAWS_LEFT_ABSORPTION with type ('a, 'index) t := ('a, 'index) M.t
module For_left_distributivity (M : Preface_specs.INDEXED_MONAD_PLUS) : LAWS_LEFT_DISTRIBUTIVITY with type ('a, 'index) t := ('a, 'index) M.t
module For_left_catch (M : Preface_specs.INDEXED_MONAD_PLUS) : LAWS_LEFT_CATCH with type ('a, 'index) t := ('a, 'index) M.t