| ∀ class1, sk, val0, st, val. (addclass(class1, fis0 + (sk × val0) ', st)[jvmref -- sk, val]) = (addclass(class1, fis0, st)[jvmref -- sk, val]) ⊦ (addclass(class, fis0 + (sk × val0) ', st)[jvmref -- sk, val][jvmref -- mkfs(class, ty, fieldvar) ', val1]) = (addclass(class, fis0, st)[jvmref -- mkfs(class, ty, fieldvar) ', val1][jvmref -- sk, val]), sk = mkfs(class, ty, fieldvar) ' |
⊦ rk ≠ rk0 → (st[rk0, val][rk, val0]) = (st[rk, val0][rk0, val])
jvmref -- sk ≠ jvmref -- mkfs(class, ty, fieldvar) ', ∀ class1, sk, val0, st, val. (addclass(class1, fis0 + (sk × val0) ', st)[jvmref -- sk, val]) = (addclass(class1, fis0, st)[jvmref -- sk, val]) ⊦ (addclass(class, fis0 + (sk × val0) ', st)[jvmref -- sk, val][jvmref -- mkfs(class, ty, fieldvar) ', val1]) = (addclass(class, fis0, st)[jvmref -- sk, val][jvmref -- mkfs(class, ty, fieldvar) ', val1]), sk = mkfs(class, ty, fieldvar) '
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ r -- sk = r0 -- sk0 ↔ r = r0 ∧ sk = sk0])], [EXTRATERMS : (val, jvmref -- sk, val1, jvmref -- mkfs(class, ty, fieldvar) ', addclass(class, fis0, st))]]