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