proposition: Lemma neutral_step M N : neutral sn M -> step M N -> neutral sn N.
proof: Proof. move=> + H. elim: H. - by move=> > /neutralE [/neutralE]. - move=> > ? H /neutralE [/H] *. by constructor. - move=> > H _ /neutralE [? H']. constructor; [done|]. by apply: Acc_inv; eassumption. - by move=> > _ _ /neutralE. Qed.
imports: Undecidability.IntersectionTypes.CD Undecidability.IntersectionTypes.Util.CD_facts Undecidability.IntersectionTypes.Util.CD_fundamental Undecidability.LambdaCalculus.Util.term_facts Relations List Wellfounded.Transitive_Closure ssreflect