| j2 < 0, ¬(0 < abs(j1) ∧ 0 < j2), j1 < 0 ⊦ rational(~ i1, abs(j1)) * rational(~ i2, abs(j2)) = rational(i1 * i2, j1 * j2), j2 = 0, j1 = 0, ¬ j1 < 0 ∧ ¬ j2 < 0 |
0 < j1, 0 < j2 ⊦ rational(i1, j1) * rational(i2, j2) = rational(i1 * i2, j1 * j2)
Used simplifier rules: neg-neg: ⊦ j ≠ 0 → rational(~ i, ~ j) = rational(i, j);% ⊦ ~ ~ i = i;% ⊦ i * j * j0 = (i * j) * j0;% ⊦ ~ i * j = ~(i * j);% ⊦ i * j = j * i;% ⊦ i < 0 → abs(i) = ~ i;% ⊦ i < 0 ∧ 0 ≤ j → i < j;% ⊦ 0 < ~ i ↔ i < 0;% ⊦ ¬ i < j ↔ j ≤ i;% ⊦ i ≠ j → (i ≤ j ↔ i < j);% ⊦ i < j → ¬ j < i; Used terms: abs(j2), ~ i2, abs(j1), ~ i1