fact: Fixpoint term_size (P: term) := match P with | var _ => 1 | app P Q => 1 + term_size P + term_size Q | abs _ P => 1 + term_size P | ty_app P _ => 1 + term_size P | ty_abs P => 1 + term_size P end.
imports: List Lia Undecidability.SystemF.SysF Undecidability.SystemF.Autosubst.syntax Undecidability.SystemF.Autosubst.unscoped Undecidability.SystemF.Util(Facts poly_type_facts pure_term_facts) ssreflect ssrbool ssrfun