Definition Mdo {A B:Type} (ma:monad A) (mb:monad B) := ma >>= (λ _, mb).
Infix ">>" := Mdo (at level 15, left associativity) : monad_scope. (* level at random… *)

Lemma lt_le_Mdo_lt {A B:Type} (ma:monad A) (mb:monad B):
Mlt ma → Mle mb → Mlt (ma >> mb).