| fs = mkfs(class, ty, fieldvar), r -- sk ∈ addclass(class, (fs ' × val) ' + fis0, st), r ∈ st, ∀ r, sk, class1, st. r -- sk ∈ addclass(class1, fis0, st) ∧ r ∈ st → r = jvmref ∨ r -- sk ∈ st ⊦ r = jvmref, r -- sk ∈ st |
⊦ addclass(class1, (mkfs(class1, ty, fieldvar) ' × val) ' + fis, st) = (addclass(class1, fis, st)[jvmref -- mkfs(class1, ty, fieldvar) ', val])
⊦ r ∈ st → r ∈ addclass(class1, fis, st)
r -- sk ∈ addclass(class, fis0, st), r ∈ st, ∀ r, sk, class1, st. r -- sk ∈ addclass(class1, fis0, st) ∧ r ∈ st → r = jvmref ∨ r -- sk ∈ st ⊦ r = jvmref, r -- sk ∈ st
[[CONCRETESIMPRULES : ([CSIMPFORWARD : ⊦ r -- sk ∈ st → r ∈ st], [CSIMPSEQ : ⊦ r ≠ r0 → ( r -- sk ∈ st[r0 -- sk0, val] ↔ r -- sk ∈ st)], [CSIMPSEQ : ⊦ (fis + fis0) + fis1 = fis + fis0 + fis1])]]