| ⊦ r -- sk0 ∈ st ∧ r ∈ st ∧ (∀ r, sk, st, r0, class1. r -- sk ∈ st ∧ r ∈ st → r -- sk ∈ addobj(r0, class1, fis0, st)) → r -- sk0 ∈ addobj(r0, class1, (sk × val) ' + fis0, st) |
⊦ addobj(r, class1, (sk × val) ' + fis, st) = (addobj(r, class1, fis, st)[r -- sk, val])
r -- sk0 ∈ st, r ∈ st, ∀ r, sk, st, r0, class1. r -- sk ∈ st ∧ r ∈ st → r -- sk ∈ addobj(r0, class1, fis0, st) ⊦ r -- sk0 ∈ addobj(r0, class1, fis0, st), r = r0 ∧ sk0 = sk
[[CONCRETESIMPRULES : ([CSIMPSEQ : ⊦ r -- sk = r0 -- sk0 ↔ ¬ ¬ (r = r0 ∧ sk = sk0)], [CSIMPSEQ : ⊦ rk ∈ st[rk0, val] ↔ rk = rk0 ∨ rk ∈ st], [CSIMPSEQ : ⊦ (fis + fis0) + fis1 = fis + fis0 + fis1])]]