| # int2bits(j % 2 ^ (i * 8)) = i→n(i * 8) + 1, # int2bits(j % 2 ^ (i * 8)).rest % 8 = 0, i→n(i) + 1 = # bits2bytes(int2bits(j % 2 ^ (i * 8))), (i→n(i * 8) + 1) % 8 = 0, 0 < i, 2 ^ (i * 8) ≤ j ⊦ bits2bytes(int2bits(j % 2 ^ (i * 8)).rest) = bits2bytes(int2bits(j % 2 ^ (i * 8))).rest, int2bits(j % 2 ^ (i * 8)).rest = [] |
⊦ bits ≠ [] → # bits.rest = (# bits)-1
Used simplifier rules: ⊦ n -1 = n - 1;% ⊦ int2bits(j) ≠ [];% ⊦ (m + n0) + n1 = m + n0 + n1;% ⊦ m + n = n + m;% ⊦ n ≤ m → m + n0 - n = (m - n) + n0;% ⊦ 0 + m = m;%n ≠ 0 ⊦ (m + 1) % n = 0 → m % n = n - 1; Used terms: int2bits(j % 2 ^ (i * 8))