Definition Mmap2 {A B C:Type} (f:A→B→C) (ma:monad A) (mb:monad B):=
  (λ s0, let (s1,a) := ma s0 in let (s2,b) := mb s1 in (s2,(f a b))):monad C.

Lemma mono_mono_Mmap2_mono {A B C:Type} (f: A → B → C) ma mb: Mmono ma → Mmono mb → Mmono (Mmap2 f ma mb).