proposition: Lemma rpo_2_3 : forall ta1 ta2 tb1 tb2 n1 tc1, rpo ta1 ta2 -> rpo tb1 (Term ord_psi (ta2:: tb2::nil)) -> 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 (ta2:: tb2 ::nil)).
proof: Proof. intros; apply Top_gt. - cbn;auto with T2. - inversion_clear 1. + subst s'; apply rpo_2_2;auto with T2. + destruct H3 as [|[|[]]]; unfold In in H2; try subst s'. * apply nat_lt_psi. * apply rpo_trans with (Term ord_psi (ta1 :: tb1 :: nil));auto with T2. apply rpo_2_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)