Proof using.
unfold or_tl; intuition.
Qed.

(* Specifications: *)
Lemma or_tl_map_conv :
forall (f: A->B) (P P': infseq A->Prop) (Q Q': infseq B->Prop),
(forall s, Q (map f s) -> P s) ->
(forall s, Q' (map f s) -> P' s) ->
forall (s: infseq A),
(Q \/_ Q') (map f s) -> (P \/_ P') s.
Lemma impl_tl_map :
forall (f: A->B) (P P': infseq A->Prop) (Q Q': infseq B->Prop),
(forall s, Q (map f s) -> P s) ->
(forall s, P' s -> Q' (map f s)) ->
forall (s: infseq A),
(P ->_ P') s -> (Q ->_ Q') (map f s).