| j / gcd(j, j0) * j / gcd(j, j0) = (i * j0 / gcd(j0, j)) * j0 / gcd(j0, j), 0 < i, 0 < j, 0 < j0 ⊦ gcd(j, j0) = 1, j = 0, j0 = 0, ∃ i0. i = i0 * i0 |
0 < i, 0 < j, 0 < j0, gcd(j, j0) = 1, j * j = i * j0 * j0 ⊦ ∃ i0. i = i0 * i0
Used simplifier rules: gcd-div-gcd: ⊦ i ≠ 0 → gcd(i / gcd(i, j), j / gcd(i, j)) = 1;%gcd-com: ⊦ gcd(i, j) = gcd(j, i);%div-gcd-not-neg: ⊦ 0 < i → ¬ i / gcd(i, i0) ≤ 0;%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%commutativity: ⊦ i * j = j * i; from specification int-mult%lels: ⊦ ¬ i < j ↔ j ≤ i; from specification int-abs Used terms: i, j / gcd(j, j0), j0 / gcd(j0, j)