| sk = i ', r0 -- sk ∈ addarray(r0, ty, n→i(# vals) + 1, st) ∨ ¬ i ≤ 0 ∧ ¬ n→i(# vals) < i ↔ r0 -- sk ∈ addarray(r0, ty, refval(jvmref) ' + vals, st), is_reftype(ty), is_indexkey(sk) ⊦ (putArray(vals, r0, 1, addarray(r0, ty, n→i(# vals) + 1, st))[r0 -- sk]) = (addarray(r0, ty, refval(jvmref) ' + vals, st)[r0 -- sk]) |
r0 -- i ' ∈ addarray(r0, ty, n→i(# vals) + 1, st) ∨ ¬ i ≤ 0 ∧ ¬ n→i(# vals) < i ↔ r0 -- i ' ∈ addarray(r0, ty, refval(jvmref) ' + vals, st), is_reftype(ty) ⊦ (putArray(vals, r0, 1, addarray(r0, ty, n→i(# vals) + 1, st))[r0 -- i ']) = (addarray(r0, ty, refval(jvmref) ' + vals, st)[r0 -- i '])
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ is_indexkey(i ')])]]