| i→n(j) ≠ 0, j ≤ 1 + n→i(# bytes0), 0 ≤ j, ∀ j0, r0, i0, st0. ¬ j0 < 0 ∧ ¬ n→i(# bytes0) < j0 → getbytearray(r0, i0, j0, putByteArray(bytes0, r0, i0, st0)) = firstn(i→n(j0), bytes0) ⊦ getbytearray(r, i, j, putByteArray(bytes0, r, i + 1, st)[r -- i ', byteval(by)]) = by ' + firstn(i→n(j) -1, bytes0) |
0 < j, j ≤ 1 + n→i(# bytes0), ∀ j0, r0, i0, st0. ¬ j0 < 0 ∧ ¬ n→i(# bytes0) < j0 → getbytearray(r0, i0, j0, putByteArray(bytes0, r0, i0, st0)) = firstn(i→n(j0), bytes0) ⊦ j = 0, getbytearray(r, i, j, putByteArray(bytes0, r, i + 1, st)[r -- i ', byteval(by)]) = by ' + firstn(i→n(j) - 1, bytes0)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ i + j = j + i], [CSIMPSEQ : ⊦ i + j + i0 = (i + j) + i0], [CSIMPSEQ : ⊦ 0 ≤ n→i(n)], [CSIMPSEQ : ⊦ (~1) < i ↔ 0 ≤ i], [CSIMPSEQ : ⊦ ((* j)) < i0 + ((* j0)) ↔ j - j0 < i0], [CSIMPFORWARD : ⊦ i < j ∧ 0 ≤ i → 0 < j], [CSIMPFORWARD : ⊦ i < j ∧ j ≤ j0 → i < j0], [CSIMPSEQ : ⊦ i ≠ j → (i ≤ j ↔ i < j)], [CSIMPSEQ : ⊦ i→n(i) = 0 ↔ i = 0], [CSIMPSEQ : ⊦ n -1 = n - 1])]]