| (j * j) / gcd(j, j0) = (i * j0 * j0) / gcd(j, j0), 0 < i, 0 < j, 0 < j0 ⊦ gcd(j, j0) = 1, ∃ i0. i = i0 * i0 |
⊦ i0 ≠ 0 → (i0 * j) / gcd(i0, j0) = i0 / gcd(i0, j0) * j
j ≠ 0, j / gcd(j, j0) * j = (i * j0 * j0) / gcd(j, j0), 0 < i, 0 < j, 0 < j0 ⊦ gcd(j, j0) = 1, ∃ i0. i = i0 * i0
Used simplifier rules: gcd-zero-04: ⊦ gcd(i, 0) = abs(i);%gcd-com: ⊦ gcd(i, j) = gcd(j, i);%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%commutativity: ⊦ i * j = j * i; from specification int-mult%abs-16: ⊦ 0 < j → abs(j) = j; from specification int-abs%div-zero-05: ⊦ i < j ∧ 0 < j ∧ 0 ≤ i → i / j = 0; from specification int-div Used terms: j0, j, j