| fis .keys = instfields(class), newref(r, st), class∃(str, class), validfieldinits(fis, st), class+∃(str, class), ∀ sk, r1. sk × refval(r1) ∈ fis → ¬ junkref(str, r1, st) ⊦ r = jvmref, (∀ r0, ty. validref(str, r0, ty, st) → validref(str, r0, ty, addobj(r, class, fis, st))) ∧ (∀ r0. ¬ r0 ∈ st ∧ r0 ∈ addobj(r, class, fis, st) → ¬ junkref(str, r0, addobj(r, class, fis, st))), is_abstract(class) |
⊦ newref(r1, st) ∧ validref(str, r, ty1, st) → validref(str, r, ty1, addobj(r1, class, fis, st))
fis .keys = instfields(class), junkref(str, r, addobj(r, class, fis, st)), class+∃(str, class), validfieldinits(fis, st), class∃(str, class), newref(r, st), ∀ sk, r1. sk × refval(r1) ∈ fis → ¬ junkref(str, r1, st) ⊦ r = jvmref, r ∈ st, is_abstract(class)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ r ∈ addobj(r0, class1, fis, st) ↔ r = r0 ∨ r ∈ st])]]