| st[rk] = refval(r), validref(str, r, mkclasstype(class), st), rk ∈ st, sk ∈ instfields(class), is_fskey(sk) ⊦ r = jvmref, r -- sk ∈ st |
⊦ validref(str, r, ty, st) ↔ r = jvmref ∨ st[r -- _type] .type ≤ ty ∧ ¬ junkref(str, r, st)
st[rk] = refval(r), r = jvmref ∨ st[r -- _type] .type ≤ mkclasstype(class) ∧ ¬ junkref(str, r, st), rk ∈ st, sk ∈ instfields(class), is_fskey(sk) ⊦ r = jvmref, r -- sk ∈ st
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, mkclasstype(class), r, str)]]