| ⊦ (hP0 * hP1) * hP2 = hP0 * hP1 * hP2 |
(hP0 * hP1) * hP2 ≠ hP0 * hP1 * hP2 ⊦
| (hP0 * hP1) * hP2 ≠ hP0 * hP1 * hP2 ⊦ |
¬(((hP0 * hP1) * hP2)(h) ↔ (hP0 * hP1 * hP2)(h)) ⊦
| ¬(((hP0 * hP1) * hP2)(h) ↔ (hP0 * hP1 * hP2)(h)) ⊦ |
((hP0 * hP1) * hP2)(h), ¬ (hP0 * hP1 * hP2)(h) ⊦
(hP0 * hP1 * hP2)(h), ¬ ((hP0 * hP1) * hP2)(h) ⊦
| ((hP0 * hP1) * hP2)(h), ¬ (hP0 * hP1 * hP2)(h) ⊦ |
⊦ (hP0 * hP1)(h) ↔ (∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ hP1(h1))
¬ (hP0 * hP1 * hP2)(h), ∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ (hP0 * hP1)(h0) ∧ hP2(h1) ⊦
Used terms: h, hP2, hP0 * hP1
| ⊦ (hP0 * hP1)(h) ↔ (∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ hP1(h1)) |
| ¬ (hP0 * hP1 * hP2)(h), ∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ (hP0 * hP1)(h0) ∧ hP2(h1) ⊦ |
h0 ⊥ h1, (hP0 * hP1)(h0), hP2(h1), ¬ (hP0 * hP1 * hP2)(h0 ∪ h1) ⊦
| h0 ⊥ h1, (hP0 * hP1)(h0), hP2(h1), ¬ (hP0 * hP1 * hP2)(h0 ∪ h1) ⊦ |
⊦ (hP0 * hP1)(h) ↔ (∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ hP1(h1))
h0 ⊥ h1, hP2(h1), ¬ (hP0 * hP1 * hP2)(h0 ∪ h1), ∃ h1, h2. h1 ⊥ h2 ∧ h0 = h1 ∪ h2 ∧ hP0(h1) ∧ hP1(h2) ⊦
Used terms: h0, hP1, hP0
| ⊦ (hP0 * hP1)(h) ↔ (∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ hP1(h1)) |
| h0 ⊥ h1, hP2(h1), ¬ (hP0 * hP1 * hP2)(h0 ∪ h1), ∃ h1, h2. h1 ⊥ h2 ∧ h0 = h1 ∪ h2 ∧ hP0(h1) ∧ hP1(h2) ⊦ |
h ⊥ h2, h1 ⊥ h, h1 ⊥ h2, hP0(h), hP1(h2), hP2(h1), ¬ (hP0 * hP1 * hP2)((h ∪ h2) ∪ h1) ⊦
Used simplifier rules: h1 ⊥ h2 ⊦ h1 ∪ h2 ⊥ h0 ↔ h0 ⊥ h1 ∧ h0 ⊥ h2; (s)
| h ⊥ h2, h1 ⊥ h, h1 ⊥ h2, hP0(h), hP1(h2), hP2(h1), ¬ (hP0 * hP1 * hP2)((h ∪ h2) ∪ h1) ⊦ |
⊦ h0 ⊥ h1 ∧ h1 ⊥ h ∧ h ⊥ h0 → (h0 ∪ h1) ∪ h = h0 ∪ h1 ∪ h
h ⊥ h2, h1 ⊥ h2, h1 ⊥ h, h2 ⊥ h1, hP0(h), hP1(h2), hP2(h1), ¬ (hP0 * hP1 * hP2)(h ∪ h2 ∪ h1) ⊦
Used simplifier rules: ⊦ h0 ⊥ h1 → h1 ⊥ h0; (ss) Used terms: h, h2, h1
| ⊦ h0 ⊥ h1 ∧ h1 ⊥ h ∧ h ⊥ h0 → (h0 ∪ h1) ∪ h = h0 ∪ h1 ∪ h |
| h ⊥ h2, h1 ⊥ h2, h1 ⊥ h, h2 ⊥ h1, hP0(h), hP1(h2), hP2(h1), ¬ (hP0 * hP1 * hP2)(h ∪ h2 ∪ h1) ⊦ |
h ⊥ h2, h1 ⊥ h, h1 ⊥ h2, h2 ⊥ h1, hP0(h), hP1(h2), hP2(h1), ¬ (hP0 * hP1 * hP2)(h ∪ h2 ∪ h1) ⊦
| h ⊥ h2, h1 ⊥ h, h1 ⊥ h2, h2 ⊥ h1, hP0(h), hP1(h2), hP2(h1), ¬ (hP0 * hP1 * hP2)(h ∪ h2 ∪ h1) ⊦ |
⊦ hP0(h0) ∧ hP1(h1) ∧ h0 ⊥ h1 → (hP0 * hP1)(h0 ∪ h1)
Used simplifier rules: split-union: ⊦ hP0(h0) ∧ hP1(h1) ∧ h0 ⊥ h1 → (hP0 * hP1)(h0 ∪ h1); h1 ⊥ h ⊦ h0 ⊥ h1 ∪ h ↔ h0 ⊥ h1 ∧ h0 ⊥ h; (ws) ⊦ h0 ⊥ h1 → h1 ⊥ h0; (ss) Used terms: h2 ∪ h1, h, hP1 * hP2, hP0
| ⊦ hP0(h0) ∧ hP1(h1) ∧ h0 ⊥ h1 → (hP0 * hP1)(h0 ∪ h1) |
| (hP0 * hP1 * hP2)(h), ¬ ((hP0 * hP1) * hP2)(h) ⊦ |
⊦ (hP0 * hP1)(h) ↔ (∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ hP1(h1))
¬ ((hP0 * hP1) * hP2)(h), ∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ (hP1 * hP2)(h1) ⊦
Used terms: h, hP1 * hP2, hP0
| ⊦ (hP0 * hP1)(h) ↔ (∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ hP1(h1)) |
| ¬ ((hP0 * hP1) * hP2)(h), ∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ (hP1 * hP2)(h1) ⊦ |
h0 ⊥ h1, hP0(h0), (hP1 * hP2)(h1), ¬ ((hP0 * hP1) * hP2)(h0 ∪ h1) ⊦
| h0 ⊥ h1, hP0(h0), (hP1 * hP2)(h1), ¬ ((hP0 * hP1) * hP2)(h0 ∪ h1) ⊦ |
⊦ (hP0 * hP1)(h) ↔ (∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ hP1(h1))
h0 ⊥ h1, hP0(h0), ¬ ((hP0 * hP1) * hP2)(h0 ∪ h1), ∃ h0, h2. h0 ⊥ h2 ∧ h1 = h0 ∪ h2 ∧ hP1(h0) ∧ hP2(h2) ⊦
Used terms: h1, hP2, hP1
| ⊦ (hP0 * hP1)(h) ↔ (∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ hP1(h1)) |
| h0 ⊥ h1, hP0(h0), ¬ ((hP0 * hP1) * hP2)(h0 ∪ h1), ∃ h0, h2. h0 ⊥ h2 ∧ h1 = h0 ∪ h2 ∧ hP1(h0) ∧ hP2(h2) ⊦ |
h ⊥ h2, h0 ⊥ h, h0 ⊥ h2, hP0(h0), hP1(h), hP2(h2), ¬ ((hP0 * hP1) * hP2)(h0 ∪ h ∪ h2) ⊦
Used simplifier rules: h1 ⊥ h ⊦ h0 ⊥ h1 ∪ h ↔ h0 ⊥ h1 ∧ h0 ⊥ h; (ws)
| h ⊥ h2, h0 ⊥ h, h0 ⊥ h2, hP0(h0), hP1(h), hP2(h2), ¬ ((hP0 * hP1) * hP2)(h0 ∪ h ∪ h2) ⊦ |
⊦ h0 ⊥ h1 ∧ h1 ⊥ h ∧ h ⊥ h0 → (h0 ∪ h1) ∪ h = h0 ∪ h1 ∪ h
h ⊥ h2, h0 ⊥ h2, h0 ⊥ h, h2 ⊥ h0, hP0(h0), hP1(h), hP2(h2), ¬ ((hP0 * hP1) * hP2)((h0 ∪ h) ∪ h2) ⊦
Used simplifier rules: ⊦ h0 ⊥ h1 → h1 ⊥ h0; (ss) Used terms: h0, h, h2
| ⊦ h0 ⊥ h1 ∧ h1 ⊥ h ∧ h ⊥ h0 → (h0 ∪ h1) ∪ h = h0 ∪ h1 ∪ h |
| h ⊥ h2, h0 ⊥ h2, h0 ⊥ h, h2 ⊥ h0, hP0(h0), hP1(h), hP2(h2), ¬ ((hP0 * hP1) * hP2)((h0 ∪ h) ∪ h2) ⊦ |
h ⊥ h2, h0 ⊥ h, h0 ⊥ h2, h2 ⊥ h0, hP0(h0), hP1(h), hP2(h2), ¬ ((hP0 * hP1) * hP2)((h0 ∪ h) ∪ h2) ⊦
| h ⊥ h2, h0 ⊥ h, h0 ⊥ h2, h2 ⊥ h0, hP0(h0), hP1(h), hP2(h2), ¬ ((hP0 * hP1) * hP2)((h0 ∪ h) ∪ h2) ⊦ |
⊦ hP0(h0) ∧ hP1(h1) ∧ h0 ⊥ h1 → (hP0 * hP1)(h0 ∪ h1)
Used simplifier rules: split-union: ⊦ hP0(h0) ∧ hP1(h1) ∧ h0 ⊥ h1 → (hP0 * hP1)(h0 ∪ h1); h1 ⊥ h2 ⊦ h1 ∪ h2 ⊥ h0 ↔ h0 ⊥ h1 ∧ h0 ⊥ h2; (s) ⊦ h0 ⊥ h1 → h1 ⊥ h0; (ss) Used terms: h2, h0 ∪ h, hP2, hP0 * hP1
| ⊦ hP0(h0) ∧ hP1(h1) ∧ h0 ⊥ h1 → (hP0 * hP1)(h0 ∪ h1) |
The following image shows the proof tree of sequent calculus. The proved goal is at the bottom. You can click on the nodes to view additional rules. See here for details on colors in a proof tree.