| ¬ max_prime_divisor(j) ≠ i, all_prime_divisors((j / max_prime_divisor(j)) / i) = all_prime_divisors(j / max_prime_divisor(j)), 2 ≤ j / i, 2 ≤ j, 0 < j, prime(i), i | j, 0 ≤ j, 0 < j / i, 0 ≤ j / i, ∀ j0, i. i→n(j0) < i→n(j) → i | j0 ∧ prime(i) ∧ 0 < j0 → all_prime_divisors(j0 / i) = all_prime_divisors(j0) -1l i ⊦ all_prime_divisors((j / i) / max_prime_divisor(j / i)) + max_prime_divisor(j / i) ' = all_prime_divisors(j / max_prime_divisor(j)) + (max_prime_divisor(j) ' -1l i), prime(j), prime(j / i), i ∈ all_prime_divisors(j / max_prime_divisor(j)) |
all_prime_divisors((j / max_prime_divisor(j)) / max_prime_divisor(j)) = all_prime_divisors(j / max_prime_divisor(j)), 2 ≤ j, 0 < j, 0 ≤ j, 0 < j / max_prime_divisor(j), 0 ≤ j / max_prime_divisor(j), ∀ j0, i. i→n(j0) < i→n(j) → i | j0 ∧ prime(i) ∧ 0 < j0 → all_prime_divisors(j0 / i) = all_prime_divisors(j0) -1l i ⊦ all_prime_divisors((j / max_prime_divisor(j)) / max_prime_divisor(j / max_prime_divisor(j))) + max_prime_divisor(j / max_prime_divisor(j)) ' = all_prime_divisors(j / max_prime_divisor(j)), prime(j), prime(j / max_prime_divisor(j)), max_prime_divisor(j) ∈ all_prime_divisors(j / max_prime_divisor(j))
Used simplifier rules: forward-le-05: ⊦ 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%max_prime_divisor-divides: ⊦ ¬ prime(i) ∧ 2 ≤ i → max_prime_divisor(i) | i; from specification int-gcd%max_prime_divisor-prime: ⊦ ¬ prime(i) ∧ 2 ≤ i → prime(max_prime_divisor(i)); from specification int-gcd%max_prime_divisor-ge2: ⊦ ¬ prime(i) ∧ 2 ≤ i → 2 ≤ i / max_prime_divisor(i); from specification int-gcd%a: ⊦ (ints + ints0) + ints1 = ints + ints0 + ints1; from specification list[intlista]%app: ⊦ ints + [] = ints; from specification list[intlista]%one-01: ⊦ i ' -1l i = []; from specification list-del[intlista]