Definition exact_assert (S: ident -> Prop) (st: environ * rmap): assert :=
fun rho =>
!! (forall i, S i \/ Map.get (te_of rho) i = Map.get (te_of (fst st)) i) &&
!! (ve_of rho = ve_of (fst st)) &&
exact_at (snd st).

Lemma exact_assert_spec1: forall S st,
closed_wrt_vars S (exact_assert S st).