| ⊦ h0 ⊆ h1 ↔ (∃ h. h0 ∪ h = h1 ∧ h ⊥ h0) |
h0 ⊆ h1 ⊦ ∃ h. h0 ∪ h = h1 ∧ h ⊥ h0
Used simplifier rules: subset-union2: ⊦ h1 ⊥ h0 → h0 ⊆ h0 ∪ h1;
| h0 ⊆ h1 ⊦ ∃ h. h0 ∪ h = h1 ∧ h ⊥ h0 |
h0 ⊆ h1 ⊦ h0 ∪ (h1 \ h0) = h1 ∧ h1 \ h0 ⊥ h0
Used terms: h1 \ h0
| h0 ⊆ h1 ⊦ h0 ∪ (h1 \ h0) = h1 ∧ h1 \ h0 ⊥ h0 |
h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦ h0 ∪ (h1 \ h0) = h1 ∧ h1 \ h0 ⊥ h0
h0 ⊆ h1, ¬ h1 \ h0 ⊥ h0 ⊦ h0 ∪ (h1 \ h0) = h1 ∧ h1 \ h0 ⊥ h0
Used formulas: h1 \ h0 ⊥ h0
| h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦ h0 ∪ (h1 \ h0) = h1 ∧ h1 \ h0 ⊥ h0 |
h0 ∪ (h1 \ h0) ≠ h1, h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦
| h0 ∪ (h1 \ h0) ≠ h1, h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦ |
⊦ h0 ⊥ h1 → h1 ∪ h0 = h0 ∪ h1
(h1 \ h0) ∪ h0 ≠ h1, h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦
Used terms: h1 \ h0, h0
| ⊦ h0 ⊥ h1 → h1 ∪ h0 = h0 ∪ h1 |
| (h1 \ h0) ∪ h0 ≠ h1, h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦ |
⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ (a ∈ st1 → st1(a) = st2(a)))
h0 ⊆ h1, h1 \ h0 ⊥ h0, ∃ a. ¬((a ∈ (h1 \ h0) ∪ h0 ↔ a ∈ h1) ∧ (a ∈ (h1 \ h0) ∪ h0 → ((h1 \ h0) ∪ h0)(a) = h1(a))) ⊦
Used terms: (h1 \ h0) ∪ h0, h1, h1, (h1 \ h0) ∪ h0
| ⊦ st1 = st2 ↔ (∀ a. (a ∈ st1 ↔ a ∈ st2) ∧ (a ∈ st1 → st1(a) = st2(a))) |
| h0 ⊆ h1, h1 \ h0 ⊥ h0, ∃ a. ¬((a ∈ (h1 \ h0) ∪ h0 ↔ a ∈ h1) ∧ (a ∈ (h1 \ h0) ∪ h0 → ((h1 \ h0) ∪ h0)(a) = h1(a))) ⊦ |
h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦ (r ∈ h1 \ h0 ∨ r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h1 \ h0 ∨ r ∈ h0 → (r ∈ h1 \ h0 ⊃ h1(r);h0(r)) = h1(r))
Used simplifier rules: in-uni: ⊦ h0 ⊥ h1 → (r ∈ h0 ∪ h1 ↔ r ∈ h0 ∨ r ∈ h1); at-uni: r ∈ h0 ∪ h1 ⊦ h0 ⊥ h1 → (h0 ∪ h1)(r) = (r ∈ h0 ⊃ h0(r);h1(r)); disj-l: ⊦ r ∈ h0 ∧ h0 ⊥ h1 → (r ∈ h1 ↔ false); diff-at: r ∈ h0, ¬ r ∈ h1 ⊦ (h0 \ h1)(r) = h0(r);
| h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦ (r ∈ h1 \ h0 ∨ r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h1 \ h0 ∨ r ∈ h0 → (r ∈ h1 \ h0 ⊃ h1(r);h0(r)) = h1(r)) |
⊦ r ∈ h0 \ h1 ↔ r ∈ h0 ∧ ¬ r ∈ h1
h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦ (r ∈ h1 ∧ ¬ r ∈ h0 ∨ r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h1 ∧ ¬ r ∈ h0 ∨ r ∈ h0 → (r ∈ h1 ∧ ¬ r ∈ h0 ⊃ h1(r);h0(r)) = h1(r))
Used terms: r, h1, h0
| ⊦ r ∈ h0 \ h1 ↔ r ∈ h0 ∧ ¬ r ∈ h1 |
| h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦ (r ∈ h1 ∧ ¬ r ∈ h0 ∨ r ∈ h0 ↔ r ∈ h1) ∧ (r ∈ h1 ∧ ¬ r ∈ h0 ∨ r ∈ h0 → (r ∈ h1 ∧ ¬ r ∈ h0 ⊃ h1(r);h0(r)) = h1(r)) |
h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦ (r ∈ h0 → r ∈ h1) ∧ (r ∈ h1 ∨ r ∈ h0 → (r ∈ h1 ∧ ¬ r ∈ h0 ⊃ h1(r);h0(r)) = h1(r))
| h0 ⊆ h1, h1 \ h0 ⊥ h0 ⊦ (r ∈ h0 → r ∈ h1) ∧ (r ∈ h1 ∨ r ∈ h0 → (r ∈ h1 ∧ ¬ r ∈ h0 ⊃ h1(r);h0(r)) = h1(r)) |
⊦ st1 ⊆ st2 ↔ (∀ a. a ∈ st1 → a ∈ st2 ∧ st1(a) = st2(a))
h1 \ h0 ⊥ h0, ∀ a. a ∈ h0 → a ∈ h1 ∧ h0(a) = h1(a) ⊦ (r ∈ h0 → r ∈ h1) ∧ (r ∈ h1 ∨ r ∈ h0 → (r ∈ h1 ∧ ¬ r ∈ h0 ⊃ h1(r);h0(r)) = h1(r))
Used terms: h0, h1
| ⊦ st1 ⊆ st2 ↔ (∀ a. a ∈ st1 → a ∈ st2 ∧ st1(a) = st2(a)) |
| h1 \ h0 ⊥ h0, ∀ a. a ∈ h0 → a ∈ h1 ∧ h0(a) = h1(a) ⊦ (r ∈ h0 → r ∈ h1) ∧ (r ∈ h1 ∨ r ∈ h0 → (r ∈ h1 ∧ ¬ r ∈ h0 ⊃ h1(r);h0(r)) = h1(r)) |
h1 \ h0 ⊥ h0, ∀ a. a ∈ h0 → a ∈ h1 ∧ h0(a) = h1(a), r ∈ h0 → r ∈ h1 ∧ h0(r) = h1(r) ⊦ (r ∈ h0 → r ∈ h1) ∧ (r ∈ h1 ∨ r ∈ h0 → (r ∈ h1 ∧ ¬ r ∈ h0 ⊃ h1(r);h0(r)) = h1(r))
Used terms: r
| h1 \ h0 ⊥ h0, ∀ a. a ∈ h0 → a ∈ h1 ∧ h0(a) = h1(a), r ∈ h0 → r ∈ h1 ∧ h0(r) = h1(r) ⊦ (r ∈ h0 → r ∈ h1) ∧ (r ∈ h1 ∨ r ∈ h0 → (r ∈ h1 ∧ ¬ r ∈ h0 ⊃ h1(r);h0(r)) = h1(r)) |
(r ∈ h1 ∧ ¬ r ∈ h0 ⊃ h1(r);h0(r)) ≠ h1(r), h1 \ h0 ⊥ h0, ∀ a. a ∈ h0 → a ∈ h1 ∧ h0(a) = h1(a), r ∈ h1 ∨ r ∈ h0, r ∈ h0 → r ∈ h1 ∧ h0(r) = h1(r) ⊦
| (r ∈ h1 ∧ ¬ r ∈ h0 ⊃ h1(r);h0(r)) ≠ h1(r), h1 \ h0 ⊥ h0, ∀ a. a ∈ h0 → a ∈ h1 ∧ h0(a) = h1(a), r ∈ h1 ∨ r ∈ h0, r ∈ h0 → r ∈ h1 ∧ h0(r) = h1(r) ⊦ |
| h0 ⊆ h1, ¬ h1 \ h0 ⊥ h0 ⊦ h0 ∪ (h1 \ h0) = h1 ∧ h1 \ h0 ⊥ h0 |
h0 ⊆ h1, ¬ h1 \ h0 ⊥ h0 ⊦
| h0 ⊆ h1, ¬ h1 \ h0 ⊥ h0 ⊦ |
⊦ h0 ⊥ h1 ↔ (∀ r. ¬ r ∈ h0 ∨ ¬ r ∈ h1)
Used simplifier rules: diff-in: ⊦ r ∈ h0 \ h1 ↔ r ∈ h0 ∧ ¬ r ∈ h1; Used terms: h0, h1 \ h0
| ⊦ h0 ⊥ h1 ↔ (∀ r. ¬ r ∈ h0 ∨ ¬ r ∈ 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.