proposition: Lemma pure_typing_ren_poly_type {Gamma M t} ξ : pure_typing Gamma M t -> pure_typing (map (ren_poly_type ξ) Gamma) M (ren_poly_type ξ t).
proof: Proof. move=> /pure_typing_to_typing [?] [->] /(typing_ren_poly_type ξ) /typing_to_pure_typing. congr pure_typing. by apply: erase_ren_term_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