| ⊦ a ≠ a0 ∧ a1 ≠ a0 ∧ a ≠ a1 ∧ ¬ a ∈ y1 ∧ ¬ a1 ∈ y0 → y1 + a0 ' + y0 + a ' ≠ y2 + a ' + a1 ' + z0 |
y1 + a0 ' + y0 + a ' = y2 + a ' + a1 ' + z0, a ≠ a1, a ≠ a0, a1 ≠ a0, ¬ a1 ∈ y0, ¬ a ∈ y1 ⊦
| y1 + a0 ' + y0 + a ' = y2 + a ' + a1 ' + z0, a ≠ a1, a ≠ a0, a1 ≠ a0, ¬ a1 ∈ y0, ¬ a ∈ y1 ⊦ |
y1 + a0 ' + y0 + a ' = y2 + a ' + a1 ' + z0, a ≠ a1, a ≠ a0, a1 ≠ a0, ¬ a1 ∈ y0, ¬ a ∈ y1 ⊦
| y1 + a0 ' + y0 + a ' = y2 + a ' + a1 ' + z0, a ≠ a1, a ≠ a0, a1 ≠ a0, ¬ a1 ∈ y0, ¬ a ∈ y1 ⊦ |
⊦ x ≠ [] → (∃ y, a. x = y + a ')
y1 + a0 ' + y0 + a ' = y2 + a ' + a1 ' + z0, a ≠ a1, a ≠ a0, a1 ≠ a0, ¬ a1 ∈ y0, ¬ a ∈ y1, z0 ≠ [] → (∃ y, a. z0 = y + a ') ⊦
Used terms: z0
| ⊦ x ≠ [] → (∃ y, a. x = y + a ') |
| y1 + a0 ' + y0 + a ' = y2 + a ' + a1 ' + z0, a ≠ a1, a ≠ a0, a1 ≠ a0, ¬ a1 ∈ y0, ¬ a ∈ y1, z0 ≠ [] → (∃ y, a. z0 = y + a ') ⊦ |
y1 + a0 ' + y0 = y2 + a2 ' + a1 ' + y, a1 ≠ a0, a2 ≠ a0, a2 ≠ a1, ¬ a2 ∈ y1, ¬ a1 ∈ y0 ⊦
Used simplifier rules: app: ⊦ x + [] = x; app-06: ⊦ x + a ' = y + a0 ' ↔ x = y ∧ a = a0; e-02: ⊦ x + a ' ≠ []; a: ⊦ (x + y) + z = x + y + z;
| y1 + a0 ' + y0 = y2 + a2 ' + a1 ' + y, a1 ≠ a0, a2 ≠ a0, a2 ≠ a1, ¬ a2 ∈ y1, ¬ a1 ∈ y0 ⊦ |
(a + y3) + a0 ' + y0 = y2 + a2 ' + a1 ' + y, a1 ≠ a0, a2 ≠ a0, a2 ≠ a1, ¬ a2 ∈ a + y3, ¬ a1 ∈ y0, ∀ a0, y0, y2, a2, a1, y. ¬(y3 + a0 ' + y0 = y2 + a2 ' + a1 ' + y ∧ a1 ≠ a0 ∧ a2 ≠ a0 ∧ a2 ≠ a1 ∧ ¬ a2 ∈ y3 ∧ ¬ a1 ∈ y0) ⊦
Used simplifier rules: Nil: ⊦ [] + x = x; neq-02: ⊦ ¬ a ∈ z ∧ a ≠ a0 → a0 ' + z ≠ y1 + a ' + x; a: ⊦ (x + y) + z = x + y + z; list('a) freely generated by [], +;;
| (a + y3) + a0 ' + y0 = y2 + a2 ' + a1 ' + y, a1 ≠ a0, a2 ≠ a0, a2 ≠ a1, ¬ a2 ∈ a + y3, ¬ a1 ∈ y0, ∀ a0, y0, y2, a2, a1, y. ¬(y3 + a0 ' + y0 = y2 + a2 ' + a1 ' + y ∧ a1 ≠ a0 ∧ a2 ≠ a0 ∧ a2 ≠ a1 ∧ ¬ a2 ∈ y3 ∧ ¬ a1 ∈ y0) ⊦ |
(a ' + y3) + a0 ' + y0 = y2 + a2 ' + a1 ' + y, a1 ≠ a0, a2 ≠ a0, a2 ≠ a1, a2 ≠ a, ¬ a1 ∈ y0, ¬ a2 ∈ y3, ∀ a3, y1, y4, a4, a5, y5. y3 + a3 ' + y1 ≠ y4 + a4 ' + a5 ' + y5 ∨ a5 = a3 ∨ a4 = a3 ∨ a4 = a5 ∨ a4 ∈ y3 ∨ a5 ∈ y1 ⊦
Used simplifier rules: c: ⊦ a + x = a ' + x; in-06: ⊦ a ∈ a0 ' + x ↔ ¬(a ≠ a0 ∧ ¬ a ∈ x); a: ⊦ (x + y) + z = x + y + z;
| (a ' + y3) + a0 ' + y0 = y2 + a2 ' + a1 ' + y, a1 ≠ a0, a2 ≠ a0, a2 ≠ a1, a2 ≠ a, ¬ a1 ∈ y0, ¬ a2 ∈ y3, ∀ a3, y1, y4, a4, a5, y5. y3 + a3 ' + y1 ≠ y4 + a4 ' + a5 ' + y5 ∨ a5 = a3 ∨ a4 = a3 ∨ a4 = a5 ∨ a4 ∈ y3 ∨ a5 ∈ y1 ⊦ |
(a ' + y3) + a0 ' + y0 = y2 + a2 ' + a1 ' + y, y2 = a6 + y6, a1 ≠ a0, a2 ≠ a0, a2 ≠ a1, a2 ≠ a, ¬ a1 ∈ y0, ¬ a2 ∈ y3, ∀ a3, y1, y4, a4, a5, y5. y3 + a3 ' + y1 ≠ y4 + a4 ' + a5 ' + y5 ∨ a5 = a3 ∨ a4 = a3 ∨ a4 = a5 ∨ a4 ∈ y3 ∨ a5 ∈ y1 ⊦
Used simplifier rules: Nil: ⊦ [] + x = x; c-06: ⊦ a ' + x = a0 ' + y ↔ a = a0 ∧ x = y; a: ⊦ (x + y) + z = x + y + z; list('a) freely generated by [], +;;
| (a ' + y3) + a0 ' + y0 = y2 + a2 ' + a1 ' + y, y2 = a6 + y6, a1 ≠ a0, a2 ≠ a0, a2 ≠ a1, a2 ≠ a, ¬ a1 ∈ y0, ¬ a2 ∈ y3, ∀ a3, y1, y4, a4, a5, y5. y3 + a3 ' + y1 ≠ y4 + a4 ' + a5 ' + y5 ∨ a5 = a3 ∨ a4 = a3 ∨ a4 = a5 ∨ a4 ∈ y3 ∨ a5 ∈ y1 ⊦ |
y3 + a0 ' + y0 = y6 + a2 ' + a1 ' + y, a1 ≠ a0, a2 ≠ a, a2 ≠ a1, a2 ≠ a0, ¬ a2 ∈ y3, ¬ a1 ∈ y0, ∀ a3, y1, y4, a4, a5, y5. y3 + a3 ' + y1 ≠ y4 + a4 ' + a5 ' + y5 ∨ a5 = a3 ∨ a4 = a3 ∨ a4 = a5 ∨ a4 ∈ y3 ∨ a5 ∈ y1 ⊦
Used simplifier rules: c: ⊦ a + x = a ' + x; c-06: ⊦ a ' + x = a0 ' + y ↔ a = a0 ∧ x = y; a: ⊦ (x + y) + z = x + y + z;
| y3 + a0 ' + y0 = y6 + a2 ' + a1 ' + y, a1 ≠ a0, a2 ≠ a, a2 ≠ a1, a2 ≠ a0, ¬ a2 ∈ y3, ¬ a1 ∈ y0, ∀ a3, y1, y4, a4, a5, y5. y3 + a3 ' + y1 ≠ y4 + a4 ' + a5 ' + y5 ∨ a5 = a3 ∨ a4 = a3 ∨ a4 = a5 ∨ a4 ∈ y3 ∨ a5 ∈ y1 ⊦ |
Used terms: a0, y0, y6, a2, a1, y
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.