| ⊦ bits0 = [], bits2int((boolvar0 ' + bits1) + boolvar ') = bits2int(bits0 + boolvar ') ↔ bits2int(boolvar0 ' + bits1) = bits2int(bits0), boolvar ∧ ¬ boolvar0, boolvar0 ∧ boolvar |
⊦ ¬ bits.first ∧ bits ≠ [] → bits2int(bits) = bits2uint(bits.rest)
¬(¬ (boolvar0 ' + bits1).first ∧ boolvar0 ' + bits1 ≠ []) ⊦ bits0 = [], bits2int((boolvar0 ' + bits1) + boolvar ') = bits2int(bits0 + boolvar ') ↔ bits2int(boolvar0 ' + bits1) = bits2int(bits0), boolvar ∧ ¬ boolvar0, boolvar0 ∧ boolvar
¬ (boolvar0 ' + bits1).first ∧ boolvar0 ' + bits1 ≠ [] ⊦ bits0 = [], bits2int((boolvar0 ' + bits1) + boolvar ') = bits2int(bits0 + boolvar ') ↔ bits2uint((boolvar0 ' + bits1).rest) = bits2int(bits0), boolvar ∧ ¬ boolvar0, boolvar0 ∧ boolvar
Used terms: boolvar0 ' + bits1