(* No unvalid pointers, i.e. othing pointing after nextblock *)
Definition mem_wd (m:mem):=
inject_neutral (nextblock m) m.
(* All arguments are in memory and without unvalid pointers*)
Definition arg_well_formed args m0:=
Val.inject_list (flat_inj (nextblock m0)) args args.
Remark mem_wd_inject:
forall m, mem_wd m -> inject (flat_inj (nextblock m)) m m.

Theorem store_inject_neutral:
forall chunk m b ofs v m' thr,
store chunk m b ofs v = Some m' ->
inject_neutral thr m ->
Plt b thr ->
Val.inject (flat_inj thr) v v ->
inject_neutral thr m'.