Compare.Monad_Plus
M : Interface.MONAD_PLUS
E : Interface.EQ1 with type 'a t = 'a M.t
val distributivity : ('a -> 'b M.t) -> 'a M.t -> 'a M.t -> bool