| 〈TOPRED(t1; tn1): m0 -1 〉 〈if tn1 = none ∧ ap(t1) then { RED1(t1 .1; tn1): m0 -1 ; if tn1 ≠ none then tn1 := some(tn1 .t _ t1 .2) else if value(t1 .1) then { RED1(t1 .2; tn1): m0 -1 ; if tn1 ≠ none then tn1 := some(t1 .1 _ 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; t3): 1 + m0 else t3 := K _ (S _ (S _ K _ K) _ (S _ K _ K)) _ (K _ (S _ (S _ K _ K) _ (S _ K _ K))) _ (S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)))〉 t3 = 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), m0 ≠ 0, tn1 = tn ∧ t1 = K _ (S _ (S _ K _ K) _ (S _ K _ K)) _ (K _ (S _ (S _ K _ K) _ (S _ K _ K))) ⊦ |
〈TOPRED(K _ (S _ (S _ K _ K) _ (S _ K _ K)) _ (K _ (S _ (S _ K _ K) _ (S _ K _ K))); tn1): m0 - 1 〉 〈if tn1 = none then { RED1(K _ (S _ (S _ K _ K) _ (S _ K _ K)); tn1): m0 - 1 ; if tn1 ≠ none then tn1 := some(tn1 .t _ (K _ (S _ (S _ K _ K) _ (S _ K _ K)))) else { RED1(K _ (S _ (S _ K _ K) _ (S _ K _ K)); tn1): m0 - 1 ; if tn1 ≠ none then tn1 := some(K _ (S _ (S _ K _ K) _ (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; t3): 1 + m0 else t3 := K _ (S _ (S _ K _ K) _ (S _ K _ K)) _ (K _ (S _ (S _ K _ K) _ (S _ K _ K))) _ (S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)))〉 t3 = 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), m0 ≠ 0 ⊦
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ ap(t _ t0)], [CSIMPSEQ : ⊦ value (S _ (S _ K _ K) _ (S _ K _ K))], [CSIMPSEQ : ⊦ value(K _ t) ↔ value(t)], [CSIMPSEQ : ⊦ (t _ t0) .2 = t0], [CSIMPSEQ : ⊦ (t _ t0) .1 = t], [CSIMPSEQ : ⊦ n -1 = n - 1])]]