| (H0 ∪ H)[r] = (r ∈ H0 ⊃ H0[r];H[r]), r ∈ H, H0 ⊥ H, ∀ H2, H0, r. # H2 < # (H ++ r0)[r0, o] → H0 ⊥ H2 ∧ (r ∈ H0 ∨ r ∈ H2) → (H0 ∪ H2)[r] = (r ∈ H0 ⊃ H0[r];H2[r]) ⊦ (H0 ∪ H)[r] = (H ++ r0)[r], r0 = null, r0 ∈ H0, r0 ∈ H |
(H0 ∪ H)[r] = H[r], r ∈ H, H0 ⊥ H, ∀ H2, H0, r. # H2 < # (H ++ r0)[r0, o] → H0 ⊥ H2 ∧ (r ∈ H0 ∨ r ∈ H2) → (H0 ∪ H2)[r] = (r ∈ H0 ⊃ H0[r];H2[r]) ⊦ H[r] = (H ++ r0)[r], r0 = null, r0 ∈ H, r0 ∈ H0
Used simplifier rules: disj-r: ⊦ r ∈ H1 ∧ H0 ⊥ H1 → (r ∈ H0 ↔ false);