| H1 ++ r = H0 ∪ H, r =>_ = !(me, O2, r =>_), r =>_(H0), rely(me, O1(r; me), H1 ++ r, O2, H2), H0 ⊥ H, ∃ H0, H1. H0 ⊥ H1 ∧ H = H0 ∪ H1 ∧ !(me, O1, P)(H0) ∧ P0(H1) ⊦ r = null, ((!(me, O2, r =>_ * P) * P0))(H1 ++ r), r ∈ H1 |
H1 ++ r = H0 ∪ H4 ∪ H3, r =>_ = !(me, O2, r =>_), !(me, O1, P)(H4), r =>_(H0), P0(H3), rely(me, O1(r; me), H1 ++ r, O2, H2), H4 ⊥ H3, H0 ⊥ H4, H0 ⊥ H3 ⊦ r = null, ((!(me, O2, r =>_ * P) * P0))(H1 ++ r), r ∈ H1
Used simplifier rules: ⊦ H1 ⊥ H → (H0 ⊥ H1 ∪ H ↔ H0 ⊥ H1 ∧ H0 ⊥ H); (ws)