End INITMEM_EXISTS.

(* Specifications: *)
Theorem init_mem_exists:
forall p,
(forall id v, In (id, Gvar v) (prog_defs p) ->
init_data_list_aligned 0 v.(gvar_init)
/\ forall i o, In (Init_addrof i o) v.(gvar_init) -> exists b, find_symbol (globalenv p) i = Some b) ->
exists m, init_mem p = Some m.
Theorem init_mem_exists:
forall p,
(forall id v, In (id, Gvar v) (prog_defs p) ->
init_data_list_aligned 0 v.(gvar_init)
/\ forall i o, In (Init_addrof i o) v.(gvar_init) -> exists b, find_symbol (globalenv p) i = Some b) ->
exists m, init_mem p = Some m.