| (r -- fv .1) × fv .2 ∈ st ∧ instore(r, class, fis0, st), ∀ r, class, st. instore(r, class, fis0, st) ∧ (st[r -- _type] ≠ typeval(mkclasstype(class)) ∨ ¬ r -- _type ∈ st) → r = jvmref, st[r -- _type] ≠ typeval(mkclasstype(class)) ∨ ¬ r -- _type ∈ st ⊦ r = jvmref |
st[r -- fv .1] = fv .2, instore(r, class, fis0, st), r -- fv .1 ∈ st, r ∈ st, ∀ r, class, st. instore(r, class, fis0, st) ∧ (st[r -- _type] ≠ typeval(mkclasstype(class)) ∨ ¬ r -- _type ∈ st) → r = jvmref, st[r -- _type] ≠ typeval(mkclasstype(class)) ∨ ¬ r -- _type ∈ st ⊦ r = jvmref
[[CONCRETESIMPRULES : ([CSIMPFORWARD : ⊦ r -- sk ∈ st → r ∈ st], [CSIMPSEQ : ⊦ rk × val ∈ st ↔ rk ∈ st ∧ st[rk] = val])]]