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