| st[r -- _type] = typeval(mkclasstype(class)), r -- _type ∈ st, r ∈ st ⊦ r = jvmref, goodfieldsandtypes(r, instfields(class), st[r0 -- i ', val]) ↔ goodfieldsandtypes(r, instfields(class), st) |
⊦ r ≠ r0 → (goodfieldsandtypes(r, sks, st[r0 -- sk0, val]) ↔ goodfieldsandtypes(r, sks, st))
¬ r ≠ r0, st[r -- _type] = typeval(mkclasstype(class)), r -- _type ∈ st, r ∈ st ⊦ r = jvmref, goodfieldsandtypes(r, instfields(class), st[r0 -- i ', val]) ↔ goodfieldsandtypes(r, instfields(class), st)
[[CONCRETESIMPRULES : ()], [EXTRATERMS : (val, i ', r0, st, instfields(class), r)]]