| prime(j), 0 ≤ j ⊦ j = 2, dups(countFun(0, (j - 1) / 2, λ i. i ^2 |%| j) + countFun(0, (j - 1) / 2, λ i. (~1 - i ^2) |%| j)), dups(countFun(0, (j - 1) / 2, λ i. i ^2 |%| j)), dups(countFun(0, (j - 1) / 2, λ i. (~1 - i ^2) |%| j)), j < 2 * 1 + 2 * (j - 1) / 2 ∧ (i ∈ countFun(0, (j - 1) / 2, λ i. i ^2 |%| j) ∨ i ∈ countFun(0, (j - 1) / 2, λ i. (~1 - i ^2) |%| j) → 0 ≤ i ∧ i < j) |
j ≠ 0 ⊦ i % j = 0 → i / j * j = i
2 ≠ 0 ∧ (j - 1) % 2 = 0, prime(j), 0 ≤ j ⊦ j = 2, dups(countFun(0, (j - 1) / 2, λ i. i ^2 |%| j) + countFun(0, (j - 1) / 2, λ i. (~1 - i ^2) |%| j)), dups(countFun(0, (j - 1) / 2, λ i. i ^2 |%| j)), dups(countFun(0, (j - 1) / 2, λ i. (~1 - i ^2) |%| j)), j < 2 * 1 + (j - 1) ∧ (i ∈ countFun(0, (j - 1) / 2, λ i. i ^2 |%| j) ∨ i ∈ countFun(0, (j - 1) / 2, λ i. (~1 - i ^2) |%| j) → 0 ≤ i ∧ i < j)
Used simplifier rules: associativity: ⊦ i * j * j0 = (i * j) * j0; from specification int-mult%prime-odd-01: ⊦ prime(j) ∧ j ≠ 2 → (j - 1) % 2 = 0; from specification int-gcd%commutativity: ⊦ i * j = j * i; from specification int-mult Used terms: 2, j - 1