| 〈TOPRED(S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)); tn1): m0 〉 〈if tn1 = none then { RED1(S _ K _ K; tn1): m0 ; if tn1 ≠ none then tn1 := some(tn1 .t _ (S _ (S _ K _ K) _ (S _ K _ K))) else { RED1(S _ (S _ K _ K) _ (S _ K _ K); tn1): m0 ; if tn1 ≠ none then tn1 := some(S _ K _ K _ tn1 .t) } }〉 〈tn := tn1 ; if tn ≠ none then tn := some(tn .t _ (S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K))))〉 〈if tn ≠ none then RED(tn .t; t1): m + 1 else t1 := S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)) _ (S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)))〉 t1 = t, ∀ kappa0, t. kappa0 < ((m + 1) + 1) + 1 → (〈RED(S _ (S _ K _ K) _ (S _ K _ K) _ (S _ (S _ K _ K) _ (S _ K _ K)); t3): kappa0 〉 t3 = t → false), m ≠ 0, m = m0 + 1 ⊦ |
〈TOPRED(S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)); tn1): m0 〉 〈if tn1 = none then { RED1(S _ K _ K; tn1): m0 ; if tn1 ≠ none then tn1 := some(tn1 .t _ (S _ (S _ K _ K) _ (S _ K _ K))) else { RED1(S _ (S _ K _ K) _ (S _ K _ K); tn1): m0 ; if tn1 ≠ none then tn1 := some(S _ K _ K _ tn1 .t) } }〉 〈tn := tn1 ; if tn ≠ none then tn := some(tn .t _ (S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K))))〉 〈if tn ≠ none then RED(tn .t; t1): 2 + m0 else t1 := S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)) _ (S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)))〉 t1 = t, ∀ kappa0, t. kappa0 < (((m0 + 1) + 1) + 1) + 1 → (〈RED(S _ (S _ K _ K) _ (S _ K _ K) _ (S _ (S _ K _ K) _ (S _ K _ K)); t3): kappa0 〉 t3 = t → false) ⊦
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ m + n = n + m], [CSIMPSEQ : ⊦ (m + n0) + n1 = m + n0 + n1], [CSIMPSEQ : ⊦ m + 1 ≠ 0])]]