| r0 = r ∨ r0 ∈ H ↔ r0 ∈ (∅ ++ r)[r, o] ∪ H0, P(H0), r0 = r ∨ r0 ∈ H → (H ++ r)[r0] = ((∅ ++ r)[r, o] ∪ H0)[r0] ⊦ r = null, P(H), r ∈ H0, r ∈ H, (r0 ∈ H0 ↔ r0 ∈ H) ∧ (r0 ∈ H0 → H0[r0] = H[r0]), r0 ∈ (∅ ++ r)[r, o] ∪ H0 ∧ (∅ ++ r)[r, o] ⊥ H0 |
H[r0] = ((∅ ++ r)[r, o] ∪ H0)[r0], P(H0), r0 ∈ H, r0 ∈ (∅ ++ r)[r, o] ∪ H0 ⊦ r = null, P(H), r ∈ H, r ∈ H0, r0 ∈ H0
Used simplifier rules: r ∈ H, r0 ≠ null, ¬ r0 ∈ H ⊦ r ≠ r0 → (H ++ r0)[r] = H[r]; (s)%r ≠ null ⊦ (∅ ++ r)[r, o] ⊥ H ↔ ¬ r ∈ H; (s)%r0 ≠ null, ¬ r0 ∈ H ⊦ r ∈ H ++ r0 ↔ r = r0 ∨ r ∈ H; (s)% ⊦ ¬ r ∈ ∅; (s)% ⊦ r ∈ H[r0, o] ↔ r ∈ H; (s)% ⊦ H0 ⊥ H1 → (r ∈ H0 ∪ H1 ↔ r ∈ H0 ∨ r ∈ H1); (s)