| # int2bits(j % 2 ^ (i * 8)) = (i→n(i) - 1) * 8 + n, 0 ≤ bytes2int(bits2bytes(int2bits(j % 2 ^ (i * 8)))), 2 ^ (i * 8) ≤ j, 0 ≤ j % 2 ^ (i * 8), n < 8, 0 < i ⊦ i = 0, bits2bytes(mklist(false, 8 - n) + int2bits(j % 2 ^ (i * 8))) = mklist(i2b(0), i→n(i) - (i→n(i) - 1) + 1) + bits2bytes(int2bits(j % 2 ^ (i * 8))), n = 0, mklist(false, 8 - n) + int2bits(j % 2 ^ (i * 8)) = [], 1 + 8 * i→n(i) = (i→n(i) - 1) * 8 + n, (i→n(i) - 1) * 8 + n = 8 * i→n(i) |
n ≠ 0 ⊦ (n - 1) + 1 = n
i→n(i) ≠ 0, # int2bits(j % 2 ^ (i * 8)) = (i→n(i) - 1) * 8 + n, 0 ≤ bytes2int(bits2bytes(int2bits(j % 2 ^ (i * 8)))), 2 ^ (i * 8) ≤ j, 0 ≤ j % 2 ^ (i * 8), n < 8, 0 < i ⊦ i = 0, bits2bytes(mklist(false, 8 - n) + int2bits(j % 2 ^ (i * 8))) = mklist(i2b(0), i→n(i) - i→n(i)) + bits2bytes(int2bits(j % 2 ^ (i * 8))), n = 0, mklist(false, 8 - n) + int2bits(j % 2 ^ (i * 8)) = [], 1 + 8 * i→n(i) = (i→n(i) - 1) * 8 + n, (i→n(i) - 1) * 8 + n = 8 * i→n(i)
Used simplifier rules: ⊦ i→n(i) = 0 ↔ i = 0; Used terms: i→n(i)