fact: Fixpoint mforeach (it min : nat) (body : nat -> M unit) : M unit := if it <= min then Ret tt else if it is it'.+1 then (body it') >>= (fun _ => mforeach it' min body) else Ret tt.
imports: mathcomp(all_ssreflect) imonae_lib HB(structures) ihierarchy imonad_lib ifail_lib istate_lib itrace_lib imonad_transformer