Program Definition cl_core_sem (ge: genv) :
  @CoreSemantics CC_core mem :=
  @Build_CoreSemantics _ _
    (*deprecated cl_init_mem*)
    (fun _ m c m' v args => cl_initial_core ge v args = Some c(* /\ Mem.arg_well_formed args m /\ m' = m *))
    (fun c _ => cl_at_external c)
    (fun ret c _ => cl_after_external ret c)
    (fun c _ =>  False (*cl_halted c <> None*))
    (cl_step ge)
    _
    (cl_corestep_not_at_external ge).

(* Specifications: *)
Lemma alloc_variables_mem_step: forall cenv vars m e e2 m' (M: alloc_variables cenv e m vars e2 m'), mem_step m m'.
Lemma CC_core_to_State_mem: forall f STEP k e le m c m', State f STEP k e le m = CC_core_to_CC_state c m' -> m = m'.
Lemma bind_parameters_mem_step: forall cenv e m pars vargs m' (M: bind_parameters cenv e m pars vargs m'), mem_step m m'.