| 8 ≠ 0, ∃ n0. # int2bits(j % 2 ^ (i * 8)) = n0 * 8, i→n(i * 8) % 8 = 0, # int2bits(j % 2 ^ (i * 8)) < i→n(i * 8), 0 < i, 2 ^ (i * 8) ≤ j, 0 ≤ j % 2 ^ (i * 8) ⊦ bits2bytes(mklist(false, i→n(i * 8) - # int2bits(j % 2 ^ (i * 8))) + int2bits(j % 2 ^ (i * 8))) = fix(i→n(i) + 1, bits2bytes(int2bits(j % 2 ^ (i * 8)))).rest, mklist(false, i→n(i * 8) - # int2bits(j % 2 ^ (i * 8))) + int2bits(j % 2 ^ (i * 8)) = [], i→n(i * 8) + 1 = # int2bits(j % 2 ^ (i * 8)), # int2bits(j % 2 ^ (i * 8)) = i→n(i * 8), i = 0, ¬ i→n(i) < # int2bits(j % 2 ^ (i * 8)) / 8 ∧ ¬ bits2int(bytes2bits(bits2bytes(int2bits(j % 2 ^ (i * 8))))) < 0 |
i→n(i * 8) % 8 = 0, # int2bits(j % 2 ^ (i * 8)) = n * 8, 0 ≤ j % 2 ^ (i * 8), 2 ^ (i * 8) ≤ j, 0 < i, n * 8 < i→n(i * 8) ⊦ i = 0, n * 8 = i→n(i * 8), i→n(i * 8) + 1 = n * 8, mklist(false, i→n(i * 8) - n * 8) + int2bits(j % 2 ^ (i * 8)) = [], bits2bytes(mklist(false, i→n(i * 8) - n * 8) + int2bits(j % 2 ^ (i * 8))) = fix(i→n(i) + 1, bits2bytes(int2bits(j % 2 ^ (i * 8)))).rest, ¬ i→n(i) < n ∧ ¬ bits2int(bytes2bits(bits2bytes(int2bits(j % 2 ^ (i * 8))))) < 0
Used simplifier rules: ⊦ m * n = n * m;% ⊦ m0 * m * n = (m0 * m) * n;%n ≠ 0 ⊦ (m * n) / n = m;% ⊦ m < n ∧ m = n0 → n0 < n; (forward)% ⊦ i * j = j * i;