| ⊦ r = r0, (rk ∈ putByteArray(bytes, r, i, addobj(r0, class, fis, st)) ↔ rk ∈ addobj(r0, class, fis, putByteArray(bytes, r, i, st))) ∧ (putByteArray(bytes, r, i, addobj(r0, class, fis, st))[rk]) = (addobj(r0, class, fis, putByteArray(bytes, r, i, st))[rk]) |
⊦ 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)
⊦ r = r0, ( rk ∈ addobj(r0, class, fis, st) ∨ rk .ref = r ∧ is_indexkey(rk .key) ∧ i ≤ rk .key .index ∧ rk .key .index < i + n→i(# bytes) ↔ rk ∈ addobj(r0, class, fis, putByteArray(bytes, r, i, st))) ∧ (putByteArray(bytes, r, i, addobj(r0, class, fis, st))[rk]) = (addobj(r0, class, fis, putByteArray(bytes, r, i, st))[rk])
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (addobj(r0, class, fis, st), i, r, bytes, rk)]]