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