| # int2bits(j % 2 ^ (i * 8)) = i→n(i * 8), # int2bits(j % 2 ^ (i * 8)) ≤ i→n(i * 8), i→n(i * 8) % 8 = 0, 2 ^ (i * 8) ≤ j, 0 < i, # int2bits(j % 2 ^ (i * 8)) ≤ i→n(i * 8), 0 ≤ j % 2 ^ (i * 8) ⊦ i→n(i * 8) + 1 = # int2bits(j % 2 ^ (i * 8)), mklist(false, i→n(i * 8) - # int2bits(j % 2 ^ (i * 8))) + int2bits(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 |
i→n(i * 8) % 8 = 0, # int2bits(j % 2 ^ (i * 8)) = i→n(i * 8), 0 ≤ j % 2 ^ (i * 8), 0 < i, 2 ^ (i * 8) ≤ j ⊦ bits2bytes(int2bits(j % 2 ^ (i * 8))) = fix(i→n(i) + 1, bits2bytes(int2bits(j % 2 ^ (i * 8)))).rest
Used simplifier rules: ⊦ 0 < i → (i * j ≤ i * i0 ↔ j ≤ i0);% ⊦ i * j * j0 = (i * j) * j0;% ⊦ 0 < j → abs(j) = j;% ⊦ abs(i * j) = abs(i) * abs(j);% ⊦ i→n(i) ≤ i→n(j) ↔ abs(i) ≤ abs(j);% ⊦ m + n = n + m;% ⊦ (m + n0) + n1 = m + n0 + n1;% ⊦ m = m + n ↔ n = 0;% ⊦ int2bits(j) ≠ [];% ⊦ (bits + bits0) + bits1 = bits + bits0 + bits1;% ⊦ [] + bits = bits;% ⊦ mklist(boolvar, 0) = [];% ⊦ m - m = 0;% ⊦ i * j = j * i;