proposition: Lemma rpo_3_3 : forall ta1 tb1 tb2 n1 tc1, rpo tb1 tb2 -> rpo tc1 (Term ord_psi (ta1:: tb1 ::nil)) -> rpo (Term ord_cons ((Term ord_psi (ta1:: tb1 ::nil))::(nat_2_term n1) ::tc1::nil)) (Term ord_psi (ta1:: tb2 ::nil)).
proof: Proof. intros; apply Top_gt. - cbn; auto with T2. - inversion_clear 1; try subst s'. + apply rpo_3_2;auto with T2. + destruct H2 as [<-|[<-|[]]]. * apply nat_lt_psi. * apply rpo_trans with (Term ord_psi (ta1 :: tb1 :: nil)). -- auto with T2. -- apply rpo_3_2;auto with T2. Qed.
imports: Coq(Arith List Lia Compare_dec Relations Wellfounded RelationClasses) hydras(Epsilon0) hydras(More_Arith Restriction) hydras(ON_Generic) hydras(rpo.term rpo.rpo) hydras(T2) hydras(Compat815)