| st[rk] .refval -- _type ∈ st ∧ st ⊆ st1, rk ∈ st ∧ st ⊆ st1, st[rk] = refval(r), rk ∈ st, st ⊆ st1, rk ∈ st1, st[r -- _type] .type ≤ ty ⊦ r = jvmref, junkref(str, r, st), is_referencevalue(st[rk]) ∧ st[rk] .refval ≠ jvmref ∧ st[st[rk] .refval -- _type] .type ≤ ty ∧ ¬ junkref(str, st[rk] .refval, st1) |
st[rk] = refval(r), st[r -- _type] .type ≤ ty, rk ∈ st1, st ⊆ st1, rk ∈ st, r -- _type ∈ st, junkref(str, r, st1), r ∈ st ⊦ r = jvmref, junkref(str, r, st)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ is_referencevalue(refval(r))], [CSIMPSEQ : ⊦ refval(r) .refval = r], [CSIMPFORWARD : ⊦ r -- sk ∈ st → r ∈ st])]]