| abs(i) < abs(i) / abs(j), j < 0, i0 < abs(i) / abs(j), i ≤ 0, abs(i) ≤ i0, 0 ≤ i ∧ 0 < j ∨ i < 0 ∧ j < 0 ⊦ |
⊦ ¬ i0 < i ∧ 0 ≤ i ∧ 0 < j → ¬ i0 < i / j
Used simplifier rules: neg: j ≠ 0 ⊦ i / ~ j = ~(i / j);%neg-01: j ≠ 0 ⊦ ~ i / j = ~(i / j);% ⊦ i < 0 → abs(i) = ~ i; (s)% ⊦ i < ~ j ↔ i + j < 0; (s)% ⊦ i ≤ j → (j ≤ i ↔ i = j); (s)% ⊦ i < j → ¬ j < i; (s)% ⊦ i < 0 ∧ 0 ≤ j → i < j; (s)% ⊦ i < 0 ∧ 0 ≤ j → i ≤ j; (s)% ⊦ ~ i ≤ j ↔ 0 ≤ i + j; (s)% ⊦ ~ i + ~ j = ~(i + j); (s)%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-c: ⊦ i + j = j + i; from specification int-basic2% ⊦ ~ i < 0 ↔ 0 < i; (s)% ⊦ i + ~ j = i - j; (s)% ⊦ i - j < i0 ↔ i < j + i0; (s)% ⊦ i + 0 = i; (s)% ⊦ i ≤ j → ¬ j < i; (s)% ⊦ i ≤ ~ j ↔ i + j ≤ 0; (s)% ⊦ 0 < ~ i ↔ i < 0; (s) Used terms: abs(j), abs(i), i0