let local_scope m vars scope p =
match scope with
| Mcfg.SC_Function_frame -> p
| Mcfg.SC_Block_in | Mcfg.SC_Function_in ->
notexists_vars m vars (alloc_vars m vars p)
| Mcfg.SC_Block_out | Mcfg.SC_Function_out ->
free_vars m vars p
| Mcfg.SC_Global ->
if L.has_context_vars [m.x_alloc] p
then F.p_implies (F.p_app1 "global" m.alloc) p
else p