| (¬ true) ∈ bitsinvert(uint2bits(~ i0)), i0 < 0 ⊦ b2i(i2b(bits2int((sgn(bitsinvert(uint2bits(~ i0))) + true ').last ' + false ' + false ' + false ' + false ' + false ' + false ' + false '))) = ~128, i0 = 0, i0 * 256 ≠ ~128 ∧ (sgn(bitsinvert(uint2bits(~ i0))) + true ').last |
i0 * 256 = ~128, i0 < 0 ⊦ i0 = 0, b2i(i2b(bits2int(true ' + false ' + false ' + false ' + false ' + false ' + false ' + false '))) = ~128
Used simplifier rules: uint2bits-onein-01: ⊦ j < 0 → true ∈ uint2bits(~ j); from specification int2bits%inv-in-01: ⊦ false ∈ bitsinvert(bits) ↔ true ∈ bits; from specification bitopsaux%a: ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1; from specification list[bitlista]%last-def: ⊦ (bits + boolvar ').last ↔ boolvar; from specification list-last[bitlista]