| r -- j ' = r -- i ', okarray(r, ty, st), okval(val, ty), r ∈ st ⊦ r = jvmref, okreftype(refval(r), mkarraytype(ty), st[r -- i ', val]) ∧ r -- _length ∈ st ∧ is_integervalue(st[r -- _length]) ∧ is_arrayref(r, st[r -- _length] .intval, st[r -- i ', val]) ∧ (0 ≤ j ∧ j < st[r -- _length] .intval → okval(st[r -- i ', val][r -- j '], ty)) |
r ∈ st, okval(val, ty), okarray(r, ty, st) ⊦ r = jvmref, okreftype(refval(r), mkarraytype(ty), st[r -- i ', val]) ∧ r -- _length ∈ st ∧ is_integervalue(st[r -- _length]) ∧ is_arrayref(r, st[r -- _length] .intval, st[r -- i ', val])
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (st[rk, val][rk]) = val], [CSIMPSEQ : ⊦ i ' = i0 ' ↔ i = i0], [CSIMPSEQ : ⊦ r -- sk = r0 -- sk0 ↔ r = r0 ∧ sk = sk0])]]