+ intros. xomega.
+ induction 1.
- apply Mem.nextblock_storebytes in H;
rewrite H; xomega.
- apply Mem.nextblock_alloc in H.
rewrite H. clear. xomega.
- apply nextblock_freelist in H.
rewrite H; xomega.
- xomega.
Qed.

(* Theorem loadbytes_drop m b lo hi p m' (D:Mem.drop_perm m b lo hi p = Some m'): forall b' ofs, b' <> b \/ ofs < lo \/ hi <= ofs \/ perm_order p Readable -> Mem.loadbytes m' b' ofs 1 = Mem.loadbytes m b' ofs 1. *)
Lemma mem_step_obeys_cur_write:
forall m b ofs m',
Mem.valid_block m b ->
~ Mem.perm m b ofs Cur Writable ->
mem_step m m' ->
ZMap.get ofs (PMap.get b (Mem.mem_contents m)) =
ZMap.get ofs (PMap.get b (Mem.mem_contents m')).