| ⊦ addarray(r, vals0 + val ', i, st) = (addarray(r, vals0, i, st)[r -- (n→i(# vals0) + i) ', val]) |
⊦ addarray(r, val ', j, st) = st[r -- j ', val]
⊦ addarray(r, [], i, st) = st
∀ r, val, i, st. addarray(r, vals + val ', i, st) = (addarray(r, vals, i, st)[r -- (n→i(# vals) + i) ', val]) ⊦ addarray(r, (val0 + vals) + val ', i, st) = (addarray(r, val0 + vals, i, st)[r -- (n→i(# (val0 + vals)) + i) ', val])
[[CONCRETESIMPRULES : ([CSIMPGEN : javavalues generated by [], +;], [CSIMPSEQ : ⊦ [] + vals = vals], [CSIMPSEQ : ⊦ (vals + vals0) + vals1 = vals + vals0 + vals1], [CSIMPSEQ : ⊦ # [] = 0], [CSIMPSEQ : ⊦ i + 0 = i], [CSIMPSEQ : ⊦ i + j + i0 = (i + j) + i0], [CSIMPSEQ : ⊦ i + j = j + i])]]