| j0 ≤ 0, i1 * 4 + j1 ≤ ~3, i1 * 4 + j1 < 0, abs(j0) < 2, abs(j1) < 4, i1 ≤ 0, j1 ≤ 0, j0 + (i1 * 4 + j1) * 2 + 3 * 2 < ~1 ⊦ i1 = (j0 + (i1 * 4 + j1) * 2 + 3 * 2 - 6) / 8 |
j0 ≤ 0, i1 * 4 + j1 ≤ ~3, i1 * 4 + j1 < 0, abs(j0) < 2, abs(j1) < 4, i1 ≤ 0, j1 ≤ 0, j0 + (i1 * 4 + j1) * 2 < ~7, j0 + (i1 * 4 + j1) * 2 < 0 ⊦ i1 = (j0 + (i1 * 4 + j1) * 2) / 8
Used simplifier rules: numlsf: ⊦ i < (* j) ∧ j < 0 → i < 0; (forward) from specification int-basic1%numls-03: ⊦ i + (* j) < (* j0) ↔ i < j0 - j; from specification int-abs%add-c: ⊦ i + j = j + i; from specification int-basic2%add-zero-rev: ⊦ 0 + i = i; from specification int-basic2%numsub: ⊦ (* i) + i0 - (* j) = (i - j) + i0; from specification int-abs%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%commutativity: ⊦ i * j = j * i; from specification int-mult%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult