| j * j = i * j0 * j0, j < i, j < 0, 0 < i, j + 1 < i ⊦ 0 < ~ j ∧ 0 < j0 ∧ ~ j * ~ j = i * j0 * j0, j = 0, ∃ i0. i = i0 * i0 |
j * j = i * j0 * j0, j < i, j < 0, 0 < i, j + 1 < i, j0 ≤ 0, j0 < i ⊦ j = 0, ∃ i0. i = i0 * i0
Used simplifier rules: forward-le-04: ⊦ j ≤ i ∧ i ≤ 0 → j ≤ 0; (forward) from specification int-abs%forward-lels: ⊦ i ≤ j ∧ j < j0 → i < j0; (forward) from specification int-abs%lels: ⊦ ¬ i < j ↔ j ≤ i; from specification int-abs%neg-02: ⊦ ~ ~ i = i; from specification int-abs%commutativity: ⊦ i * j = j * i; from specification int-mult%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%minus-left: ⊦ ~ i * j = ~(i * j); from specification int-mult%zero-gels-01: ⊦ i < 0 ∧ 0 ≤ j → i < j; from specification int-abs%neg: ⊦ 0 < ~ i ↔ i < 0; from specification int-abs