| 〈RED1((t0 _ t1) .1; tn5)〉 〈if tn5 ≠ none then tn5 := some(tn5 .t _ (t0 _ t1) .2) else if value((t0 _ t1) .1) then { RED1((t0 _ t1) .2; tn5) ; if tn5 ≠ none then tn5 := some((t0 _ t1) .1 _ tn5 .t) }〉 tn5 = tn0, 〈TOPRED(t0 _ t1; tn)〉 tn = tn5, 〈RED1(t1; tn4): m 〉 tn4 = some(t2), 〈RED1(t0; tn3): m 〉 tn3 = none, 〈TOPRED(t0 _ t1; tn2): m 〉 tn2 = none, ∀ n0, t, tn1, tn0. n0 < m + 1 → (〈RED1(t; tn2): n0 〉 tn2 = tn1 ∧ 〈RED1(t; tn2)〉 tn2 = tn0 ∧ tn0 ≠ tn1 → false), tn0 ≠ some(t0 _ t2), value(t0), tn5 = none ∧ ap(t0 _ t1) ⊦ 〈TOPRED(t0 _ t1; tn): m 〉 tn = none |
[[CONCRETESIMPRULES : ()]]