| i1 * 2 + j1 < 0, 2 ^ i * ((i1 * 2 + j1) + 1) + j0 < 0, (i1 * 2 + j1) + 1 < i, 0 ≤ i, (2 ^ i * 2 * (i1 + 1) + 2 ^ i * j1) + (j0 - 1) < 0, 0 < i, abs(j0) < 2 ^ i, j1 ≤ 0, j1 < i, i1 ≤ 0, i1 < i, abs(j1) < 2, j0 ≤ 0, j0 < i ⊦ i1 = ((2 ^ i * 2 * (i1 + 1) + 2 ^ i * j1) + j0 - 2 ^ i * 2) / (2 ^ i * 2) |
⊦ (i + i0) * j = i * j + i0 * j
i1 * 2 + j1 < 0, 2 ^ i * ((i1 * 2 + j1) + 1) + j0 < 0, (i1 * 2 + j1) + 1 < i, 0 ≤ i, (2 ^ i * (i1 * 2 + 1 * 2) + 2 ^ i * j1) + (j0 - 1) < 0, 0 < i, abs(j0) < 2 ^ i, j1 ≤ 0, j1 < i, i1 ≤ 0, i1 < i, abs(j1) < 2, j0 ≤ 0, j0 < i ⊦ i1 = ((2 ^ i * (i1 * 2 + 1 * 2) + 2 ^ i * j1) + j0 - 2 ^ i * 2) / (2 ^ i * 2)
Used simplifier rules: commutativity: ⊦ i * j = j * i; from specification int-mult Used terms: 2, 1, i1