Step |
Hyp |
Ref |
Expression |
1 |
|
eqid |
⊢ ran ( 𝑤 ∈ ℤ[i] ↦ ( ( abs ‘ 𝑤 ) ↑ 2 ) ) = ran ( 𝑤 ∈ ℤ[i] ↦ ( ( abs ‘ 𝑤 ) ↑ 2 ) ) |
2 |
|
oveq1 |
⊢ ( 𝑎 = 𝑥 → ( 𝑎 gcd 𝑏 ) = ( 𝑥 gcd 𝑏 ) ) |
3 |
2
|
eqeq1d |
⊢ ( 𝑎 = 𝑥 → ( ( 𝑎 gcd 𝑏 ) = 1 ↔ ( 𝑥 gcd 𝑏 ) = 1 ) ) |
4 |
|
oveq1 |
⊢ ( 𝑎 = 𝑥 → ( 𝑎 ↑ 2 ) = ( 𝑥 ↑ 2 ) ) |
5 |
4
|
oveq1d |
⊢ ( 𝑎 = 𝑥 → ( ( 𝑎 ↑ 2 ) + ( 𝑏 ↑ 2 ) ) = ( ( 𝑥 ↑ 2 ) + ( 𝑏 ↑ 2 ) ) ) |
6 |
5
|
eqeq2d |
⊢ ( 𝑎 = 𝑥 → ( 𝑧 = ( ( 𝑎 ↑ 2 ) + ( 𝑏 ↑ 2 ) ) ↔ 𝑧 = ( ( 𝑥 ↑ 2 ) + ( 𝑏 ↑ 2 ) ) ) ) |
7 |
3 6
|
anbi12d |
⊢ ( 𝑎 = 𝑥 → ( ( ( 𝑎 gcd 𝑏 ) = 1 ∧ 𝑧 = ( ( 𝑎 ↑ 2 ) + ( 𝑏 ↑ 2 ) ) ) ↔ ( ( 𝑥 gcd 𝑏 ) = 1 ∧ 𝑧 = ( ( 𝑥 ↑ 2 ) + ( 𝑏 ↑ 2 ) ) ) ) ) |
8 |
|
oveq2 |
⊢ ( 𝑏 = 𝑦 → ( 𝑥 gcd 𝑏 ) = ( 𝑥 gcd 𝑦 ) ) |
9 |
8
|
eqeq1d |
⊢ ( 𝑏 = 𝑦 → ( ( 𝑥 gcd 𝑏 ) = 1 ↔ ( 𝑥 gcd 𝑦 ) = 1 ) ) |
10 |
|
oveq1 |
⊢ ( 𝑏 = 𝑦 → ( 𝑏 ↑ 2 ) = ( 𝑦 ↑ 2 ) ) |
11 |
10
|
oveq2d |
⊢ ( 𝑏 = 𝑦 → ( ( 𝑥 ↑ 2 ) + ( 𝑏 ↑ 2 ) ) = ( ( 𝑥 ↑ 2 ) + ( 𝑦 ↑ 2 ) ) ) |
12 |
11
|
eqeq2d |
⊢ ( 𝑏 = 𝑦 → ( 𝑧 = ( ( 𝑥 ↑ 2 ) + ( 𝑏 ↑ 2 ) ) ↔ 𝑧 = ( ( 𝑥 ↑ 2 ) + ( 𝑦 ↑ 2 ) ) ) ) |
13 |
9 12
|
anbi12d |
⊢ ( 𝑏 = 𝑦 → ( ( ( 𝑥 gcd 𝑏 ) = 1 ∧ 𝑧 = ( ( 𝑥 ↑ 2 ) + ( 𝑏 ↑ 2 ) ) ) ↔ ( ( 𝑥 gcd 𝑦 ) = 1 ∧ 𝑧 = ( ( 𝑥 ↑ 2 ) + ( 𝑦 ↑ 2 ) ) ) ) ) |
14 |
7 13
|
cbvrex2vw |
⊢ ( ∃ 𝑎 ∈ ℤ ∃ 𝑏 ∈ ℤ ( ( 𝑎 gcd 𝑏 ) = 1 ∧ 𝑧 = ( ( 𝑎 ↑ 2 ) + ( 𝑏 ↑ 2 ) ) ) ↔ ∃ 𝑥 ∈ ℤ ∃ 𝑦 ∈ ℤ ( ( 𝑥 gcd 𝑦 ) = 1 ∧ 𝑧 = ( ( 𝑥 ↑ 2 ) + ( 𝑦 ↑ 2 ) ) ) ) |
15 |
14
|
abbii |
⊢ { 𝑧 ∣ ∃ 𝑎 ∈ ℤ ∃ 𝑏 ∈ ℤ ( ( 𝑎 gcd 𝑏 ) = 1 ∧ 𝑧 = ( ( 𝑎 ↑ 2 ) + ( 𝑏 ↑ 2 ) ) ) } = { 𝑧 ∣ ∃ 𝑥 ∈ ℤ ∃ 𝑦 ∈ ℤ ( ( 𝑥 gcd 𝑦 ) = 1 ∧ 𝑧 = ( ( 𝑥 ↑ 2 ) + ( 𝑦 ↑ 2 ) ) ) } |
16 |
1 15
|
2sqlem11 |
⊢ ( ( 𝑃 ∈ ℙ ∧ ( 𝑃 mod 4 ) = 1 ) → 𝑃 ∈ ran ( 𝑤 ∈ ℤ[i] ↦ ( ( abs ‘ 𝑤 ) ↑ 2 ) ) ) |
17 |
1
|
2sqlem2 |
⊢ ( 𝑃 ∈ ran ( 𝑤 ∈ ℤ[i] ↦ ( ( abs ‘ 𝑤 ) ↑ 2 ) ) ↔ ∃ 𝑥 ∈ ℤ ∃ 𝑦 ∈ ℤ 𝑃 = ( ( 𝑥 ↑ 2 ) + ( 𝑦 ↑ 2 ) ) ) |
18 |
16 17
|
sylib |
⊢ ( ( 𝑃 ∈ ℙ ∧ ( 𝑃 mod 4 ) = 1 ) → ∃ 𝑥 ∈ ℤ ∃ 𝑦 ∈ ℤ 𝑃 = ( ( 𝑥 ↑ 2 ) + ( 𝑦 ↑ 2 ) ) ) |