Proof using.
intros P. red. cofix sio.
intros si s su a.
constructor.
- apply subseqs_eventually with si; assumption.
- genclear a. case su.
clear su si s; intros (s0, si) s sf su a; simpl in * |- * .
apply (sio si); clear sio.
* induction sf; simpl.
trivial.
apply subseqs_tl. assumption (* induction hyp *).
* change (always1 P (tl (Cons s0 si))). case a; simpl; trivial.
Qed.
(* Conversely : TODO *)
Inductive ex_suff (P: infseq T -> Prop) (s' : infseq T) : Prop :=
Esp : forall s, suff s s' -> P s -> ex_suff P s'.

(* Specifications: *)
Theorem eventually_suff :
forall P s', eventually P s' -> ex_suff P s'.