| ∀ n0, t', t. n0 < m + 1 → (irred(t') ∧ (=> ^ n0)(t, t') → 〈RED(t; t0)〉 t0 = t'), irred(t'), t => t0, (=> ^ m)(t0, t'), tn0 = none ⊦ 〈RED1(t; tn0)〉 〈if tn0 ≠ none then RED(tn0 .t; t1) else t1 := t〉 t1 = t' |
∀ n0, t', t. n0 < m + 1 → (irred(t') ∧ (=> ^ n0)(t, t') → 〈RED(t; t0)〉 t0 = t'), irred(t'), t => t0, (=> ^ m)(t0, t') ⊦ 〈RED1(t; tn0)〉 〈if tn0 ≠ none then RED(tn0 .t; t1) else t1 := t〉 t1 = t'
[[CONCRETESIMPRULES : ()]]