| i0 % j < 0, i0 % j < 0, i0 % j + j < j, j / 2 < abs(i0 % j + j), 0 < j, odd(j) ⊦ (i0 % j + j - j) |%| j = i0 % j + j ∧ j ≤ (i0 % j + j) + j / 2, ∃ i. ≡mod(i, i0, j) ∧ abs(i) ≤ j / 2 |
i0 % j < 0, j / 2 < abs(i0 % j + j), 0 < j, odd(j) ⊦ ∃ i. ≡mod(i, i0, j) ∧ abs(i) ≤ j / 2, (i0 % j) |%| j = i0 % j + j ∧ 0 ≤ i0 % j + j / 2
Used simplifier rules: lep: ⊦ i ≤ i + j ↔ 0 ≤ j; from specification int-abs%sub-add: ⊦ i + j - i = j; from specification int-abs%add-c: ⊦ i + j = j + i; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%zero-gels-01: ⊦ i < 0 ∧ 0 ≤ j → i < j; from specification int-abs%ls: ⊦ i + j < j ↔ i < 0; from specification int-basic2