| is_indexkey(sk), r -- sk ∈ addclass(fs .class, (fs ' × val) ' + fis0, st), r ∈ addclass(fs .class, (fs ' × val) ' + fis0, st), ∀ sk0, r0, class0, st0. ¬ is_fskey(sk0) → (r0 -- sk0 ∈ addclass(class0, fis0, st0) → r0 -- sk0 ∈ st0) ⊦ r -- sk ∈ st |
fs = mkfs(class, ty, fieldvar), is_indexkey(sk), r -- sk ∈ addclass(class, (fs ' × val) ' + fis0, st), r ∈ addclass(class, (fs ' × val) ' + fis0, st), ∀ sk0, r0, class0, st0. ¬ is_fskey(sk0) → (r0 -- sk0 ∈ addclass(class0, fis0, st0) → r0 -- sk0 ∈ st0) ⊦ r -- sk ∈ st
[[CONCRETESIMPRULES : ([CSIMPELIM : ⊦ class = fs .class ∧ ty = fs .type ∧ fieldvar = fs .field ↔ fs = mkfs(class, ty, fieldvar)])], [EXTRATERMS : (fs, class, ty, fieldvar)]]