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