| max_prime_divisor(j0) * i0 * max_prime_divisor(j0) * i0 = j * i * i, max_prime_divisor(j0) * i0 = j0, 0 < i, 0 < j, 0 < max_prime_divisor(j0) * i0, ∀ j1, j, i. i→n(j1) < i→n(max_prime_divisor(j0) * i0) → j1 * j1 = j * i * i ∧ 0 < j1 ∧ 0 < j ∧ 0 < i → i = 0 ∨ isSquare(j) ⊦ i = 0, isSquare(j), prime(max_prime_divisor(j0) * i0) |
⊦ prime(i) ∧ ¬ i | j → i * i0 ≠ j
¬(prime(max_prime_divisor(j0)) ∧ ¬ max_prime_divisor(j0) | j * i * i), max_prime_divisor(j0) * i0 * max_prime_divisor(j0) * i0 = j * i * i, max_prime_divisor(j0) * i0 = j0, 0 < i, 0 < j, 0 < max_prime_divisor(j0) * i0, ∀ j1, j, i. i→n(j1) < i→n(max_prime_divisor(j0) * i0) → j1 * j1 = j * i * i ∧ 0 < j1 ∧ 0 < j ∧ 0 < i → i = 0 ∨ isSquare(j) ⊦ i = 0, isSquare(j), prime(max_prime_divisor(j0) * i0)
Used terms: j * i * i, i0 * max_prime_divisor(j0) * i0, max_prime_divisor(j0)