| i < 0, i0 < 0 ⊦ i0 = 0, i = 0, i / gcd(i, i0) + rational(~(i / gcd(i, i0)), ~(i0 / gcd(i, i0))).num = 0 ∧ i0 / gcd(i, i0) + rational(~(i / gcd(i, i0)), ~(i0 / gcd(i, i0))).denom = 0 |
⊦ 0 < i ∧ 0 < j → rational(i, j).num = i / gcd(i, j)
0 < ~(i / gcd(i, i0)) ∧ 0 < ~(i0 / gcd(i, i0)), i < 0, i0 < 0 ⊦ i0 = 0, i = 0, i / gcd(i, i0) + ~(i / gcd(i, i0)) / gcd(~(i / gcd(i, i0)), ~(i0 / gcd(i, i0))) = 0 ∧ i0 / gcd(i, i0) + rational(~(i / gcd(i, i0)), ~(i0 / gcd(i, i0))).denom = 0
Used simplifier rules: ⊦ 0 < ~ i ↔ i < 0;% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ i0 < 0 → ¬ 0 ≤ i0 / gcd(i, i0);% ⊦ gcd(i, j) = gcd(j, i); Used terms: ~(i0 / gcd(i, i0)), ~(i / gcd(i, i0))