(*exists tv, (eval_expr tge (Vptr sp Int.zero) te tm x1 tv /\ val_inject (restrict (as_inj mu) (vis mu)) v tv /\ val_match_approx x2 v) /\*)

Lemma EFF_switch_MSI: forall
(MCS : structured_match_callstack mu m tm
(Frame cenv tfn e lenv te sp lo hi :: cs)
(Mem.nextblock m)
(Mem.nextblock tm))
ts ls body tk'
(TR: transl_lblstmt cenv (switch_env ls xenv) ls body = OK ts)
(MK: match_cont k tk cenv xenv cs)
(TK: transl_lblstmt_cont cenv xenv ls tk tk'),
exists S, exists m2' mu',
effstep_plus cmin_eff_sem tge EmptyEffect
(CMin_State tfn (Sexit O) tk' (Vptr sp Int.zero) te) tm S m2'
/\ Match_cores (CSharpMin_State f (seq_of_lbl_stmt ls) k e lenv) mu'
(CSharpMin_State f (seq_of_lbl_stmt ls) k e lenv) m
S m2'
/\ intern_incr mu mu' /\
sm_inject_separated mu mu' m tm /\
sm_locally_allocated mu mu' m tm m m2' /\
SM_wd mu' /\ sm_valid mu' m m2'.