| ((r => o * P))(H) ⊦ P(H -- r) ∧ H[r] = o |
⊦ ((P0 * P1))(H) ↔ (∃ H0, H1. H0 ⊥ H1 ∧ H = H0 ∪ H1 ∧ P0(H0) ∧ P1(H1))
Used simplifier rules: maplet: ⊦ ((r => o))(H) ↔ H = (∅ ++ r)[r, o] ∧ r ≠ null;% ⊦ H0 ⊥ H1 → (H0 ∪ H1) -- r = (H0 -- r) ∪ (H1 -- r); (s)% ⊦ H0 ⊥ H1 → (r ∈ H0 ∪ H1 ↔ r ∈ H0 ∨ r ∈ H1); (s)% ⊦ r ∈ H[r0, o] ↔ r ∈ H; (s)% ⊦ ¬ r ∈ ∅; (s)%r0 ≠ null, ¬ r0 ∈ H ⊦ r ∈ H ++ r0 ↔ r = r0 ∨ r ∈ H; (s)%r ∈ H0 ∪ H1 ⊦ H0 ⊥ H1 → (H0 ∪ H1)[r] = (r ∈ H0 ⊃ H0[r];H1[r]); (s)%r ≠ null ⊦ (∅ ++ r)[r, o] ⊥ H ↔ ¬ r ∈ H; (s)%r ∈ H ⊦ H[r, o] -- r = H -- r; (s)%¬ r ∈ H, r ≠ null ⊦ (H ++ r) -- r = H; (s)% ⊦ ¬ r ∈ H → H -- r = H; (s)% ⊦ ∅ ∪ H = H; (s)% ⊦ H[r0, o][r] = (r = r0 ∧ r0 ∈ H ⊃ o;H[r]); (s) Used terms: H, P, r => o