| j < 0, 0 < i, j + 2 ^ i ≤ 0, j + 2 ^ i < i ⊦ j % 2 ^ i = 0, sgn(bitsinvert(uint2bits(abs(j))) +1) = int2bits(j / 2 ^ i - 1) + fillsgn(i→n(i) + 1, int2bits(j % 2 ^ i)).rest |
0 < i, j + 2 ^ i ≤ 0, j + 2 ^ i < i, j < 0 ⊦ j % 2 ^ i = 0, sgn(bitsinvert(uint2bits(~ j)) +1) = int2bits(j / 2 ^ i - 1) + fillsgn(i→n(i) + 1, int2bits(j % 2 ^ i)).rest
Used simplifier rules: ⊦ j < i ∧ i ≤ 0 → j < 0; (forward)% ⊦ i < 0 → abs(i) = ~ i;