| j0 * i1 = i * i0, all_prime_divisors(i1 / i) = all_prime_divisors(i1) -1l i, 0 < i0, 0 < i, prime(i), i | i1, prime(j0), j0 < i * i0, j2 < i0, ∃ i1. j2 * i1 = i0, prime(j2), 2 ≤ i0, 2 ≤ i * i0, 0 ≤ i0, ∀ j1. j0 < j1 ∧ j1 < i * i0 ∧ prime(j1) → ¬ j1 | i * i0, ∀ j. j2 < j ∧ j < i0 ∧ prime(j) → ¬ j | i0, ∀ j0, i1. i→n(j0) < i→n(i * i0) → i1 | j0 ∧ prime(i1) ∧ 0 < j0 → all_prime_divisors(j0 / i1) = all_prime_divisors(j0) -1l i1 ⊦ j2 = j0, all_prime_divisors(i0 / j2) + j2 ' = (all_prime_divisors(i1) -1l i) + j0 ', j0 = 0, prime(i * i0), prime(i0) |
j0 * i1 = i * j2 * i2, all_prime_divisors(i1 / i) = all_prime_divisors(i1) -1l i, 0 < i, prime(i), i | i1, prime(j0), j0 < j0 * i1, j2 < j2 * i2, prime(j2), 2 ≤ j2 * i2, 2 ≤ j0 * i1, 0 < j2 * i2, 0 < j0 * i1, 0 ≤ j0 * i1, 0 ≤ j2 * i2, ∀ j1. j0 < j1 ∧ j1 < j0 * i1 ∧ prime(j1) → ¬ j1 | j0 * i1, ∀ j. j2 < j ∧ j < j2 * i2 ∧ prime(j) → ¬ j | j2 * i2, ∀ j0, i1. i→n(j0) < i→n(i * j2 * i2) → i1 | j0 ∧ prime(i1) ∧ 0 < j0 → all_prime_divisors(j0 / i1) = all_prime_divisors(j0) -1l i1 ⊦ j0 = 0, j2 = j0, all_prime_divisors(i2) + j2 ' = (all_prime_divisors(i1) -1l i) + j0 ', prime(j0 * i1), prime(j2 * i2)
Used simplifier rules: forward-le: ⊦ i ≤ j ∧ 0 < i → 0 < j; (forward) from specification int-abs%forward-le-01: ⊦ i ≤ j ∧ 0 ≤ i → 0 ≤ j; (forward) from specification int-abs%div-mult-03: j ≠ 0 ⊦ (i * j) / j = i; from specification int-div%zero-eq: ⊦ i * j = 0 ↔ i = 0 ∨ j = 0; from specification int-mult%commutativity: ⊦ i * j = j * i; from specification int-mult%associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%Mult-zero: ⊦ i * 0 = 0; from specification int-mult