| 0 ≤ j ⊦ putByteArray(bytes, r, j, addarray(r, byte_type, n→i(# bytes) + j, st)) = addarray(r, byte_type, mklist(initial_value(byte_type), i→n(j)) + mkjavavalues(bytes), st) |
⊦ addarray(r, ty, i, st) = addarray(r, initial_value(ty), i, st[r -- _type, typeval(mkarraytype(ty))][r -- _length, intval(i)])
0 ≤ j ⊦ putByteArray (bytes, r, j, addarray(r, initial_value(byte_type), n→i(# bytes) + j, st[r -- _type, typeval(mkarraytype(byte_type))][r -- _length, intval(n→i(# bytes) + j)])) = addarray(r, byte_type, mklist(initial_value(byte_type), i→n(j)) + mkjavavalues(bytes), st)
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, n→i(# bytes) + j, byte_type, r)]]