| ~32768 < j, # int2bits(j) ≤ 16, ~32768 ≤ j, 65536 * i0 + j < ~32768, 65536 * i0 + j < 0, i0 < 0, j < 0 ⊦ s2i(i2s(bits2int(lastn(16, int2bits(i0 - 1) + fillsgn(16, int2bits(j)))))) = j |
⊦ n = # bits → lastn(n, bits0 + bits) = bits
16 = # fillsgn(16, int2bits(j)), ~32768 < j, # int2bits(j) ≤ 16, ~32768 ≤ j, 65536 * i0 + j < ~32768, 65536 * i0 + j < 0, i0 < 0, j < 0 ⊦ s2i(i2s(bits2int(fillsgn(16, int2bits(j))))) = j
Used simplifier rules: ⊦ # bits ≤ n → # fillsgn(n, bits) = n; Used terms: fillsgn(16, int2bits(j)), int2bits(i0 - 1), 16