| 0 ≤ j ⊦ putArray (mkjavavalues(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, mklist(initial_value(byte_type), i→n(j)) + mkjavavalues(bytes), 0, st[r -- _type, typeval(mkarraytype(byte_type))]) [r -- _length, intval(j + n→i(# bytes)) ] ) |
⊦ is_fskey(sk) → addarray(r, vals, i, st[r0 -- sk, val]) = (addarray(r, vals, i, st)[r0 -- sk, val])
is_fskey(_type), 0 ≤ j ⊦ putArray (mkjavavalues(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, mklist(initial_value(byte_type), i→n(j)) + mkjavavalues(bytes), 0, st)[r -- _type, typeval(mkarraytype(byte_type))] [r -- _length, intval(j + n→i(# bytes)) ] )
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ is_fskey(_type)])], [EXTRATERMS : (typeval(mkarraytype(byte_type)), _type, r, st, 0, mklist(initial_value(byte_type), i→n(j)) + mkjavavalues(bytes), r)]]