| ⊦ 0 < j ∧ i ≤ 0 ∧ 0 ≤ i0 ∧ i0 < j → (j * i + ~ i0) % j = ~ i0 |
⊦ 0 < j ∧ i ≤ 0 ∧ i0 ≤ 0 ∧ abs(i0) < j → (j * i + i0) % j = i0
Used simplifier rules: neg-15: ⊦ i + ~ j = i - j; from specification int-abs%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-c: ⊦ i + j = j + i; from specification int-basic2%negeq: ⊦ ~ i = j ↔ i + j = 0; from specification int-abs%zero-gels-04: ⊦ i ≤ 0 ∧ 0 ≤ j → i ≤ j; from specification int-abs%negle-13: ⊦ ~ i ≤ j ↔ 0 ≤ i + j; from specification int-abs%add-zero-rev: ⊦ 0 + i = i; from specification int-basic2%abs-neg: ⊦ abs(~ i) = abs(i); from specification int-abs%absle: ⊦ 0 ≤ i → abs(i) = i; from specification int-abs Used terms: ~ i0, i, j