| by ' + bytes0 ≠ [], ∀ r, i, st, r0, fs, val. putByteArray(bytes0, r, i, st[r0 -- fs ', val]) = (putByteArray(bytes0, r, i, st)[r0 -- fs ', val]) ⊦ (putByteArray(bytes0, r, i + 1, st[r0 -- fs ', val])[r -- i ', byteval(by)]) = (putByteArray((by ' + bytes0) .rest, r, i + 1, st)[r -- i ', byteval((by ' + bytes0) .first)][r0 -- fs ', val]) |
∀ r, i, st, r0, fs, val. putByteArray(bytes0, r, i, st[r0 -- fs ', val]) = (putByteArray(bytes0, r, i, st)[r0 -- fs ', val]) ⊦ (putByteArray(bytes0, r, i + 1, st[r0 -- fs ', val])[r -- i ', byteval(by)]) = (putByteArray(bytes0, r, i + 1, st)[r -- i ', byteval(by)][r0 -- fs ', val])
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ by ' + bytes ≠ []], [CSIMPSEQ : ⊦ (by ' + bytes) .first = by], [CSIMPSEQ : ⊦ (bytes + bytes0) + bytes1 = bytes + bytes0 + bytes1], [CSIMPSEQ : ⊦ (by ' + bytes) .rest = bytes])]]