Proof using.
unfold impl_tl; intuition.
Qed.

Lemma impl_tl_map_conv :
forall (f: A->B) (P P': infseq A->Prop) (Q Q': infseq B->Prop),
(forall s, P s -> Q (map f s)) ->
(forall s, Q' (map f s) -> P' s) ->
forall (s: infseq A),
(Q ->_ Q') (map f s) -> (P ->_ P') s.