(** ** Various results about CompCert's memory model*)
Module MemoryLemmas.
Global Notation "a # b" := (Maps.PMap.get b a) (at level 1).
Transparent Mem.store.

(* Specifications: *)
(*TODO: see if we can reuse that for gsoMem_obs_eq.*)
(*TODO: maybe we don't need to open up the interface here*)
Lemma store_contents_other:
forall m m' b b' ofs ofs' v chunk
(Hstore: Mem.store chunk m b ofs v = Some m')
(Hstable: ~ Mem.perm m b' ofs' Cur Writable),
Maps.ZMap.get ofs' (Mem.mem_contents m') # b' =
Maps.ZMap.get ofs' (Mem.mem_contents m) # b'.