intros.
simpl.
rewrite (space_denote_permute _ _ H).
trivial.
Qed.

Lemma isolate_sound:
forall e P nextv nextv2 results
(LT: Ident.lt nextv nextv2),
isolate e P nextv = Some results ->
fresh freshmax_expr e nextv ->
fresh freshmax_assertion P nextv ->
assertion_denote P |--
fold_right (fun P => orp (existsv nextv (assertion_denote P))) FF results /\
forall Q, In Q results ->
match Q with
|Assertion _ (Next e0 _ :: _) => e=e0
| _ => False
end /\
fresh freshmax_assertion Q nextv2.