| i2b(bits2uint(firstn(31, fillsgn(32, int2bits(128))))) = i2b(bits2uint(firstn(31, fillsgn(32, int2bits(~128))))), # int2bits(128) ≤ 32, # int2bits(~128) ≤ 32 ⊦ |
⊦ # bits ≤ n ∧ bits ≠ [] → fillsgn(n, bits) = mklist(bits.first, n - # bits) + bits
# int2bits(128) ≤ 32 ∧ int2bits(128) ≠ [], i2b(bits2uint(firstn(31, mklist(int2bits(128).first, 32 - # int2bits(128)) + int2bits(128)))) = i2b(bits2uint(firstn(31, fillsgn(32, int2bits(~128))))), # int2bits(128) ≤ 32, # int2bits(~128) ≤ 32 ⊦
Used simplifier rules: ⊦ ¬ m ≤ n ↔ n < m;% ⊦ m ≤ n → (n < m ↔ false);% ⊦ int2bits(j) ≠ []; Used terms: int2bits(128), 32