| ⊦ putArray(vals, r, 0, addarray(r, ty, n→i(# vals) + 1, st)) = (addarray(r, ty, vals, st)[r -- n→i(# vals) ', initial_value(ty)][r -- _length, intval(n→i(# vals) + 1)]) |
⊦ addarray(r, ty, i, st) = addarray(r, initial_value(ty), i, st[r -- _type, typeval(mkarraytype(ty))][r -- _length, intval(i)])
⊦ putArray (vals, r, 0, addarray(r, initial_value(ty), n→i(# vals) + 1, st[r -- _type, typeval(mkarraytype(ty))][r -- _length, intval(n→i(# vals) + 1)])) = (addarray(r, ty, vals, st)[r -- n→i(# vals) ', initial_value(ty)][r -- _length, intval(n→i(# vals) + 1)])
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, n→i(# vals) + 1, ty, r)]]