| 0 ≤ n→i(# vals) + i, 0 ≤ j, 0 ≤ i, i ≤ j, j ≤ n→i(# vals) + i ⊦ (putArray(vals, r, i, addarray(r, ty, j, st))[r -- i0 ']) = (addarray(r, ty, mklist(initial_value(ty), i→n(i)) + vals, st)[r -- i0 ']) |
⊦ 0 ≤ i ∧ i < n→i(# vals) → (addarray(r, ty, vals, st)[r -- i ']) = vals[i→n(i)]
¬ (0 ≤ i0 ∧ i0 < n→i(# (mklist(initial_value(ty), i→n(i)) + vals))), 0 ≤ n→i(# vals) + i, 0 ≤ j, 0 ≤ i, i ≤ j, j ≤ n→i(# vals) + i ⊦ (putArray(vals, r, i, addarray(r, ty, j, st))[r -- i0 ']) = (addarray(r, ty, mklist(initial_value(ty), i→n(i)) + vals, st)[r -- i0 '])
0 ≤ i0 ∧ i0 < n→i(# (mklist(initial_value(ty), i→n(i)) + vals)), 0 ≤ n→i(# vals) + i, 0 ≤ j, 0 ≤ i, i ≤ j, j ≤ n→i(# vals) + i ⊦ (putArray(vals, r, i, addarray(r, ty, j, st))[r -- i0 ']) = (mklist(initial_value(ty), i→n(i)) + vals)[i→n(i0)]
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (i0, st, mklist(initial_value(ty), i→n(i)) + vals, ty, r)]]