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