Proof using.
intros P s eP alP.
induction eP.
- destruct s as [x s].
unfold not_tl in H.
contradict H.
apply always_Cons in alP.
destruct alP as [PC alP].
assumption.
- apply always_invar in alP.
contradict IHeP.
assumption.
Qed.

(* Specifications: *)
Lemma weak_until_always_not_always :
forall (J P : infseq T -> Prop) (s : infseq T),
weak_until J P s -> always (~_ P) s -> always J s.