Opaque Mem.storebytes.

Lemma setPermBlock_var_obs_eq:
forall f bl1 bl2 ofsl pmap pmapF mc mf p
(Hlt: permMapLt pmap (getMaxPerm mc))
(HltF: permMapLt pmapF (getMaxPerm mf))
(Hfl: f bl1 = Some bl2)
(Hval_obs_eq: forall ofs0, (ofsl <= ofs0 < ofsl + Z.of_nat (lksize.LKSIZE_nat))%Z ->
memval_obs_eq f (ZMap.get ofs0 (Mem.mem_contents mc) # bl1)
(ZMap.get ofs0 (Mem.mem_contents mf) # bl2))
(Hobs_eq: mem_obs_eq f (restrPermMap Hlt) (restrPermMap HltF))
(Hlt': permMapLt (setPermBlock_var p bl1 ofsl pmap lksize.LKSIZE_nat) (getMaxPerm mc))
(HltF': permMapLt (setPermBlock_var p bl2 ofsl pmapF lksize.LKSIZE_nat) (getMaxPerm mf)),
mem_obs_eq f (restrPermMap Hlt') (restrPermMap HltF').