| j < 2 ^ i, j0 < 2 ^ i, 0 ≤ i, 0 ≤ j0, 0 < 2 ^ i, j < i, j < j0, j + 1 < 2 ^ i, j < 0 ⊦ bits2int(bitsinvert(bitsand(bitsinvert(sgn(bitsinvert(uint2bits(~(j * 2 ^ i))) +1)), bitsinvert(int2bits(j0))))) = j * 2 ^ i + j0 |
0 ≤ i, j < 0 ⊦ uint2bits(~(j * 2 ^ i)) = uint2bits(~ j) + mklist(false, i→n(i))
0 ≤ i ∧ j < 0, j < 2 ^ i, j0 < 2 ^ i, 0 ≤ i, 0 ≤ j0, 0 < 2 ^ i, j < i, j < j0, j + 1 < 2 ^ i, j < 0 ⊦ bits2int(bitsinvert(bitsand(bitsinvert(sgn(bitsinvert(uint2bits(~ j) + mklist(false, i→n(i))) +1)), bitsinvert(int2bits(j0))))) = j * 2 ^ i + j0
Used simplifier rules: ⊦ ¬ i ≤ j ↔ j < i;% ⊦ i ≤ j → (¬ ¬ j < i ↔ false);% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ i < j → (¬ ¬ j ≤ i ↔ false); Used terms: i, j