Definition check_one_temp_spec (Q: PTree.t val) (idv: ident * val) : Prop :=
(Q ! (fst idv)) = Some (snd idv).
Definition check_gvars_spec (GV: option globals) (GV': option globals) : Prop :=
match GV' with Some _ => GV = GV' | _ => True end.
Definition strong_cast (t1 t2: type) (v: val) : val :=
force_val (sem_cast t1 t2 v).

Lemma PROP_combine:
forall P P' Q Q' R R',
PROPx P (LOCALx Q (SEPx R)) * PROPx P' (LOCALx Q' (SEPx R')) =
PROPx (P++P') (LOCALx (Q++Q') (SEPx (R++R'))).