Global Hint Resolve uniform_respectful : core.

Lemma hoare_bind {X Y}
(Pre : dist PosMap -> Prop)
(Mid : dist (X * PosMap) -> Prop)
(Post : dist (Y * PosMap) -> Prop)
(m : M X) (f : X -> M Y) :
respectful Post ->
hoare Pre Mid m ->
(forall d, Mid d -> Post (f_apply f d)) ->
hoare Pre Post (mbind m f).