Definition val_inject_opt (j: meminj) (v1 v2: option val) :=
  match v1, v2 with Some v1', Some v2' => val_inject j v1' v2'
  | None, None => True
  | _, _ => False
  end.

Lemma loadbytes_free m1 bf lo hi m2: Mem.free m1 bf lo hi = Some m2 -> forall n (b : block) (ofs : Z), b <> bf \/ lo >= hi \/ ofs + n <= lo \/ hi <= ofs -> Mem.loadbytes m2 b ofs n = Mem.loadbytes m1 b ofs n.