| ⊦ bits = [], bits0 = [], bits2int(bits + boolvar ') = bits2int(bits0 + boolvar ') ↔ bits2int(bits) = bits2int(bits0) |
⊦ boolvar ∧ ¬ bits.first ∧ bits ≠ [] → bits2int(bits + boolvar ') = bits2int(bits) * 2 + 1
¬(boolvar ∧ ¬ bits.first ∧ bits ≠ []) ⊦ bits = [], bits0 = [], bits2int(bits + boolvar ') = bits2int(bits0 + boolvar ') ↔ bits2int(bits) = bits2int(bits0)
boolvar ∧ ¬ bits.first ∧ bits ≠ [] ⊦ bits = [], bits0 = [], bits2int(bits) * 2 + 1 = bits2int(bits0 + boolvar ') ↔ bits2int(bits) = bits2int(bits0)
Used terms: boolvar, bits