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