Step |
Hyp |
Ref |
Expression |
1 |
|
2sq.1 |
|- S = ran ( w e. Z[i] |-> ( ( abs ` w ) ^ 2 ) ) |
2 |
|
2sqlem7.2 |
|- Y = { z | E. x e. ZZ E. y e. ZZ ( ( x gcd y ) = 1 /\ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) } |
3 |
|
simpr |
|- ( ( ( x gcd y ) = 1 /\ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) -> z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) |
4 |
3
|
reximi |
|- ( E. y e. ZZ ( ( x gcd y ) = 1 /\ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) -> E. y e. ZZ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) |
5 |
4
|
reximi |
|- ( E. x e. ZZ E. y e. ZZ ( ( x gcd y ) = 1 /\ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) -> E. x e. ZZ E. y e. ZZ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) |
6 |
1
|
2sqlem2 |
|- ( z e. S <-> E. x e. ZZ E. y e. ZZ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) |
7 |
5 6
|
sylibr |
|- ( E. x e. ZZ E. y e. ZZ ( ( x gcd y ) = 1 /\ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) -> z e. S ) |
8 |
|
ax-1ne0 |
|- 1 =/= 0 |
9 |
|
gcdeq0 |
|- ( ( x e. ZZ /\ y e. ZZ ) -> ( ( x gcd y ) = 0 <-> ( x = 0 /\ y = 0 ) ) ) |
10 |
9
|
adantr |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( ( x gcd y ) = 0 <-> ( x = 0 /\ y = 0 ) ) ) |
11 |
|
simpr |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( x gcd y ) = 1 ) |
12 |
11
|
eqeq1d |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( ( x gcd y ) = 0 <-> 1 = 0 ) ) |
13 |
10 12
|
bitr3d |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( ( x = 0 /\ y = 0 ) <-> 1 = 0 ) ) |
14 |
13
|
necon3bbid |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( -. ( x = 0 /\ y = 0 ) <-> 1 =/= 0 ) ) |
15 |
8 14
|
mpbiri |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> -. ( x = 0 /\ y = 0 ) ) |
16 |
|
zsqcl2 |
|- ( x e. ZZ -> ( x ^ 2 ) e. NN0 ) |
17 |
16
|
ad2antrr |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( x ^ 2 ) e. NN0 ) |
18 |
17
|
nn0red |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( x ^ 2 ) e. RR ) |
19 |
17
|
nn0ge0d |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> 0 <_ ( x ^ 2 ) ) |
20 |
|
zsqcl2 |
|- ( y e. ZZ -> ( y ^ 2 ) e. NN0 ) |
21 |
20
|
ad2antlr |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( y ^ 2 ) e. NN0 ) |
22 |
21
|
nn0red |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( y ^ 2 ) e. RR ) |
23 |
21
|
nn0ge0d |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> 0 <_ ( y ^ 2 ) ) |
24 |
|
add20 |
|- ( ( ( ( x ^ 2 ) e. RR /\ 0 <_ ( x ^ 2 ) ) /\ ( ( y ^ 2 ) e. RR /\ 0 <_ ( y ^ 2 ) ) ) -> ( ( ( x ^ 2 ) + ( y ^ 2 ) ) = 0 <-> ( ( x ^ 2 ) = 0 /\ ( y ^ 2 ) = 0 ) ) ) |
25 |
18 19 22 23 24
|
syl22anc |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( ( ( x ^ 2 ) + ( y ^ 2 ) ) = 0 <-> ( ( x ^ 2 ) = 0 /\ ( y ^ 2 ) = 0 ) ) ) |
26 |
|
zcn |
|- ( x e. ZZ -> x e. CC ) |
27 |
26
|
ad2antrr |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> x e. CC ) |
28 |
|
zcn |
|- ( y e. ZZ -> y e. CC ) |
29 |
28
|
ad2antlr |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> y e. CC ) |
30 |
|
sqeq0 |
|- ( x e. CC -> ( ( x ^ 2 ) = 0 <-> x = 0 ) ) |
31 |
|
sqeq0 |
|- ( y e. CC -> ( ( y ^ 2 ) = 0 <-> y = 0 ) ) |
32 |
30 31
|
bi2anan9 |
|- ( ( x e. CC /\ y e. CC ) -> ( ( ( x ^ 2 ) = 0 /\ ( y ^ 2 ) = 0 ) <-> ( x = 0 /\ y = 0 ) ) ) |
33 |
27 29 32
|
syl2anc |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( ( ( x ^ 2 ) = 0 /\ ( y ^ 2 ) = 0 ) <-> ( x = 0 /\ y = 0 ) ) ) |
34 |
25 33
|
bitrd |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( ( ( x ^ 2 ) + ( y ^ 2 ) ) = 0 <-> ( x = 0 /\ y = 0 ) ) ) |
35 |
15 34
|
mtbird |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> -. ( ( x ^ 2 ) + ( y ^ 2 ) ) = 0 ) |
36 |
|
nn0addcl |
|- ( ( ( x ^ 2 ) e. NN0 /\ ( y ^ 2 ) e. NN0 ) -> ( ( x ^ 2 ) + ( y ^ 2 ) ) e. NN0 ) |
37 |
16 20 36
|
syl2an |
|- ( ( x e. ZZ /\ y e. ZZ ) -> ( ( x ^ 2 ) + ( y ^ 2 ) ) e. NN0 ) |
38 |
37
|
adantr |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( ( x ^ 2 ) + ( y ^ 2 ) ) e. NN0 ) |
39 |
|
elnn0 |
|- ( ( ( x ^ 2 ) + ( y ^ 2 ) ) e. NN0 <-> ( ( ( x ^ 2 ) + ( y ^ 2 ) ) e. NN \/ ( ( x ^ 2 ) + ( y ^ 2 ) ) = 0 ) ) |
40 |
38 39
|
sylib |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( ( ( x ^ 2 ) + ( y ^ 2 ) ) e. NN \/ ( ( x ^ 2 ) + ( y ^ 2 ) ) = 0 ) ) |
41 |
40
|
ord |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( -. ( ( x ^ 2 ) + ( y ^ 2 ) ) e. NN -> ( ( x ^ 2 ) + ( y ^ 2 ) ) = 0 ) ) |
42 |
35 41
|
mt3d |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( ( x ^ 2 ) + ( y ^ 2 ) ) e. NN ) |
43 |
|
eleq1 |
|- ( z = ( ( x ^ 2 ) + ( y ^ 2 ) ) -> ( z e. NN <-> ( ( x ^ 2 ) + ( y ^ 2 ) ) e. NN ) ) |
44 |
42 43
|
syl5ibrcom |
|- ( ( ( x e. ZZ /\ y e. ZZ ) /\ ( x gcd y ) = 1 ) -> ( z = ( ( x ^ 2 ) + ( y ^ 2 ) ) -> z e. NN ) ) |
45 |
44
|
expimpd |
|- ( ( x e. ZZ /\ y e. ZZ ) -> ( ( ( x gcd y ) = 1 /\ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) -> z e. NN ) ) |
46 |
45
|
rexlimivv |
|- ( E. x e. ZZ E. y e. ZZ ( ( x gcd y ) = 1 /\ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) -> z e. NN ) |
47 |
7 46
|
elind |
|- ( E. x e. ZZ E. y e. ZZ ( ( x gcd y ) = 1 /\ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) -> z e. ( S i^i NN ) ) |
48 |
47
|
abssi |
|- { z | E. x e. ZZ E. y e. ZZ ( ( x gcd y ) = 1 /\ z = ( ( x ^ 2 ) + ( y ^ 2 ) ) ) } C_ ( S i^i NN ) |
49 |
2 48
|
eqsstri |
|- Y C_ ( S i^i NN ) |