Definition getNO_aux (phi : rmap) (loc : address) : resource :=
match phi @ loc with
YES sh Psh k pp => NO (Share.glb Share.Lsh sh) (glb_Lsh_unreadable sh)
| NO sh Psh => NO sh Psh
| PURE k pp => PURE k pp
end.

(* Specifications: *)
Lemma readable_part_glb:
forall (sh sh0 : Share.t) (r : readable_share sh) (r0 : readable_share sh0),
Share.glb Share.Rsh sh0 = Share.glb Share.Rsh sh ->
readable_part (readable_glb r0) = readable_part (readable_glb r).