| i = (i0 * i3) * gcd(i, j), j = (i0 * i1) * gcd(j, i), 1 < i0, 0 < i0, 0 < j, 0 ≤ j, 0 < gcd(j, i), 0 < i1, 0 ≤ i1, 0 < i3, 0 ≤ i3, 0 < gcd(i, j), 0 < i ⊦ i = 0, i0 * gcd(i, j) | i ∧ i0 * gcd(i, j) | (i0 * i1) * gcd(j, i) |
i = (i0 * i3) * gcd(i, j), j = (i0 * i1) * gcd(j, i), 1 < i0, 0 < i0, 0 < j, 0 ≤ j, 0 < gcd(j, i), 0 < i1, 0 ≤ i1, 0 < i3, 0 ≤ i3, 0 < gcd(i, j), 0 < i ⊦ i0 * gcd(i, j) | i, i = 0
Used simplifier rules: gcd-com: ⊦ gcd(i, j) = gcd(j, i);%div-mult: ⊦ i | i * j;%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%commutativity: ⊦ i * j = j * i; from specification int-mult