| i→n(i) < # uint2bits(j), i→n(i) + 1 < # uint2bits(j), 2 ^ i ≤ j, 0 ≤ i, 2 ^ i < j ⊦ uint2bits(j) = butlastn(i→n(i), uint2bits(j)) + fillsgn(i→n(i) + 1, sgn(false ' + lastn(i→n(i), uint2bits(j)))).rest |
⊦ # bits ≤ n → fillsgn(n, sgn(bits)) = fillsgn(n, bits)
¬ #(false ' + lastn(i→n(i), uint2bits(j))) ≤ i→n(i) + 1, i→n(i) < # uint2bits(j), i→n(i) + 1 < # uint2bits(j), 2 ^ i ≤ j, 0 ≤ i, 2 ^ i < j ⊦ uint2bits(j) = butlastn(i→n(i), uint2bits(j)) + fillsgn(i→n(i) + 1, sgn(false ' + lastn(i→n(i), uint2bits(j)))).rest
#(false ' + lastn(i→n(i), uint2bits(j))) ≤ i→n(i) + 1, i→n(i) < # uint2bits(j), i→n(i) + 1 < # uint2bits(j), 2 ^ i ≤ j, 0 ≤ i, 2 ^ i < j ⊦ uint2bits(j) = butlastn(i→n(i), uint2bits(j)) + fillsgn(i→n(i) + 1, false ' + lastn(i→n(i), uint2bits(j))).rest
Used terms: false ' + lastn(i→n(i), uint2bits(j)), i→n(i) + 1