| ⊦ hP ⊗ emp = hP |
hP ⊗ emp ≠ hP ⊦
| hP ⊗ emp ≠ hP ⊦ |
¬((hP ⊗ emp)(h) ↔ hP(h)) ⊦
| ¬((hP ⊗ emp)(h) ↔ hP(h)) ⊦ |
⊦ (hP0 ⊗ hP1)(h) ↔ (∃ h0, h1, h2. h0 ⊥ h2 ∧ h0 ⊥ h1 ∧ h1 ⊥ h2 ∧ h = h0 ∪ h1 ∪ h2 ∧ hP0(h0 ∪ h2) ∧ hP1(h1 ∪ h2))
⊦ (∃ h0, h1, h2. h0 ⊥ h2 ∧ h0 ⊥ h1 ∧ h1 ⊥ h2 ∧ h = h0 ∪ h1 ∪ h2 ∧ hP(h0 ∪ h2) ∧ emp(h1 ∪ h2)) ↔ hP(h)
Used terms: h, emp, hP
| ⊦ (hP0 ⊗ hP1)(h) ↔ (∃ h0, h1, h2. h0 ⊥ h2 ∧ h0 ⊥ h1 ∧ h1 ⊥ h2 ∧ h = h0 ∪ h1 ∪ h2 ∧ hP0(h0 ∪ h2) ∧ hP1(h1 ∪ h2)) |
| ⊦ (∃ h0, h1, h2. h0 ⊥ h2 ∧ h0 ⊥ h1 ∧ h1 ⊥ h2 ∧ h = h0 ∪ h1 ∪ h2 ∧ hP(h0 ∪ h2) ∧ emp(h1 ∪ h2)) ↔ hP(h) |
⊦ (∃ h0, h1, h2. h0 ⊥ h2 ∧ h0 ⊥ h1 ∧ h1 ⊥ h2 ∧ h = h0 ∪ h1 ∪ h2 ∧ hP(h0 ∪ h2) ∧ h1 ∪ h2 = ∅) ↔ hP(h)
Used simplifier rules: emp: ⊦ emp(h) ↔ h = ∅;
| ⊦ (∃ h0, h1, h2. h0 ⊥ h2 ∧ h0 ⊥ h1 ∧ h1 ⊥ h2 ∧ h = h0 ∪ h1 ∪ h2 ∧ hP(h0 ∪ h2) ∧ h1 ∪ h2 = ∅) ↔ hP(h) |
¬ hP(h), ∃ h0, h1, h2. h0 ⊥ h2 ∧ h0 ⊥ h1 ∧ h1 ⊥ h2 ∧ h = h0 ∪ h1 ∪ h2 ∧ hP(h0 ∪ h2) ∧ h1 ∪ h2 = ∅ ⊦
hP(h) ⊦ ∃ h0, h1, h2. h0 ⊥ h2 ∧ h0 ⊥ h1 ∧ h1 ⊥ h2 ∧ h = h0 ∪ h1 ∪ h2 ∧ hP(h0 ∪ h2) ∧ h1 ∪ h2 = ∅
| ¬ hP(h), ∃ h0, h1, h2. h0 ⊥ h2 ∧ h0 ⊥ h1 ∧ h1 ⊥ h2 ∧ h = h0 ∪ h1 ∪ h2 ∧ hP(h0 ∪ h2) ∧ h1 ∪ h2 = ∅ ⊦ |
h1 ∪ h2 = ∅, h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0) ⊦
Used simplifier rules: ⊦ h0 ∪ ∅ = h0; (s)
| h1 ∪ h2 = ∅, h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0) ⊦ |
h1 ∪ h2 = ∅, h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0) ⊦ h1 = ∅ ∧ h2 = ∅
Used simplifier rules: ⊦ ∅ ∪ h = h; (s) ⊦ h0 ∪ ∅ = h0; (s) ⊦ ∅ ⊥ h; (s) ⊦ h ⊥ ∅; (s) Used formulas: h1 = ∅ ∧ h2 = ∅
| h1 ∪ h2 = ∅, h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0) ⊦ h1 = ∅ ∧ h2 = ∅ |
⊦ h0 = h1 ↔ (∀ r. (r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r)))
h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. (r ∈ h1 ∪ h2 ↔ r ∈ ∅) ∧ (r ∈ h1 ∪ h2 → (h1 ∪ h2)(r) = ∅(r)) ⊦ h1 = ∅ ∧ h2 = ∅
Used terms: h1 ∪ h2, ∅
| ⊦ h0 = h1 ↔ (∀ r. (r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r))) |
| h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. (r ∈ h1 ∪ h2 ↔ r ∈ ∅) ∧ (r ∈ h1 ∪ h2 → (h1 ∪ h2)(r) = ∅(r)) ⊦ h1 = ∅ ∧ h2 = ∅ |
h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ h1 = ∅ ∧ h2 = ∅
Used simplifier rules: ⊦ h0 ⊥ h1 → (r ∈ h0 ∪ h1 ↔ r ∈ h0 ∨ r ∈ h1); (s) ⊦ ¬ r ∈ ∅; (s)
| h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ h1 = ∅ ∧ h2 = ∅ |
⊦ h0 = h1 ↔ (∀ r. (r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r)))
h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ (∀ r. (r ∈ h1 ↔ r ∈ ∅) ∧ (r ∈ h1 → h1(r) = ∅(r))) ∧ h2 = ∅
Used terms: h1, ∅
| ⊦ h0 = h1 ↔ (∀ r. (r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r))) |
| h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ (∀ r. (r ∈ h1 ↔ r ∈ ∅) ∧ (r ∈ h1 → h1(r) = ∅(r))) ∧ h2 = ∅ |
h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ ¬ r ∈ h1 ∧ h2 = ∅
Used simplifier rules: ⊦ ¬ r ∈ ∅; (s)
| h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ ¬ r ∈ h1 ∧ h2 = ∅ |
⊦ h0 = h1 ↔ (∀ r. (r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r)))
h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ ¬ r ∈ h1 ∧ (∀ r. (r ∈ h2 ↔ r ∈ ∅) ∧ (r ∈ h2 → h2(r) = ∅(r)))
Used terms: h2, ∅
| ⊦ h0 = h1 ↔ (∀ r. (r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h0 → h0(r) = h1(r))) |
| h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ ¬ r ∈ h1 ∧ (∀ r. (r ∈ h2 ↔ r ∈ ∅) ∧ (r ∈ h2 → h2(r) = ∅(r))) |
h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ ¬ r ∈ h1 ∧ ¬ r0 ∈ h2
Used simplifier rules: ⊦ ¬ r ∈ ∅; (s)
| h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ ¬ r ∈ h1 ∧ ¬ r0 ∈ h2 |
h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), r ∈ h1, ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦
h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), r0 ∈ h2, ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦
| h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), r ∈ h1, ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ |
h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), r ∈ h1, ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦
| h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), r ∈ h1, ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ |
Used terms: r
| h0 ⊥ h1, h0 ⊥ h2, h1 ⊥ h2, hP(h0 ∪ h2), r0 ∈ h2, ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ |
h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), r0 ∈ h2, ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦
| h0 ⊥ h2, h0 ⊥ h1, h1 ⊥ h2, hP(h0 ∪ h2), r0 ∈ h2, ¬ hP(h0), ∀ r. ¬ r ∈ h1 ∧ ¬ r ∈ h2 ⊦ |
Used terms: r0
| hP(h) ⊦ ∃ h0, h1, h2. h0 ⊥ h2 ∧ h0 ⊥ h1 ∧ h1 ⊥ h2 ∧ h = h0 ∪ h1 ∪ h2 ∧ hP(h0 ∪ h2) ∧ h1 ∪ h2 = ∅ |
Used simplifier rules: ⊦ h ⊥ ∅; (s) ⊦ ∅ ⊥ h; (s) ⊦ h0 ∪ ∅ = h0; (s) ⊦ ∅ ∪ h = h; (s) Used terms: 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.