| newref(r0, st0), newref(r0, st) ⊦ (addobj(r0, class, fis, st ∪ st0)[r0 -- sk]) = (st ∪ addobj(r0, class, fis, st0))[r0 -- sk], r0 = jvmref, ¬ sk ∈ fis ∧ sk ≠ _type |
⊦ sk ∈ fis → (addobj(r, class, fis, st)[r -- sk]) = fis[sk]
¬ sk ∈ fis, newref(r0, st0), newref(r0, st) ⊦ (addobj(r0, class, fis, st ∪ st0)[r0 -- sk]) = (st ∪ addobj(r0, class, fis, st0))[r0 -- sk], r0 = jvmref, ¬ sk ∈ fis ∧ sk ≠ _type
sk ∈ fis, newref(r0, st0), newref(r0, st) ⊦ fis[sk] = (st ∪ addobj(r0, class, fis, st0))[r0 -- sk], r0 = jvmref, ¬ sk ∈ fis ∧ sk ≠ _type
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (sk, st ∪ st0, fis, class, r0)]]