| ⊦ 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]) |
rk = r1 -- sk ⊦ r = r0, ( rk ∈ addobj(r0, class, fis, st) ∨ r1 = r ∧ is_indexkey(sk) ∧ i ≤ sk .index ∧ sk .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 : ([CSIMPELIM : ⊦ r = rk .ref ∧ sk = rk .key ↔ rk = r -- sk])], [EXTRATERMS : (rk, r1, sk)]]