| validref(str, r, mkarraytype(ty), st), is_reftype(ty), val ∈ getarray(r, st) ⊦ r = jvmref, is_referencevalue(val) ∧ validref(str, val .refval, ty, st) |
⊦ val ∈ getarray(r, st) ↔ (∃ i. 0 ≤ i ∧ i < st[r -- _length] .intval ∧ st[r -- i '] = val)
validref(str, r, mkarraytype(ty), st), is_reftype(ty), ∃ i. 0 ≤ i ∧ i < st[r -- _length] .intval ∧ st[r -- i '] = val ⊦ r = jvmref, is_referencevalue(val) ∧ validref(str, val .refval, ty, st)
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, r, val)]]