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