| i < 0, i0 < 0, abs(i0 + i) + i ≤ 0 ⊦ i = 0, i0 = 0, gcd(i, abs(i0 + i)) = gcd(i, i0) |
⊦ j < 0 → abs(j) = 0 - j
Used simplifier rules: gcd-neg: ⊦ gcd(~ i, j) = gcd(i, j);%gcd-com: ⊦ gcd(i, j) = gcd(j, i);%neg-06: ⊦ 0 - i = ~ i; from specification int-abs%zero-01: ⊦ i < 0 ∧ j < 0 → i + j < 0; from specification int-basic2%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-c: ⊦ i + j = j + i; from specification int-basic2%neg-15: ⊦ i + ~ j = i - j; from specification int-abs%sub-add-09: ⊦ i - j + i = ~ j; from specification int-abs%negle-13: ⊦ ~ i ≤ j ↔ 0 ≤ i + j; from specification int-abs%add-zero: ⊦ i + 0 = i; from specification int-basic2%lels-02: ⊦ i ≠ j → (i ≤ j ↔ i < j); from specification int-abs%ls-01: ⊦ i < j → ¬ j < i; from specification int-basic1%Abs-pos: ⊦ ¬ j < 0 → abs(j) = j; from specification int-abs%add-mult-two: ⊦ i + i = 2 * i; from specification int-mult Used terms: i0 + i