| ⊦ (addarray(r, ty, val ' + val0 ' + vals, st)[r -- 1 ', val1]) = addarray(r, ty, val ' + val1 ' + vals, st) |
⊦ 0 ≤ i ∧ i→n(i) < # vals → (addarray(r, ty, vals, st)[r -- i ', val]) = addarray(r, ty, vals[i→n(i), val], st)
0 ≤ 1 ∧ i→n(1) < # (val ' + val0 ' + vals) ⊦ addarray(r, ty, (val ' + val0 ' + vals)[i→n(1), val1], st) = addarray(r, ty, val ' + val1 ' + vals, st)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ # (vals + vals0) = # vals + # vals0], [CSIMPSEQ : ⊦ # val ' = 0 +1], [CSIMPSEQ : ⊦ (vals + vals0) + vals1 = vals + vals0 + vals1], [CSIMPSEQ : ⊦ 1 < m ↔ ¬ (m = 0 ∨ m = 1)], [CSIMPSEQ : ⊦ m + n = 0 ↔ m = 0 ∧ n = 0], [CSIMPSEQ : ⊦ (m + n0) + n1 = m + n0 + n1], [CSIMPSEQ : ⊦ m + n = n + m], [CSIMPSEQ : n < n0 ⊦ ((* n)) ≠ m0 + ((* n0))])], [EXTRATERMS : (val1, 1, st, val ' + val0 ' + vals, ty, r)]]