| i % 2 ^ abs(8 * j) = 0 ∧ i < ~(2 ^ (abs(8 * j) - 1)) ∧ 8 * j ≠ 0, 0 ≤ 2 ^ (8 * abs(j)) + i, i < 0, 2 ^ (8 * abs(j) - 1) + i < 0 ⊦ int2bytes(i).first = i2b(~1), i / 2 ^ abs(8 * j) = ~1, j = 0 |
i % 2 ^ (8 * abs(j)) = 0, 0 ≤ 2 ^ (8 * abs(j)) + i, i < 0, 2 ^ (8 * abs(j) - 1) + i < 0 ⊦ j = 0, int2bytes(i).first = i2b(~1), i / 2 ^ (8 * abs(j)) = ~1
Used simplifier rules: ⊦ i < 0 ∧ 0 ≤ j → i < j;% ⊦ i + j = j + i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ i < ~ j ↔ i + j < 0;% ⊦ i * j = 0 ↔ i = 0 ∨ j = 0;% ⊦ i * j = j * i;% ⊦ i * j * j0 = (i * j) * j0;% ⊦ abs(i * j) = abs(i) * abs(j);