| 0 ≤ 1, i2b(bits2int(sublist(0, n, int2bits(128)))) = i2b(bits2int(sublist(0, n0, int2bits(~128)))), # int2bits(128) = n + i→n(bits2int(bitsand(uint2bits(1), int2bits(31)))), # int2bits(~128) = n0 + i→n(bits2int(bitsand(uint2bits(1), int2bits(31)))), i→n(bits2int(bitsand(uint2bits(1), int2bits(31)))) < # int2bits(128), i→n(bits2int(bitsand(uint2bits(1), int2bits(31)))) < # int2bits(~128) ⊦ n = 0, n0 = 0 |
# int2bits(~128) = i→n(bits2int(bitsand(false ' + true ', int2bits(31)))) + n0, # int2bits(128) = i→n(bits2int(bitsand(false ' + true ', int2bits(31)))) + n, i2b(bits2int(sublist(0, n, int2bits(128)))) = i2b(bits2int(sublist(0, n0, int2bits(~128)))), i→n(bits2int(bitsand(false ' + true ', int2bits(31)))) < # int2bits(~128), i→n(bits2int(bitsand(false ' + true ', int2bits(31)))) < # int2bits(128) ⊦ n0 = 0, n = 0
Used simplifier rules: ⊦ m + n = n + m;% ⊦ (m + n0) + n1 = m + n0 + n1;% ⊦ m < m + n ↔ n ≠ 0;% ⊦ m < n ∧ n = n0 → m < n0; (forward)% ⊦ boolvar + boolvar0 = boolvar ' + boolvar0 ';% ⊦ uint2bits(1) = false + true;