Local Open Scope logic.
Require Export mc_reify.reify.
Require Export MirrorCore.RTac.Repeat.
Require Export MirrorCore.RTac.Try.
Require Export MirrorCore.RTac.First.
Require Export mc_reify.funcs.
Require Export mc_reify.reflexivity_tacs.
Definition set_lemma (temp : PTree.t (type * bool)) (var : PTree.t type)
(ret : type) (gt : PTree.t type) (id : ident)
(e : Clight.expr) (ty : type): my_lemma.
reify_lemma reify_vst (semax_set_localD temp var ret gt id e ty).
Defined.

Lemma tc_LR_b_sound: forall Delta P T1 T2 R e1 lr p,
msubst_eval_LR T1 T2 e1 lr = Some p ->
assertD P (localD T1 T2) R |-- !! (isptr p) ->
tc_LR_b_norho Delta e1 lr = true ->
assertD P (localD T1 T2) R |-- local (tc_LR Delta e1 lr).