proposition: Lemma pure_typing_pure_app_simpleI {Gamma M N s t} : pure_typing Gamma M (poly_arr s t) -> pure_typing Gamma N s -> pure_typing Gamma (pure_app M N) t.
proof: Proof. move=> HM HN. apply: (pure_typing_pure_app 0 (s := s)); last by apply: rt_refl. - by rewrite map_ren_poly_type_id. - by rewrite map_ren_poly_type_id. Qed.
imports: List Lia Relation_Definitions Relation_Operators Operators_Properties Undecidability.SystemF.SysF Undecidability.SystemF.Autosubst.syntax Undecidability.SystemF.Autosubst.unscoped Undecidability.SystemF.Util(Facts poly_type_facts pure_term_facts term_facts typing_facts iipc2_facts) ssreflect ssrbool ssrfun