| ∃ n. boolvar ' + bits = mklist(boolvar, n) + sgn(boolvar ' + bits) ⊦ ∃ n. boolvar ' + boolvar ' + bits = mklist(boolvar, n) + sgn(boolvar ' + bits) |
boolvar ' + bits = mklist(boolvar, n) + sgn(boolvar ' + bits) ⊦ ∃ n. boolvar ' + boolvar ' + bits = mklist(boolvar, n) + sgn(boolvar ' + bits), ¬ boolvar ∈ sgn(boolvar ' + bits) ∧ n = 0
Used simplifier rules: ⊦ boolvar ∈ mklist(boolvar, m) ↔ m ≠ 0;% ⊦ boolvar ∈ bits + bits0 ↔ ¬ ¬(boolvar ∈ bits ∨ boolvar ∈ bits0);% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ boolvar ' + bits = bits0 → boolvar ∈ bits0; (forward)