| j < i, 0 < i, j < 0, j + 1 < i ⊦ i * i0 ≤ j ↔ i0 ≤ (j + 1 - i) / i, i = j + 1 |
⊦ 0 < j ∧ i < 0 → (i0 = i / j ∧ j0 = i % j ↔ i = i0 * j + j0 ∧ j0 ≤ 0 ∧ abs(j0) < j)
j + 1 - i = i1 * i + j0, j + 1 < i, j < 0, 0 < i, j < i, abs(j0) < i, j + 1 - i < 0, j0 ≤ 0 ⊦ i * i0 ≤ j ↔ i0 ≤ i1, i = j + 1
Used simplifier rules: ⊦ i - j < i0 ↔ i < j + i0; (s)% ⊦ i + 0 = i; (s)%add-a: ⊦ i + j + i0 = (i + j) + i0; from specification int-basic2%add-c: ⊦ i + j = j + i; from specification int-basic2% ⊦ i + j < i0 ∧ ¬ j < j0 → i + j0 < i0; (s) Used terms: j + 1 - i, i, i1, j0