| i0 - 3 = i1 * 4 + j1, i0 * 2 + j0 < 0, i0 * 2 + j0 < ~1, abs(j0) < 2, abs(j1) < 4, 0 < 4, i0 - 3 < 0, i0 ≤ 0, j0 ≤ 0, j1 ≤ 0, i1 ≤ 0 ⊦ i1 = (j0 + i0 * 2 - 6) / 8 |
i1 * 4 + j1 < 0, ((i1 * 4 + j1) + 3) * 2 + j0 < 0, abs(j1) < 4, abs(j0) < 2, ((i1 * 4 + j1) + 3) * 2 + j0 < ~1, i1 * 4 + j1 ≤ ~3, i1 ≤ 0, j1 ≤ 0, j0 ≤ 0 ⊦ i1 = (j0 + ((i1 * 4 + j1) + 3) * 2 - 6) / 8
Used simplifier rules: ⊦ i < 0 ∧ 0 ≤ j → i ≤ j; (s)%numlsf: ⊦ i < (* j) ∧ j < 0 → i < 0; (forward) from specification int-basic1%forward-le-03: ⊦ j ≤ i ∧ i < 0 → j < 0; (forward) from specification int-abs% ⊦ i + (* j) ≤ (* j0) ↔ i ≤ j0 - j; (s)%forward-le-04: ⊦ j ≤ i ∧ i ≤ 0 → j ≤ 0; (forward) from specification int-abs%j0 ≠ 0, j < j0 ⊦ i ≤ (* j) → i < (* j0); (s)%add-c: ⊦ i + j = j + i; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2% ⊦ i - j < i0 ↔ i < j + i0; (s)% ⊦ i - j = i0 ↔ i = i0 + j; (s)