| 〈tn1 := none〉 〈if tn1 = none then { RED1(S _ (S _ K _ K) _ (S _ K _ K); tn1): m ; if tn1 ≠ none then tn1 := some(tn1 .t _ (S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)))) else { RED1(S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)); tn1): m ; if tn1 ≠ none then tn1 := some(S _ (S _ K _ K) _ (S _ K _ K) _ tn1 .t) } }〉 〈if tn1 ≠ none then RED(tn1 .t; t2): 1 + m else t2 := S _ (S _ K _ K) _ (S _ K _ K) _ (S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)))〉 t2 = t, ∀ kappa0, t. kappa0 < ((((m + 1) + 1) + 1) + 1) + 1 → (〈RED(S _ (S _ K _ K) _ (S _ K _ K) _ (S _ (S _ K _ K) _ (S _ K _ K)); t2): kappa0 〉 t2 = t → false), m ≠ 0 ⊦ |
〈if tn = none then { RED1(S _ (S _ K _ K) _ (S _ K _ K); tn): m ; if tn ≠ none then tn := some(tn .t _ (S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)))) else { RED1(S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)); tn): m ; if tn ≠ none then tn := some(S _ (S _ K _ K) _ (S _ K _ K) _ tn .t) } }〉 〈if tn ≠ none then RED(tn .t; t2): 1 + m else t2 := S _ (S _ K _ K) _ (S _ K _ K) _ (S _ K _ K _ (S _ (S _ K _ K) _ (S _ K _ K)))〉 t2 = t, ∀ kappa0, t. kappa0 < ((((m + 1) + 1) + 1) + 1) + 1 → (〈RED(S _ (S _ K _ K) _ (S _ K _ K) _ (S _ (S _ K _ K) _ (S _ K _ K)); t2): kappa0 〉 t2 = t → false), m ≠ 0, tn = none ⊦
[[CONCRETESIMPRULES : ()]]