| st[r -- _type] = typeval(mkclasstype(class)), goodfieldsandtypes(r, instfields(class), st), okval(val, ty), r -- _type ∈ st, r ∈ st ⊦ mkfs(class0, ty, fieldvar) ' = _type, r = jvmref, goodfieldsandtypes(r, instfields(class), st[r -- mkfs(class0, ty, fieldvar) ', val]) |
⊦ ¬ goodfieldsandtypes(r, sks, st[r0 -- mkfs(class0, ty, fieldvar) ', val]) ∧ mkfs(class0, ty, fieldvar) ' ≠ _type ∧ oktype(val, ty, st) → ¬ goodfieldsandtypes(r, sks, st)
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ oktype(val, ty, st) ↔ okval(val, ty)])], [EXTRATERMS : (r, instfields(class), st, r, class0, ty, fieldvar, val)]]