| ⊦ r = null, r ∈ rs, r ∈ H, ∀ r0. (r0 ∈ (H ++ r)[r, o] \ rs ↔ r0 ∈ ((H \ rs) ++ r)[r, o]) ∧ (r0 ∈ (H ++ r)[r, o] \ rs → ((H ++ r)[r, o] \ rs)[r0] = ((H \ rs) ++ r)[r, o][r0]) |
⊦ r = null, r ∈ H, r ∈ rs, (r0 = r ∨ r0 ∈ H ∧ ¬ r0 ∈ rs → (r0 = r ∨ r0 ∈ H) ∧ ¬ r0 ∈ rs) ∧ ((r0 = r ∨ r0 ∈ H) ∧ ¬ r0 ∈ rs → ((H ++ r)[r, o] \ rs)[r0] = (r0 = r ⊃ o;((H \ rs) ++ r)[r0]))
Used simplifier rules: in-diffs: ⊦ r ∈ H \ rs ↔ r ∈ H ∧ ¬ r ∈ rs;%in-write: ⊦ r ∈ H[r0, o] ↔ r ∈ H;%in-alloc: r0 ≠ null, ¬ r0 ∈ H ⊦ r ∈ H ++ r0 ↔ r = r0 ∨ r ∈ H;%at-write: ⊦ H[r0, o][r] = (r = r0 ∧ r0 ∈ H ⊃ o;H[r]);