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