| i = i1 * gcd(i, j), j = i2 * gcd(i, j) + j0, 0 ≤ j, 0 ≤ i2, 0 ≤ j0, 0 < i1, 0 ≤ i, 0 < gcd(i, j), 0 ≤ i1, 1 < i0, 0 < i0, 0 < j, 0 < i, i0 | i2, i0 | i1, j0 < gcd(i, j) ⊦ |
⊦ abs(j0) < gcd(i, j) → (i = i1 * gcd(i, j) + j0 ↔ i = i1 * gcd(i, j) ∧ j0 = 0)
abs(j0) < gcd(j, i), i = i1 * gcd(i, j), j = i2 * gcd(j, i) ∧ j0 = 0, 0 ≤ j, 0 ≤ i2, 0 ≤ j0, 0 < i1, 0 ≤ i, 0 < gcd(i, j), 0 ≤ i1, 1 < i0, 0 < i0, 0 < j, 0 < i, i0 | i2, i0 | i1, j0 < gcd(i, j) ⊦
Used simplifier rules: gcd-com: ⊦ gcd(i, j) = gcd(j, i);%gcd-com: ⊦ gcd(i, j) = gcd(j, i);%absle: ⊦ 0 ≤ i → abs(i) = i; from specification int-abs%lels: ⊦ ¬ i < j ↔ j ≤ i; from specification int-abs%lels-03: ⊦ i < j → (¬ ¬ j ≤ i ↔ false); from specification int-abs Used terms: j0, i2, i, j