| ∀ x. disj(rev(x), y0) ↔ disj(x, y0) ⊦ disj(rev(x), a ' + y0) ↔ disj(x, a ' + y0), disj(x, a ' + y0) |
disj(rev(x), y0), ∀ x. disj(rev(x), y0) ↔ disj(x, y0) ⊦ disj(x, y0), a ∈ x
Used simplifier rules: rev-in: ⊦ a ∈ rev(x) ↔ a ∈ x;% ⊦ disj(x, y) → disj(y, x); (s)%sym: ⊦ disj(x, y) → disj(y, x); (forward) from specification list-dup% ⊦ ¬ a ∈ x → (disj(x, a ' + y) ↔ disj(x, y)); (s)%a: ⊦ (x + y) + z = x + y + z; from specification list% ⊦ disj(x, a ') ↔ ¬ a ∈ x; (s)% ⊦ disj(x, y + z) ↔ disj(x, y) ∧ disj(x, z); (ws)