| bitsinvert(uint2bits(i)) ≠ [], 0 < i ⊦ 2 ^ n→i(# uint2bits(i)) = (bits2uint(bitsinvert(uint2bits(i))) + 1) + i |
0 < i ⊦ 2 ^ n→i(# uint2bits(i)) = (bits2uint(bitsinvert(uint2bits(i))) + 1) + i
Used simplifier rules: uint2bits-empty: 0 ≤ i ⊦ uint2bits(i) ≠ [];% ⊦ ¬ i ≤ j ↔ j < i;% ⊦ i < j → ¬ j < i;% ⊦ bitsinvert(bits) = [] ↔ bits = [];