(** ** Properties of [storebytes]. *)
(** [storebytes] preserves block validity, permissions, access validity, and bounds. Moreover, a [storebytes] succeeds if and only if we have write permissions on the addressed memory area. *)

Axiom range_perm_storebytes:
forall m1 b ofs bytes,
range_perm m1 b ofs (ofs + Z.of_nat (length bytes)) Cur Writable ->
{ m2 : mem | storebytes m1 b ofs bytes = Some m2 }.