| a ' + b ' + y + c ' + z = x0 + a ' + c ' + z0 ⊦ a = c, a = b, b = c, dups(z), c ∈ z, a ∈ z, a ∈ y |
y ≠ [] ⊦ a ' + x = y + z ↔ a = y.head ∧ x = y.tail + z
b ' + y + c ' + z = x0.tail + a ' + c ' + z0, a = x0.head ⊦ a = b, a = c, b = c, x0 = [], dups(z), a ∈ y, a ∈ z, c ∈ z
Used simplifier rules: ⊦ [] + x = x; (s)%a: ⊦ (x + y) + z = x + y + z; from specification list% ⊦ a ' + x = b ' + y ↔ a = b ∧ x = y; (ws) Used terms: a ' + c ' + z0, x0, b ' + y + c ' + z, a