Proof using.
intros J P s un rl.
induction un.
- destruct s as [x s].
apply release_Cons in rl.
destruct rl as [Ps rl].
unfold not_tl in Ps.
contradict Ps.
assumption.
- apply release_Cons in rl.
destruct rl as [Ps rl].
case rl; trivial.
unfold not_tl.
intros Js.
contradict Js.
assumption.
Qed.

(* Specifications: *)
Lemma weak_until_not_until :
forall (J P : infseq T -> Prop) (s : infseq T),
weak_until (J /\_ ~_ P) (~_ J /\_ ~_ P) s -> ~ until J P s.