| ⊦ 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) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h))
(hP0 -* hP1 -* hP2)(h), ∃ h1. ¬(h1 ⊥ h ∧ (hP0 * hP1)(h1) → hP2(h1 ∪ h)) ⊦
Used terms: h, hP2, hP0 * hP1
| ⊦ (hP0 -* hP1)(h) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h)) |
| (hP0 -* hP1 -* hP2)(h), ∃ h1. ¬(h1 ⊥ h ∧ (hP0 * hP1)(h1) → hP2(h1 ∪ h)) ⊦ |
h1 ⊥ h, (hP0 * hP1)(h1), (hP0 -* hP1 -* hP2)(h), ¬ hP2(h1 ∪ h) ⊦
| h1 ⊥ h, (hP0 * hP1)(h1), (hP0 -* hP1 -* hP2)(h), ¬ hP2(h1 ∪ h) ⊦ |
⊦ (hP0 -* hP1)(h) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h))
h1 ⊥ h, (hP0 * hP1)(h1), ¬ hP2(h1 ∪ h), ∀ h1. h1 ⊥ h ∧ hP0(h1) → (hP1 -* hP2)(h1 ∪ h) ⊦
Used terms: h, hP1 -* hP2, hP0
| ⊦ (hP0 -* hP1)(h) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h)) |
| h1 ⊥ h, (hP0 * hP1)(h1), ¬ hP2(h1 ∪ h), ∀ h1. h1 ⊥ h ∧ hP0(h1) → (hP1 -* hP2)(h1 ∪ h) ⊦ |
⊦ (hP0 * hP1)(h) ↔ (∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ hP1(h1))
h1 ⊥ h, ¬ hP2(h1 ∪ h), ∃ h0, h2. h0 ⊥ h2 ∧ h1 = h0 ∪ h2 ∧ hP0(h0) ∧ hP1(h2), ∀ h1. h1 ⊥ h ∧ hP0(h1) → (hP1 -* hP2)(h1 ∪ h) ⊦
Used terms: h1, hP1, hP0
| ⊦ (hP0 * hP1)(h) ↔ (∃ h0, h1. h0 ⊥ h1 ∧ h = h0 ∪ h1 ∧ hP0(h0) ∧ hP1(h1)) |
| h1 ⊥ h, ¬ hP2(h1 ∪ h), ∃ h0, h2. h0 ⊥ h2 ∧ h1 = h0 ∪ h2 ∧ hP0(h0) ∧ hP1(h2), ∀ h1. h1 ⊥ h ∧ hP0(h1) → (hP1 -* hP2)(h1 ∪ h) ⊦ |
h0 ⊥ h2, h0 ∪ h2 ⊥ h, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), ∀ h1. h1 ⊥ h ∧ hP0(h1) → (hP1 -* hP2)(h1 ∪ h) ⊦
| h0 ⊥ h2, h0 ∪ h2 ⊥ h, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), ∀ h1. h1 ⊥ h ∧ hP0(h1) → (hP1 -* hP2)(h1 ∪ h) ⊦ |
h0 ∪ h2 ⊥ h, h0 ⊥ h2, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), h0 ⊥ h ∧ hP0(h0) → (hP1 -* hP2)(h0 ∪ h) ⊦
Used terms: h0
| h0 ∪ h2 ⊥ h, h0 ⊥ h2, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), h0 ⊥ h ∧ hP0(h0) → (hP1 -* hP2)(h0 ∪ h) ⊦ |
h ⊥ h0, h ⊥ h2, h0 ⊥ h2, hP0(h0), hP1(h2), (hP1 -* hP2)(h0 ∪ h), ¬ hP2((h0 ∪ h2) ∪ h) ⊦
Used simplifier rules: ⊦ h0 ⊥ h1 → h1 ⊥ h0; (ss) h1 ⊥ h2 ⊦ h1 ∪ h2 ⊥ h0 ↔ h0 ⊥ h1 ∧ h0 ⊥ h2; (s)
| h ⊥ h0, h ⊥ h2, h0 ⊥ h2, hP0(h0), hP1(h2), (hP1 -* hP2)(h0 ∪ h), ¬ hP2((h0 ∪ h2) ∪ h) ⊦ |
⊦ (hP0 -* hP1)(h) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h))
h ⊥ h2, h ⊥ h0, h0 ⊥ h2, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), ∀ h1. h1 ⊥ h0 ∪ h ∧ hP1(h1) → hP2(h1 ∪ h0 ∪ h) ⊦
Used terms: hP1, hP2, h0 ∪ h
| ⊦ (hP0 -* hP1)(h) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h)) |
| h ⊥ h2, h ⊥ h0, h0 ⊥ h2, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), ∀ h1. h1 ⊥ h0 ∪ h ∧ hP1(h1) → hP2(h1 ∪ h0 ∪ h) ⊦ |
h ⊥ h0, h ⊥ h2, h0 ⊥ h2, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), h2 ⊥ h0 ∪ h ∧ hP1(h2) → hP2(h2 ∪ h0 ∪ h) ⊦
Used terms: h2
| h ⊥ h0, h ⊥ h2, h0 ⊥ h2, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), h2 ⊥ h0 ∪ h ∧ hP1(h2) → hP2(h2 ∪ h0 ∪ h) ⊦ |
h ⊥ h2, h ⊥ h0, h0 ⊥ h2, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), h2 ⊥ h0 ∪ h → hP2(h2 ∪ h0 ∪ h) ⊦
| h ⊥ h2, h ⊥ h0, h0 ⊥ h2, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), h2 ⊥ h0 ∪ h → hP2(h2 ∪ h0 ∪ h) ⊦ |
h1 ⊥ h ⊦ h0 ⊥ h1 ∪ h ↔ h0 ⊥ h1 ∧ h0 ⊥ h
h ⊥ h0, h ⊥ h2, h0 ⊥ h2, h0 ⊥ h, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), h2 ⊥ h0 ∧ h2 ⊥ h → hP2(h2 ∪ h0 ∪ h) ⊦
Used simplifier rules: ⊦ h0 ⊥ h1 → h1 ⊥ h0; (ss) Used terms: h2, h0, h
| h1 ⊥ h ⊦ h0 ⊥ h1 ∪ h ↔ h0 ⊥ h1 ∧ h0 ⊥ h |
| h ⊥ h0, h ⊥ h2, h0 ⊥ h2, h0 ⊥ h, hP0(h0), hP1(h2), ¬ hP2((h0 ∪ h2) ∪ h), h2 ⊥ h0 ∧ h2 ⊥ h → hP2(h2 ∪ h0 ∪ h) ⊦ |
h ⊥ h2, h ⊥ h0, h0 ⊥ h, h0 ⊥ h2, hP0(h0), hP1(h2), hP2(h2 ∪ h0 ∪ h), ¬ hP2((h0 ∪ h2) ∪ h) ⊦
Used simplifier rules: ⊦ h0 ⊥ h1 → h1 ⊥ h0; (ss)
| h ⊥ h2, h ⊥ h0, h0 ⊥ h, h0 ⊥ h2, hP0(h0), hP1(h2), hP2(h2 ∪ h0 ∪ h), ¬ hP2((h0 ∪ h2) ∪ h) ⊦ |
⊦ h0 ⊥ h1 → h1 ∪ h0 = h0 ∪ h1
h ⊥ h0, h ⊥ h2, h0 ⊥ h2, h0 ⊥ h, h2 ⊥ h0, hP0(h0), hP1(h2), hP2(h2 ∪ h0 ∪ h), ¬ hP2((h2 ∪ h0) ∪ h) ⊦
Used simplifier rules: ⊦ h0 ⊥ h1 → h1 ⊥ h0; (ss) Used terms: h0, h2
| ⊦ h0 ⊥ h1 → h1 ∪ h0 = h0 ∪ h1 |
| h ⊥ h0, h ⊥ h2, h0 ⊥ h2, h0 ⊥ h, h2 ⊥ h0, hP0(h0), hP1(h2), hP2(h2 ∪ h0 ∪ h), ¬ hP2((h2 ∪ h0) ∪ h) ⊦ |
h0 ⊥ h1, h1 ⊥ h, h ⊥ h0 ⊦ (h0 ∪ h1) ∪ h = h0 ∪ h1 ∪ h
Used simplifier rules: ⊦ h0 ⊥ h1 → h1 ⊥ h0; (ss) Used terms: h2, h0, h
| h0 ⊥ h1, h1 ⊥ h, h ⊥ h0 ⊦ (h0 ∪ h1) ∪ h = h0 ∪ h1 ∪ h |
| (hP0 * hP1 -* hP2)(h), ¬ (hP0 -* hP1 -* hP2)(h) ⊦ |
⊦ (hP0 -* hP1)(h) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h))
(hP0 * hP1 -* hP2)(h), ∃ h1. ¬(h1 ⊥ h ∧ hP0(h1) → (hP1 -* hP2)(h1 ∪ h)) ⊦
Used terms: h, hP1 -* hP2, hP0
| ⊦ (hP0 -* hP1)(h) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h)) |
| (hP0 * hP1 -* hP2)(h), ∃ h1. ¬(h1 ⊥ h ∧ hP0(h1) → (hP1 -* hP2)(h1 ∪ h)) ⊦ |
h1 ⊥ h, hP0(h1), (hP0 * hP1 -* hP2)(h), ¬ (hP1 -* hP2)(h1 ∪ h) ⊦
| h1 ⊥ h, hP0(h1), (hP0 * hP1 -* hP2)(h), ¬ (hP1 -* hP2)(h1 ∪ h) ⊦ |
⊦ (hP0 -* hP1)(h) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h))
h1 ⊥ h, (hP0 * hP1 -* hP2)(h), hP0(h1), ∃ h0. ¬(h0 ⊥ h1 ∪ h ∧ hP1(h0) → hP2(h0 ∪ h1 ∪ h)) ⊦
Used terms: h1 ∪ h, hP2, hP1
| ⊦ (hP0 -* hP1)(h) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h)) |
| h1 ⊥ h, (hP0 * hP1 -* hP2)(h), hP0(h1), ∃ h0. ¬(h0 ⊥ h1 ∪ h ∧ hP1(h0) → hP2(h0 ∪ h1 ∪ h)) ⊦ |
h0 ⊥ h1 ∪ h, h1 ⊥ h, hP0(h1), (hP0 * hP1 -* hP2)(h), hP1(h0), ¬ hP2(h0 ∪ h1 ∪ h) ⊦
| h0 ⊥ h1 ∪ h, h1 ⊥ h, hP0(h1), (hP0 * hP1 -* hP2)(h), hP1(h0), ¬ hP2(h0 ∪ h1 ∪ h) ⊦ |
⊦ (hP0 -* hP1)(h) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h))
h0 ⊥ h1 ∪ h, h1 ⊥ h, hP0(h1), hP1(h0), ¬ hP2(h0 ∪ h1 ∪ h), ∀ h1. h1 ⊥ h ∧ (hP0 * hP1)(h1) → hP2(h1 ∪ h) ⊦
Used terms: h, hP2, hP0 * hP1
| ⊦ (hP0 -* hP1)(h) ↔ (∀ h1. h1 ⊥ h ∧ hP0(h1) → hP1(h1 ∪ h)) |
| h0 ⊥ h1 ∪ h, h1 ⊥ h, hP0(h1), hP1(h0), ¬ hP2(h0 ∪ h1 ∪ h), ∀ h1. h1 ⊥ h ∧ (hP0 * hP1)(h1) → hP2(h1 ∪ h) ⊦ |
h0 ⊥ h1 ∪ h, h1 ⊥ h, hP0(h1), hP1(h0), ¬ hP2(h0 ∪ h1 ∪ h), h0 ∪ h1 ⊥ h ∧ (hP0 * hP1)(h0 ∪ h1) → hP2((h0 ∪ h1) ∪ h) ⊦
Used terms: h0 ∪ h1
| h0 ⊥ h1 ∪ h, h1 ⊥ h, hP0(h1), hP1(h0), ¬ hP2(h0 ∪ h1 ∪ h), h0 ∪ h1 ⊥ h ∧ (hP0 * hP1)(h0 ∪ h1) → hP2((h0 ∪ h1) ∪ h) ⊦ |
h0 ⊥ h1 ∪ h, h1 ⊥ h, hP0(h1), hP1(h0), ¬ hP2(h0 ∪ h1 ∪ h), h0 ∪ h1 ⊥ h ∧ (hP0 * hP1)(h0 ∪ h1) → hP2((h0 ∪ h1) ∪ h) ⊦
| h0 ⊥ h1 ∪ h, h1 ⊥ h, hP0(h1), hP1(h0), ¬ hP2(h0 ∪ h1 ∪ h), h0 ∪ h1 ⊥ h ∧ (hP0 * hP1)(h0 ∪ h1) → hP2((h0 ∪ h1) ∪ h) ⊦ |
h0 ⊥ h1, h1 ⊥ h, h ⊥ h0 ⊦ (h0 ∪ h1) ∪ h = h0 ∪ h1 ∪ h
Used simplifier rules: split-union: ⊦ hP0(h0) ∧ hP1(h1) ∧ h0 ⊥ h1 → (hP0 * hP1)(h0 ∪ h1); sep-ass: ⊦ (hP0 * hP1) * hP2 = hP0 * hP1 * hP2; sep-com: ⊦ hP0 * hP1 = hP1 * hP0; split-union: ⊦ hP0(h0) ∧ hP1(h1) ∧ h0 ⊥ h1 → (hP0 * hP1)(h0 ∪ h1); sep-ass: ⊦ (hP0 * hP1) * hP2 = hP0 * hP1 * hP2; sep-com: ⊦ hP0 * hP1 = hP1 * hP0; h1 ⊥ h ⊦ h0 ⊥ h1 ∪ h ↔ h0 ⊥ h1 ∧ h0 ⊥ h; (ws) h1 ⊥ h2 ⊦ h1 ∪ h2 ⊥ h0 ↔ h0 ⊥ h1 ∧ h0 ⊥ h2; (s) ⊦ h0 ⊥ h1 → h1 ⊥ h0; (ss) Used terms: h0, h1, h
| h0 ⊥ h1, h1 ⊥ h, h ⊥ h0 ⊦ (h0 ∪ h1) ∪ h = h0 ∪ h1 ∪ h |
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.