Definition map_fst (A B C: Set) (f: A -> B) (p: A * C): B * C := (f (fst p), snd p).

Lemma monoid_expec_map_fst_monoid_mult (A: Set) (g: m) (t: MonoidMonadTrans.M m ne_tree_monad.ext A): monoid_expec (ne_tree.map (map_fst (monoid_mult m g)) t) = INR (ms g) + monoid_expec t.