Notation the_ge := (@the_ge the_program).

Lemma after_external_erase : forall v v' c c' m m' c2 (HeraseCores: core_erasure c c') (HeraseVal: optionval_erasure v v') (HeraseMem: mem_erasure m m') (Hafter_external: after_external the_ge v c m = Some c2), exists (c2' : state), after_external the_ge v' c' m' = Some c2' /\ core_erasure c2 c2'.