| ∀ r, str, class, st. r = jvmref ∨ (junkref(str, r, addclass(class, fis0, st)) ↔ junkref(str, r, st)) ⊦ junkref(str, r, addclass(class, fis0, st)[jvmref -- mkfs(class, ty, fieldvar) ', val]) ↔ junkref(str, r, st), r = jvmref |
⊦ rk1 .ref = jvmref ∧ r ≠ jvmref → (junkref(str, r, st[rk1, val]) ↔ junkref(str, r, st))
(jvmref -- mkfs(class, ty, fieldvar) ') .ref = jvmref ∧ r ≠ jvmref, ∀ r, str, class, st. r = jvmref ∨ (junkref(str, r, addclass(class, fis0, st)) ↔ junkref(str, r, st)) ⊦ junkref(str, r, addclass(class, fis0, st)) ↔ junkref(str, r, st), r = jvmref
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ (addclass(class1, fis, st) [ jvmref -- mkfs(class1, ty, fieldvar) ', val ] ) = addclass (class1, fis[mkfs(class1, ty, fieldvar) ', val], st)], [CSIMPSEQ : ⊦ (r -- sk) .ref = r])], [EXTRATERMS : (val, jvmref -- mkfs(class, ty, fieldvar) ', addclass(class, fis0, st), r, str)]]