| 0 < j, 8 = # int2bits(j).rest, 9 ≤ # int2bits(j), 0 ≤ i0, 127 < j, 127 < i0 * 256 + j, 64 ≤ i0 * 256 + j, j < 256, 0 < j, 0 ≤ j, 0 < i0 * 256 + j, 0 < i0 ⊦ j = b2i(i2b(j - 2 ^ (n→i(# uint2bits(j)) - 1))) + 256, 0 = i0 * 256 + j, int2bits(j).rest.first |
⊦ bits ≠ [] → # bits.rest = (# bits)-1
int2bits(j) ≠ [], 0 < j, 8 = (# int2bits(j))-1, 9 ≤ # int2bits(j), 0 ≤ i0, 127 < j, 127 < i0 * 256 + j, 64 ≤ i0 * 256 + j, j < 256, 0 < j, 0 ≤ j, 0 < i0 * 256 + j, 0 < i0 ⊦ j = b2i(i2b(j - 2 ^ (n→i(# uint2bits(j)) - 1))) + 256, 0 = i0 * 256 + j, int2bits(j).rest.first
Used simplifier rules: ⊦ int2bits(j) ≠ []; Used terms: int2bits(j)