| a ∈ x, ∀ a, x. a ∈ x ∧ a ∈ x1 → (∃ b, y, y0. b ∈ x ∧ x1 = y + b ' + y0 ∧ disj(x, y)), a = a0 ∨ a ∈ x1 ⊦ a0 ∈ x ∧ a0 ' + x1 = [] + a0 ' + x1 ∧ disj(x, []), ∃ b, y, y0. b ∈ x ∧ a0 ' + x1 = y + b ' + y0 ∧ disj(x, y) |
a ∈ x, a ∈ x1, ∀ a, x. a ∈ x ∧ a ∈ x1 → (∃ b, y, y0. b ∈ x ∧ x1 = y + b ' + y0 ∧ disj(x, y)) ⊦ a0 ∈ x, ∃ b, y, y0. b ∈ x ∧ a0 ' + x1 = y + b ' + y0 ∧ disj(x, y)
Used simplifier rules: e: ⊦ disj(x, []);%app-08: ⊦ a ' + x = a ' + y ↔ x = y; from specification list%a: ⊦ (x + y) + z = x + y + z; from specification list%Nil: ⊦ [] + x = x; from specification list