| ⊦ r -- sk0 ∈ addobj(r0, class1, (sk × val) ' + fis0, st) ∧ r ∈ st ∧ (∀ r, sk, r0, class1, st. r -- sk ∈ addobj(r0, class1, fis0, st) ∧ r ∈ st → r = r0 ∨ r -- sk ∈ st) → r = r0 ∨ r -- sk0 ∈ st |
⊦ addobj(r, class1, (sk × val) ' + fis, st) = (addobj(r, class1, fis, st)[r -- sk, val])
⊦ r ∈ addobj(r0, class1, fis, st) ↔ r = r0 ∨ r ∈ st
r -- sk0 ∈ addobj(r0, class1, fis0, st), r ∈ st, ∀ r, sk, r0, class1, st. r -- sk ∈ addobj(r0, class1, fis0, st) ∧ r ∈ st → r = r0 ∨ r -- sk ∈ st ⊦ r = r0, r -- sk0 ∈ 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])]]