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

Lemma isolate_Lseg1: forall e e0 e1 sigma nextv nextv2 pnatoms sigma0
(FRESHe : fresh freshmax_expr e nextv)
(LT: Ident.lt nextv nextv2),
entailment_denote
(Entailment (Assertion pnatoms (rev sigma0 ++ Lseg e0 e1 :: sigma))
(Assertion [Equ e e0, Nequ e0 e1] (rev sigma0 ++ Lseg e0 e1 :: sigma))) ->
fresh freshmax_assertion
(Assertion pnatoms (rev sigma0 ++ Lseg e0 e1 :: sigma)) nextv ->
(assertion_denote (Assertion pnatoms (rev sigma0 ++ Lseg e0 e1 :: sigma))
|-- fold_right (fun P => orp (existsv nextv (assertion_denote P))) FF
[Assertion pnatoms (Next e (Var nextv) :: Lseg (Var nextv) e1 :: rev sigma0 ++ sigma)]) /\
(forall Q : assertion,
In Q
[Assertion pnatoms (Next e (Var nextv) :: Lseg (Var nextv) e1 :: rev sigma0 ++ sigma)] ->
match Q with
|Assertion _ (Next e0 _ :: _) => e=e0
| _ => False
end /\
fresh freshmax_assertion Q nextv2).