| i0 ≠ i, all_prime_divisors(i0 / i) = i0 ', prime(i0), 0 < i * i0, 0 ≤ i * i0, i < i * i0, prime(i), 2 ≤ i * i0, i | i0, ∀ j0. i < j0 ∧ j0 < i * i0 ∧ prime(j0) → ¬ j0 | i * 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 ⊦ i0 ' = i0 ' + i ', prime(i * i0) |
all_prime_divisors(i0 / i) = i0 ', prime(i0), 0 < i * i0, 0 ≤ i * i0, i < i * i0, prime(i), 2 ≤ i * i0, i | i0, ∀ j0. i < j0 ∧ j0 < i * i0 ∧ prime(j0) → ¬ j0 | i * 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 ⊦ i0 = i, prime(i * i0)
Used simplifier rules: a: ⊦ (ints + ints0) + ints1 = ints + ints0 + ints1; from specification list[intlista]%e: ⊦ i ' ≠ []; from specification list[intlista]%app-04: ⊦ ints = ints + ints0 ↔ ints0 = []; from specification list[intlista]