| j < 0 ∧ ¬ false ∈ int2bits(31).rest ∧ 0 ≤ 31, i < 0 ⊦ (j + 1) % (31 + 1) + 31 = 0, (i + 1) * 2 ^ abs((j + 1) % (31 + 1) + 31) = 2 ^ abs((j + 1) % (31 + 1) + 31) + i * 2 ^ ((j + 1) % (31 + 1) + 31) |
i < 0, j < 0 ⊦ ~31 = (j + 1) % 32, 2 ^ abs(31 + (j + 1) % 32) * (i + 1) = 2 ^ (31 + (j + 1) % 32) * i + 2 ^ abs(31 + (j + 1) % 32), false ∈ int2bits(31).rest
Used simplifier rules: ⊦ j < i ∧ i ≤ 0 → j < 0; (forward)% ⊦ i + j = j + i;% ⊦ i + j + i0 = (i + j) + i0;% ⊦ (* j) = i0 + (* j0) ↔ j - j0 = i0;