| i < 0, j < 0, j * 2 < 0 ⊦ ~((2 * i - 1) / (~ j * 2)) = i / j |
i < 0, 0 < j ⊦ (2 * i - 1) / (2 * j) = i / j
Used simplifier rules: neg: j ≠ 0 ⊦ i / ~ j = ~(i / j);%neg: j ≠ 0 ⊦ i / ~ j = ~(i / j);% ⊦ ~ ~ i = i; (s)% ⊦ ~ i * j = ~(i * j); (s)%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult% ⊦ 2 * i = 0 ↔ i = 0; (s)% ⊦ 0 < i → (i * j < 0 ↔ j < 0); (s)% ⊦ i < 0 ∧ 0 ≤ j → i < j; (s)% ⊦ 0 < ~ i ↔ i < 0; (s)%commutativity: ⊦ i * j = j * i; from specification int-mult Used terms: ~ j, i