| st[r -- _type] .type = mkarraytype(ty0), ty0 ≤ ty, is_obj(str, r, st) ∨ is_array(str, r, st), validref(str, r, mkarraytype(ty), st), i ≤ st[r -- _length] .intval ⊦ r = jvmref, is_arrayref(r, i, st) |
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ ¬ is_arrayref(r, i, st) ∧ i ≤ st[r -- _length] .intval ∧ r ≠ jvmref → ¬ is_array(str, r, st)], [CSIMPSEQ : ⊦ st[r -- _type] .type = mkarraytype(ty) → ¬ is_obj(str, r, st)])]]