Definition hackfun phi0 phi :=
level phi0 = level phi /\ ghost_of phi0 = ghost_of phi /\
forall loc, (identity (phi0 @ loc) <-> identity (phi @ loc)) /\
(~identity (phi0 @ loc) -> (phi0 @ loc = phi @ loc)).

Lemma another_hackfun_lemma:
forall n i v gev m G phi m0,
hackfun (inflate_initial_mem m (initial_core gev G n)) phi ->
Genv.alloc_global gev m0 (i, Gvar v) = Some m ->
hackfun (inflate_initial_mem m0 (initial_core gev G n))
(upto_block (nextblock m0) phi).