| st[r -- _type] = typeval(mkarraytype(byte_type)), st[r -- _length] = intval(i0), 0 ≤ i0, r ∈ st, r -- _type ∈ st, is_arrayref(r, i0, st), r -- _length ∈ st, ∀ j0. ¬ j0 < 0 ∧ ¬ i0 ≤ j0 → is_bytevalue(st[r -- j0 ']) ⊦ ∀ j. 0 ≤ j ∧ j < i0 → r -- j ' ∈ putByteArray(bytes, r, i, st), r = jvmref |
st[r -- _type] = typeval(mkarraytype(byte_type)), st[r -- _length] = intval(i0), j < i0, 0 ≤ i0, r ∈ st, r -- _type ∈ st, is_arrayref(r, i0, st), r -- _length ∈ st, 0 ≤ j, 0 < i0, ∀ j0. ¬ j0 < 0 ∧ ¬ i0 ≤ j0 → is_bytevalue(st[r -- j0 ']) ⊦ r = jvmref, r -- j ' ∈ st, ¬ j < i ∧ ¬ i + n→i(# bytes) ≤ j
[[CONCRETESIMPRULES : ([CSIMPFORWARD : ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j], [CSIMPFORWARD : ⊦ i < j ∧ 0 ≤ i → 0 < j], [CSIMPSEQ : ⊦ ¬ i < j ↔ j ≤ i], [CSIMPSEQ : ⊦ ¬ i ≤ j ↔ j < i], [CSIMPSEQ : ⊦ i ' .index = i], [CSIMPSEQ : ⊦ is_indexkey(i ')], [CSIMPSEQ : ⊦ (r -- sk) .key = sk], [CSIMPSEQ : ⊦ (r -- sk) .ref = r], [CSIMPSEQ : ⊦ rk ∈ putByteArray(bytes, r, i, st) ↔ rk ∈ st ∨ rk .ref = r ∧ is_indexkey(rk .key) ∧ i ≤ rk .key .index ∧ rk .key .index < i + n→i(# bytes)])]]