monad package:checkers

Properties to check that the Monad m satisfies the monad properties
Note that monad also contains these properties.
Law for monads that are also instances of Functor. Note that instances that satisfy applicative and monad are implied to satisfy this property too.
Monad morphism properties Applicative morphism properties
Laws for MonadPlus instances with left catch.
Laws for MonadPlus instances with left distribution.
The semantic function (model1) for f is a monadMorphism.