| # bits = i→n(j), int2bits(i) = bits0 + bits, bitsxor(bits0 + bits, (false ' + true ') + mklist(false, i→n(j))) = bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j))), 0 ≤ j, 0 ≤ i, 2 ^ j * 2 < i ⊦ bits = [], bits0 = [], (int2bits(bits2int(bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j)))))[# bits0 - 1] ↔ ¬ bits0.last) ∧ int2bits(bits2int(bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j)))))[# bits0 - 1, bits0.last] = bits0 + bits |
bits ≠ [] ⊦ int2bits(bits2int(bits)) = sgn(bits)
¬ bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j))) ≠ [], # bits = i→n(j), int2bits(i) = bits0 + bits, bitsxor(bits0 + bits, (false ' + true ') + mklist(false, i→n(j))) = bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j))), 0 ≤ j, 0 ≤ i, 2 ^ j * 2 < i ⊦ bits = [], bits0 = [], (int2bits(bits2int(bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j)))))[# bits0 - 1] ↔ ¬ bits0.last) ∧ int2bits(bits2int(bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j)))))[# bits0 - 1, bits0.last] = bits0 + bits
bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j))) ≠ [], # bits = i→n(j), int2bits(i) = bits0 + bits, bitsxor(bits0 + bits, (false ' + true ') + mklist(false, i→n(j))) = bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j))), 0 ≤ j, 0 ≤ i, 2 ^ j * 2 < i ⊦ bits = [], bits0 = [], (sgn(bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j))))[# bits0 - 1] ↔ ¬ bits0.last) ∧ sgn(bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j))))[# bits0 - 1, bits0.last] = bits0 + bits
Used terms: bitsxor(bits0, false ' + true ') + bitsxor(bits, mklist(false, i→n(j)))