(** Preservation of [drop_perm] operations. *)

Lemma drop_mapped_inj:
forall f m1 m2 b1 b2 delta lo hi p m1',
mem_inj f m1 m2 ->
drop_perm m1 b1 lo hi p = Some m1' ->
meminj_no_overlap f m1 ->
f b1 = Some(b2, delta) ->
exists m2',
drop_perm m2 b2 (lo + delta) (hi + delta) p = Some m2'
/\ mem_inj f m1' m2'.