| sk ∈ fis ⊦ (addobj(r, class, fis, st)[r -- sk]) = fis[sk] |
⊦ addobj(r, class1, [], st) = st[r -- _type, typeval(mkclasstype(class1))]
∀ sk, r, class, st. sk ∈ fis0 → (addobj(r, class, fis0, st)[r -- sk]) = fis0[sk], sk ∈ fv + fis0 ⊦ (addobj(r, class, fv + fis0, st)[r -- sk]) = (fv + fis0)[sk]
[[CONCRETESIMPRULES : ([CSIMPGEN : fieldinits generated by [], +;], [CSIMPSEQ : ⊦ (st[rk0, val][rk]) = ((rk = rk0 ⊃ val; st[rk]))], [CSIMPSEQ : ⊦ r -- sk = r0 -- sk0 ↔ ¬ ¬ (r = r0 ∧ sk = sk0)], [CSIMPSEQ : ⊦ ¬ sk ∈ []])]]