| (putByteArray(bytes0, r1, i + 1, st)[r1 -- i ', byteval(by)][r1 -- i0 ']) = refval(r0), ∀ r1, i, st, i0, r0. (putByteArray(bytes0, r1, i, st)[r1 -- i0 ']) = refval(r0) → st[r1 -- i0 '] = refval(r0) ⊦ st[r1 -- i0 '] = refval(r0) |
(putByteArray(bytes0, r1, i + 1, st)[r1 -- i ', byteval(by)][r1 -- i0 ']) = refval(r0), ∀ r1, i, st, i0, r0. (putByteArray(bytes0, r1, i, st)[r1 -- i0 ']) = refval(r0) → st[r1 -- i0 '] = refval(r0) ⊦ r1 -- i0 ' = r1 -- i ', st[r1 -- i0 '] = refval(r0)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ r -- sk = r0 -- sk0 ↔ r = r0 ∧ sk = sk0], [CSIMPSEQ : ⊦ i ' = i0 ' ↔ i = i0], [CSIMPSEQ : ⊦ (st[rk, val][rk]) = val], [CSIMPSEQ : ⊦ byteval(by) ≠ refval(r)])], [EXTRAFMAS : (r1 -- i0 ' = r1 -- i ')]]