| 0 ≤ i, ∀ st, val, r, j, i, vals0. # vals0 < # [] → ( 0 ≤ i ∧ 0 ≤ j ∧ i ≤ j + n→i(# vals0) ∧ j ≤ i ∧ 0 ≤ j + n→i(# vals0) → putArray(vals0, r, j, addarray(r, val, i, st)) = addarray(r, mklist(val, i→n(j)) + vals0, 0, st)) ⊦ addarray(r, val, i, st) = addarray(r, mklist(val, i→n(i)), 0, st) |
⊦ addarray(r, mklist(val, n), 0, st) = addarray(r, val, n→i(n), st)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ 0 ≤ i → n→i(i→n(i)) = i])], [EXTRATERMS : (st, i→n(i), val, r)]]