Remark store_init_data_outside:
forall {F V} genv b i m p m',
@Genv.store_init_data F V genv m b p i = Some m' ->
forall chunk b' q,
b' <> b \/ q + size_chunk chunk <= p \/ p + init_data_size i <= q ->
Mem.load chunk m' b' q = Mem.load chunk m b' q.
Remark store_init_data_list_outside:
forall {F V} genv b il m p m',
@Genv.store_init_data_list F V genv m b p il = Some m' ->
forall chunk b' q,
b' <> b \/ q + size_chunk chunk <= p ->
Mem.load chunk m' b' q = Mem.load chunk m b' q.

(* Specifications: *)
Lemma load_store_init_data_lem1:
forall {ge m1 b D m2 m3},
store_zeros m1 b 0 (init_data_list_size D) = Some m2 ->
Genv.store_init_data_list ge m2 b 0 D = Some m3 ->
forall dl' a dl, dl' ++ a :: dl = D ->
load_store_init_data1 ge m3 b (init_data_list_size dl') a.