| bitsxor(int2bits(i), false ' + true ' + mklist(false, i→n(j))) ≠ [], # int2bits(i) = i→n(j), 2 ^ j * 2 < i, 0 ≤ i, 0 ≤ j ⊦ ¬ ¬ bitsxor(int2bits(i), false ' + true ' + mklist(false, i→n(j))).first ∧ int2bits(bits2int(bitsxor(int2bits(i), false ' + true ' + mklist(false, i→n(j)))))[0, false] = int2bits(i) |
# int2bits(i) = i→n(j), 2 ^ j * 2 < i, 0 ≤ i, 0 ≤ j ⊦ bitsxor(int2bits(i), false ' + true ' + mklist(false, i→n(j))) = [], bitsxor(int2bits(i), false ' + true ' + mklist(false, i→n(j))).first ∧ sgn(bitsxor(int2bits(i), false ' + true ' + mklist(false, i→n(j))))[0, false] = int2bits(i)
Used simplifier rules: bits ≠ [] ⊦ int2bits(bits2int(bits)) = sgn(bits);% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;