| uint2bits(i) = uint2bits(i / 256) + fillsgn(9, uint2bits(i % 256)).rest, i % 256 < i, 0 < i % 256, 0 ≤ i, 255 < i, # uint2bits(i % 256) ≤ 9, i % 256 ≤ 255, 127 < i % 256, 0 < i, 1 < i, 127 < i, 128 < i ⊦ i2b(bits2int(fillsgn(9, uint2bits(i % 256)).rest)) = i2b(i % 256 - 256), fillsgn(9, uint2bits(i % 256)) = [], i % 256 = bits2int(fillsgn(9, uint2bits(i % 256)).rest) + 256 |
⊦ n ≤ # bits → fillsgn(n, bits) = bits
¬ 9 ≤ # uint2bits(i % 256), uint2bits(i) = uint2bits(i / 256) + fillsgn(9, uint2bits(i % 256)).rest, i % 256 < i, 0 < i % 256, 0 ≤ i, 255 < i, # uint2bits(i % 256) ≤ 9, i % 256 ≤ 255, 127 < i % 256, 0 < i, 1 < i, 127 < i, 128 < i ⊦ i2b(bits2int(fillsgn(9, uint2bits(i % 256)).rest)) = i2b(i % 256 - 256), fillsgn(9, uint2bits(i % 256)) = [], i % 256 = bits2int(fillsgn(9, uint2bits(i % 256)).rest) + 256
9 ≤ # uint2bits(i % 256), uint2bits(i) = uint2bits(i / 256) + uint2bits(i % 256).rest, i % 256 < i, 0 < i % 256, 0 ≤ i, 255 < i, # uint2bits(i % 256) ≤ 9, i % 256 ≤ 255, 127 < i % 256, 0 < i, 1 < i, 127 < i, 128 < i ⊦ i2b(bits2int(uint2bits(i % 256).rest)) = i2b(i % 256 - 256), uint2bits(i % 256) = [], i % 256 = bits2int(uint2bits(i % 256).rest) + 256
Used terms: uint2bits(i % 256), 9