| ∀ y. dups(x0 + y) ↔ dups(x0) ∨ dups(y) ∨ filter(x0, y) ≠ [] ⊦ a ∈ y, a ∈ y ∨ dups(x0 + y) ↔ dups(x0) ∨ dups(y) ∨ filter(a ' + x0, y) ≠ [], a ∈ x0 |
∀ y. dups(x0 + y) ↔ dups(x0) ∨ dups(y) ∨ filter(x0, y) ≠ [] ⊦ dups(x0 + y) ↔ dups(x0) ∨ dups(y) ∨ filter(x0, y) ≠ [], a ∈ y, a ∈ x0
Used simplifier rules: filt-n: ⊦ ¬ a ∈ y → filter(a ' + x, y) = filter(x, y);%a: ⊦ (x + y) + z = x + y + z; from specification list