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