Definition CMin_core_sem : CoreSemantics genv CMin_core mem.
eapply @Build_CoreSemantics with (at_external:=CMin_at_external)
(after_external:=CMin_after_external) (corestep:=CMin_corestep)
(halted:=CMin_halted).
apply CMin_initial_core.
apply CMin_corestep_not_at_external.
apply CMin_corestep_not_halted.
apply CMin_at_external_halted_excl.
apply CMin_after_at_external_excl.
Defined.
(************************NOW SHOW THAT WE ALSO HAVE A COOPSEM******)
(*A global assumption we need on external calls, in particular builtins mem_wd deprecated Parameter external_call_mem_wd: forall (ef : external_function) (F V : Type) (ge : Genv.t F V) (vargs : list val) (m1 : mem) (t : trace) (vres : val) (m2 : mem), external_call ef ge vargs m1 t vres m2 -> mem_wd m1 -> mem_wd m2. *)

(* Specifications: *)
Lemma CMin_forward : forall g c m c' m' (CS: CMin_corestep g c m c' m'),
mem_lemmas.mem_forward m m'.