| dups(a ' + butlastn(n, x0)), n ≤ 1 + # x0, n ≤ # x0, ∀ n0. ¬ dups(butlastn(n0, x0)) ∨ ¬ n0 ≤ # x0 ⊦ dups(x0), a ∈ x0 |
n ≤ # x0, n ≤ 1 + # x0, ∀ n0. ¬ dups(butlastn(n0, x0)) ∨ ¬ n0 ≤ # x0, a ∈ butlastn(n, x0) ∨ dups(butlastn(n, x0)) ⊦ dups(x0), a ∈ x0
Used simplifier rules: a: ⊦ (x + y) + z = x + y + z; from specification list% ⊦ dups(a ' + x) ↔ a ∈ x ∨ dups(x); (s)