| i * i0 = i1 * abs(j) + j0 ∧ 0 ≤ j0 ∧ j0 < abs(j) ∧ 0 ≤ i1 ∧ 0 < abs(j) ∧ 0 ≤ i * i0, gcd(i, j) = 1, j0 = 1, 0 < i0, 0 ≤ i ⊦ j | i * i0 - 1, ∃ i0. ≡mod(i * i0, 1, j) |
i * i0 = i1 * abs(j) + 1, gcd(i, j) = 1, 0 < i0, 0 ≤ i, 1 < abs(j), 0 ≤ i1 ⊦ j = 0, j | i * i0 - 1, ∃ i0. ≡mod(i * i0, 1, j)
Used simplifier rules: numlelsdel-01: i0 ≠ 0, i0 ≤ i ⊦ (* i) < j → (* i0) < j; from specification int-abs%forward-pos: ⊦ i < j ∧ 0 < i → 0 < j ∧ 1 < j; (forward) from specification int-basic1%forward-le-05: ⊦ i < j ∧ 0 ≤ i → 0 < j; (forward) from specification int-abs%lel: ⊦ i < i0 ∧ i = i1 → i1 < i0; (forward) from specification oelem[intlista]%forward-le-01: ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j; (forward) from specification int-abs%commutativity: ⊦ i * j = j * i; from specification int-mult%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%zero-gels-04: ⊦ i ≤ 0 ∧ 0 ≤ j → i ≤ j; from specification int-abs%zero-ge: ⊦ 0 < i → (0 ≤ i * j ↔ 0 ≤ j); from specification int-mult%abs-06: ⊦ 0 < abs(i) ↔ i ≠ 0; from specification int-abs