| ¬ (r ≠ jvmref ∧ ¬ is_valid_ref(str, r, st)), is_arraytype(st[r -- _type] .type) ⊦ r = jvmref, sk = _type, junkref(str, r, st), path∃(str, r, r0, st), st[r -- _length] = (st[r0 -- sk, val][r -- _length]) ∧ (0 ≤ i ∧ i < st[r -- _length] .intval → st[r -- i '] = (st[r0 -- sk, val][r -- i '])) |
is_arraytype(st[r -- _type] .type), is_array(str, r, st) ⊦ r = jvmref, sk = _type, junkref(str, r, st), path∃(str, r, r0, st), st[r -- _length] = (st[r0 -- sk, val][r -- _length]) ∧ (0 ≤ i ∧ i < st[r -- _length] .intval → st[r -- i '] = (st[r0 -- sk, val][r -- i ']))
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ is_arraytype (st[r -- _type] .type) ∧ r ≠ jvmref → ( is_valid_ref(str, r, st) ↔ is_array(str, r, st))])]]