(*Prior to block := Z, the lemma as like this: Lemma find_symbol_add_globals: forall {F V} i g id dl, ~ In i (map fst dl) -> list_norepet (map fst dl) -> (Genv.find_symbol (Genv.add_globals (Genv.empty_genv F V) (dl ++ (i, g) :: nil)) id = Some (1 + Zlength dl) <-> i = id). *)

Lemma add_globals_hack_single {F}:
forall v gev prog_pub,
gev = Genv.add_globals (Genv.empty_genv (fundef F) type prog_pub) (cons v nil) ->
forall id b, (Genv.find_symbol gev id = Some b <-> fst v = id /\ b = 1%positive).