(***** subtyping and contractiveness -- should split this into a separate file ******)

Lemma prove_HOcontractive1 {A} {NA: NatDed A}{IA: Indir A}{RA: RecIndir A} : forall X F,
(forall P Q: X -> A,
(ALL x:X, |>(P x >=> Q x) |--
ALL x:X, F P x >=> F Q x)) ->
HOcontractive F.