| 〈RED1(t; tn2)〉 tn2 = tn0, 〈RED1(t .1; tn3): n - 1 〉 tn3 = tn4, 〈TOPRED(t; tn2): n - 1 〉 tn2 = none, ∀ n0, t, tn1, tn0. n0 < n → (〈RED1(t; tn2): n0 〉 tn2 = tn1 ∧ 〈RED1(t; tn2)〉 tn2 = tn0 ∧ tn0 ≠ tn1 → false), tn0 ≠ some(tn4 .t _ t .2), n ≠ 0, tn4 ≠ none, ap(t) ⊦ |
〈RED1(t; tn2)〉 tn2 = tn0, 〈RED1(t .1; tn3): m 〉 tn3 = tn4, 〈TOPRED(t; tn2): m 〉 tn2 = none, ∀ n0, t, tn1, tn0. n0 < n → (〈RED1(t; tn2): n0 〉 tn2 = tn1 ∧ 〈RED1(t; tn2)〉 tn2 = tn0 ∧ tn0 ≠ tn1 → false), tn0 ≠ some(tn4 .t _ t .2), n ≠ 0, tn4 ≠ none, ap(t), n = m + 1 ⊦
[[CONCRETESIMPRULES : ([CSIMPELIM : n ≠ 0 ⊦ m = n - 1 ↔ n = m + 1])], [EXTRATERMS : (n, m)]]