| r -- i ' ∈ addclass(class1, fis0, st), r ∈ addclass(class1, fis0, st), ∀ r0, i0, class, st0. r0 -- i0 ' ∈ addclass(class, fis0, st0) → r0 -- i0 ' ∈ st0 ⊦ fs .class = class1, r -- i ' ∈ st |
fs = mkfs(class0, ty, fieldvar), r -- i ' ∈ addclass(class1, fis0, st), r ∈ addclass(class1, fis0, st), ∀ r0, i0, class, st0. r0 -- i0 ' ∈ addclass(class, fis0, st0) → r0 -- i0 ' ∈ st0 ⊦ class0 = class1, r -- i ' ∈ st
[[CONCRETESIMPRULES : ([CSIMPELIM : ⊦ class = fs .class ∧ ty = fs .type ∧ fieldvar = fs .field ↔ fs = mkfs(class, ty, fieldvar)])], [EXTRATERMS : (fs, class0, ty, fieldvar)]]