| 0 < i1, i1 ≤ n→i(# vals0), ∀ j0, i0, r0, st0. ¬ i0 < j0 ∧ ¬ n→i(# vals0) + j0 ≤ i0 → (putArray(vals0, r0, j0, st0)[r0 -- i0 ']) = vals0[i→n(i0 - j0)] ⊦ i1 = 0, (putArray(vals0, r, j + 1, st)[r -- (i1 + j) ']) = (val ' + vals0)[i→n(i1)], vals0 = [] |
0 < i1, i1 ≤ n→i(# vals0), ¬ i1 + j < j + 1 ∧ ¬ n→i(# vals0) + j + 1 ≤ i1 + j → (putArray(vals0, r, j + 1, st)[r -- (i1 + j) ']) = vals0[i→n(i1 + j - j + 1)] ⊦ i1 = 0, (putArray(vals0, r, j + 1, st)[r -- (i1 + j) ']) = (val ' + vals0)[i→n(i1)], vals0 = []
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (j + 1, i1 + j, r, st)]]