| n→i(m) + n→i(m0) + 1 > 0, ∀ r, val, m, st. addarray(r, mklist(val, m0), n→i(m), addarray(r, mklist(val, m), 0, st)) = addarray(r, val, n→i(m0) + n→i(m), st) ⊦ addarray(r, mklist(val, m0 + 1), n→i(m), addarray(r, mklist(val, m), 0, st)) = (addarray(r, val, n→i(m) + n→i(m0) + 1 - 1, st)[r -- (n→i(m) + n→i(m0) + 1 - 1) ', val]) |
0 ≤ n→i(m) + n→i(m0), ∀ r, val, m, st. addarray(r, mklist(val, m0), n→i(m), addarray(r, mklist(val, m), 0, st)) = addarray(r, val, n→i(m0) + n→i(m), st) ⊦ addarray(r, mklist(val, m0 + 1), n→i(m), addarray(r, mklist(val, m), 0, st)) = (addarray(r, val, n→i(m0) + n→i(m), st)[r -- (n→i(m0) + n→i(m)) ', val])
[[CONCRETESIMPRULES : ([CSIMPFORWARD : ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j], [CSIMPSEQ : ⊦ (~1) < i ↔ 0 ≤ i], [CSIMPSEQ : ⊦ ((* j)) < i0 + ((* j0)) ↔ j - j0 < i0], [CSIMPSEQ : ⊦ i > j ↔ j < i], [CSIMPSEQ : ⊦ i + j = j + i], [CSIMPSEQ : ⊦ i + j + i0 = (i + j) + i0], [CSIMPSEQ : ⊦ i + 0 = i], [CSIMPSEQ : ⊦ ((* i)) + i0 - ((* j)) = (i - j) + i0])]]