| H1 ++ r = H0 ∪ H, !(me, O2, r =>_)(H0), ((!(me, O2, P) * P0))(H), rely(me, O1(r; me), H0 ∪ H, O2, H2), H0 ⊥ H ⊦ r = null, ((r =>_ * !(me, O1, P) * P0))(H0 ∪ H), ((!(me, O1, P) * P0))(H1), r ∈ H1 |
⊦ P0(H0) ∧ P1(H1) ∧ H0 ⊥ H1 → ((P0 * P1))(H0 ∪ H1)
H1 ++ r = H0 ∪ H, !(me, O2, r =>_)(H0), ((!(me, O2, P) * P0))(H), rely(me, O1(r; me), H0 ∪ H, O2, H2), H0 ⊥ H ⊦ r = null, ((!(me, O1, P) * P0))(H1), ((r =>_ * !(me, O1, P) * P0))(H0 ∪ H), r ∈ H1, r =>_(H0) ∧ ((!(me, O1, P) * P0))(H) ∧ H0 ⊥ H
Used terms: H, H0, !(me, O1, P) * P0, r =>_