| st[r1 -- _type] = typeval(mkclasstype(class)), r1 -- _type ∈ st, is_obj(r1, class, addarray(r0, ty, vals, st)), r1 ∈ st ⊦ r1 = r0, r1 = jvmref, is_obj(r1, st) |
⊦ is_obj(r, st) ↔ r ≠ jvmref ∧ r -- _type ∈ st ∧ is_typevalue(st[r -- _type]) ∧ is_classtype(st[r -- _type] .type) ∧ is_obj(r, st[r -- _type] .type .class, st)
st[r1 -- _type] = typeval(mkclasstype(class)), r1 -- _type ∈ st, is_obj(r1, class, addarray(r0, ty, vals, st)), r1 ∈ st ⊦ r1 = r0, r1 = jvmref, r1 ≠ jvmref ∧ r1 -- _type ∈ st ∧ is_typevalue(st[r1 -- _type]) ∧ is_classtype(st[r1 -- _type] .type) ∧ is_obj(r1, st[r1 -- _type] .type .class, st)
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (st, r1)]]