Step |
Hyp |
Ref |
Expression |
1 |
|
aks6d1c3.1 |
|- ( ph -> N e. NN ) |
2 |
|
aks6d1c3.2 |
|- ( ph -> P e. Prime ) |
3 |
|
aks6d1c3.3 |
|- ( ph -> P || N ) |
4 |
|
aks6d1c3.4 |
|- ( ph -> R e. NN ) |
5 |
|
aks6d1c3.5 |
|- ( ph -> ( N gcd R ) = 1 ) |
6 |
|
aks6d1c3.6 |
|- E = ( k e. NN0 , l e. NN0 |-> ( ( P ^ k ) x. ( ( N / P ) ^ l ) ) ) |
7 |
|
aks6d1c3.7 |
|- L = ( ZRHom ` Y ) |
8 |
|
aks6d1c3.8 |
|- Y = ( Z/nZ ` R ) |
9 |
|
aks6d1c3.9 |
|- ( ph -> ( ( 2 logb N ) ^ 2 ) < ( ( odZ ` R ) ` N ) ) |
10 |
|
2re |
|- 2 e. RR |
11 |
10
|
a1i |
|- ( ph -> 2 e. RR ) |
12 |
|
2pos |
|- 0 < 2 |
13 |
12
|
a1i |
|- ( ph -> 0 < 2 ) |
14 |
1
|
nnred |
|- ( ph -> N e. RR ) |
15 |
1
|
nngt0d |
|- ( ph -> 0 < N ) |
16 |
|
1red |
|- ( ph -> 1 e. RR ) |
17 |
|
1lt2 |
|- 1 < 2 |
18 |
17
|
a1i |
|- ( ph -> 1 < 2 ) |
19 |
16 18
|
ltned |
|- ( ph -> 1 =/= 2 ) |
20 |
19
|
necomd |
|- ( ph -> 2 =/= 1 ) |
21 |
11 13 14 15 20
|
relogbcld |
|- ( ph -> ( 2 logb N ) e. RR ) |
22 |
21
|
resqcld |
|- ( ph -> ( ( 2 logb N ) ^ 2 ) e. RR ) |
23 |
1
|
nnzd |
|- ( ph -> N e. ZZ ) |
24 |
|
odzcl |
|- ( ( R e. NN /\ N e. ZZ /\ ( N gcd R ) = 1 ) -> ( ( odZ ` R ) ` N ) e. NN ) |
25 |
4 23 5 24
|
syl3anc |
|- ( ph -> ( ( odZ ` R ) ` N ) e. NN ) |
26 |
25
|
nnred |
|- ( ph -> ( ( odZ ` R ) ` N ) e. RR ) |
27 |
1 2 3 4 5 6 7 8
|
hashscontpowcl |
|- ( ph -> ( # ` ( L " ( E " ( NN0 X. NN0 ) ) ) ) e. NN0 ) |
28 |
27
|
nn0red |
|- ( ph -> ( # ` ( L " ( E " ( NN0 X. NN0 ) ) ) ) e. RR ) |
29 |
|
nfv |
|- F/ x ph |
30 |
|
prmnn |
|- ( P e. Prime -> P e. NN ) |
31 |
2 30
|
syl |
|- ( ph -> P e. NN ) |
32 |
31
|
nnzd |
|- ( ph -> P e. ZZ ) |
33 |
32
|
adantr |
|- ( ( ph /\ k e. NN0 ) -> P e. ZZ ) |
34 |
33
|
adantr |
|- ( ( ( ph /\ k e. NN0 ) /\ l e. NN0 ) -> P e. ZZ ) |
35 |
|
simplr |
|- ( ( ( ph /\ k e. NN0 ) /\ l e. NN0 ) -> k e. NN0 ) |
36 |
34 35
|
zexpcld |
|- ( ( ( ph /\ k e. NN0 ) /\ l e. NN0 ) -> ( P ^ k ) e. ZZ ) |
37 |
31
|
nnne0d |
|- ( ph -> P =/= 0 ) |
38 |
|
dvdsval2 |
|- ( ( P e. ZZ /\ P =/= 0 /\ N e. ZZ ) -> ( P || N <-> ( N / P ) e. ZZ ) ) |
39 |
32 37 23 38
|
syl3anc |
|- ( ph -> ( P || N <-> ( N / P ) e. ZZ ) ) |
40 |
3 39
|
mpbid |
|- ( ph -> ( N / P ) e. ZZ ) |
41 |
40
|
adantr |
|- ( ( ph /\ k e. NN0 ) -> ( N / P ) e. ZZ ) |
42 |
41
|
adantr |
|- ( ( ( ph /\ k e. NN0 ) /\ l e. NN0 ) -> ( N / P ) e. ZZ ) |
43 |
|
simpr |
|- ( ( ( ph /\ k e. NN0 ) /\ l e. NN0 ) -> l e. NN0 ) |
44 |
42 43
|
zexpcld |
|- ( ( ( ph /\ k e. NN0 ) /\ l e. NN0 ) -> ( ( N / P ) ^ l ) e. ZZ ) |
45 |
36 44
|
zmulcld |
|- ( ( ( ph /\ k e. NN0 ) /\ l e. NN0 ) -> ( ( P ^ k ) x. ( ( N / P ) ^ l ) ) e. ZZ ) |
46 |
45
|
ralrimiva |
|- ( ( ph /\ k e. NN0 ) -> A. l e. NN0 ( ( P ^ k ) x. ( ( N / P ) ^ l ) ) e. ZZ ) |
47 |
46
|
ralrimiva |
|- ( ph -> A. k e. NN0 A. l e. NN0 ( ( P ^ k ) x. ( ( N / P ) ^ l ) ) e. ZZ ) |
48 |
6
|
fmpo |
|- ( A. k e. NN0 A. l e. NN0 ( ( P ^ k ) x. ( ( N / P ) ^ l ) ) e. ZZ <-> E : ( NN0 X. NN0 ) --> ZZ ) |
49 |
47 48
|
sylib |
|- ( ph -> E : ( NN0 X. NN0 ) --> ZZ ) |
50 |
49
|
ffund |
|- ( ph -> Fun E ) |
51 |
49
|
ffvelcdmda |
|- ( ( ph /\ x e. ( NN0 X. NN0 ) ) -> ( E ` x ) e. ZZ ) |
52 |
29 50 51
|
funimassd |
|- ( ph -> ( E " ( NN0 X. NN0 ) ) C_ ZZ ) |
53 |
49
|
ffnd |
|- ( ph -> E Fn ( NN0 X. NN0 ) ) |
54 |
53
|
adantr |
|- ( ( ph /\ i e. NN0 ) -> E Fn ( NN0 X. NN0 ) ) |
55 |
|
simpr |
|- ( ( ph /\ i e. NN0 ) -> i e. NN0 ) |
56 |
55 55
|
opelxpd |
|- ( ( ph /\ i e. NN0 ) -> <. i , i >. e. ( NN0 X. NN0 ) ) |
57 |
54 56 56
|
fnfvimad |
|- ( ( ph /\ i e. NN0 ) -> ( E ` <. i , i >. ) e. ( E " ( NN0 X. NN0 ) ) ) |
58 |
|
vex |
|- k e. _V |
59 |
|
vex |
|- l e. _V |
60 |
58 59
|
op1std |
|- ( q = <. k , l >. -> ( 1st ` q ) = k ) |
61 |
60
|
oveq2d |
|- ( q = <. k , l >. -> ( P ^ ( 1st ` q ) ) = ( P ^ k ) ) |
62 |
58 59
|
op2ndd |
|- ( q = <. k , l >. -> ( 2nd ` q ) = l ) |
63 |
62
|
oveq2d |
|- ( q = <. k , l >. -> ( ( N / P ) ^ ( 2nd ` q ) ) = ( ( N / P ) ^ l ) ) |
64 |
61 63
|
oveq12d |
|- ( q = <. k , l >. -> ( ( P ^ ( 1st ` q ) ) x. ( ( N / P ) ^ ( 2nd ` q ) ) ) = ( ( P ^ k ) x. ( ( N / P ) ^ l ) ) ) |
65 |
64
|
mpompt |
|- ( q e. ( NN0 X. NN0 ) |-> ( ( P ^ ( 1st ` q ) ) x. ( ( N / P ) ^ ( 2nd ` q ) ) ) ) = ( k e. NN0 , l e. NN0 |-> ( ( P ^ k ) x. ( ( N / P ) ^ l ) ) ) |
66 |
6 65
|
eqtr4i |
|- E = ( q e. ( NN0 X. NN0 ) |-> ( ( P ^ ( 1st ` q ) ) x. ( ( N / P ) ^ ( 2nd ` q ) ) ) ) |
67 |
66
|
a1i |
|- ( ( ph /\ i e. NN0 ) -> E = ( q e. ( NN0 X. NN0 ) |-> ( ( P ^ ( 1st ` q ) ) x. ( ( N / P ) ^ ( 2nd ` q ) ) ) ) ) |
68 |
|
simpr |
|- ( ( ( ph /\ i e. NN0 ) /\ q = <. i , i >. ) -> q = <. i , i >. ) |
69 |
68
|
fveq2d |
|- ( ( ( ph /\ i e. NN0 ) /\ q = <. i , i >. ) -> ( 1st ` q ) = ( 1st ` <. i , i >. ) ) |
70 |
69
|
oveq2d |
|- ( ( ( ph /\ i e. NN0 ) /\ q = <. i , i >. ) -> ( P ^ ( 1st ` q ) ) = ( P ^ ( 1st ` <. i , i >. ) ) ) |
71 |
68
|
fveq2d |
|- ( ( ( ph /\ i e. NN0 ) /\ q = <. i , i >. ) -> ( 2nd ` q ) = ( 2nd ` <. i , i >. ) ) |
72 |
71
|
oveq2d |
|- ( ( ( ph /\ i e. NN0 ) /\ q = <. i , i >. ) -> ( ( N / P ) ^ ( 2nd ` q ) ) = ( ( N / P ) ^ ( 2nd ` <. i , i >. ) ) ) |
73 |
70 72
|
oveq12d |
|- ( ( ( ph /\ i e. NN0 ) /\ q = <. i , i >. ) -> ( ( P ^ ( 1st ` q ) ) x. ( ( N / P ) ^ ( 2nd ` q ) ) ) = ( ( P ^ ( 1st ` <. i , i >. ) ) x. ( ( N / P ) ^ ( 2nd ` <. i , i >. ) ) ) ) |
74 |
|
opelxp |
|- ( <. i , i >. e. ( NN0 X. NN0 ) <-> ( i e. NN0 /\ i e. NN0 ) ) |
75 |
56 74
|
sylib |
|- ( ( ph /\ i e. NN0 ) -> ( i e. NN0 /\ i e. NN0 ) ) |
76 |
75 74
|
sylibr |
|- ( ( ph /\ i e. NN0 ) -> <. i , i >. e. ( NN0 X. NN0 ) ) |
77 |
32
|
adantr |
|- ( ( ph /\ i e. NN0 ) -> P e. ZZ ) |
78 |
|
xp1st |
|- ( <. i , i >. e. ( NN0 X. NN0 ) -> ( 1st ` <. i , i >. ) e. NN0 ) |
79 |
56 78
|
syl |
|- ( ( ph /\ i e. NN0 ) -> ( 1st ` <. i , i >. ) e. NN0 ) |
80 |
77 79
|
zexpcld |
|- ( ( ph /\ i e. NN0 ) -> ( P ^ ( 1st ` <. i , i >. ) ) e. ZZ ) |
81 |
40
|
adantr |
|- ( ( ph /\ i e. NN0 ) -> ( N / P ) e. ZZ ) |
82 |
|
xp2nd |
|- ( <. i , i >. e. ( NN0 X. NN0 ) -> ( 2nd ` <. i , i >. ) e. NN0 ) |
83 |
56 82
|
syl |
|- ( ( ph /\ i e. NN0 ) -> ( 2nd ` <. i , i >. ) e. NN0 ) |
84 |
81 83
|
zexpcld |
|- ( ( ph /\ i e. NN0 ) -> ( ( N / P ) ^ ( 2nd ` <. i , i >. ) ) e. ZZ ) |
85 |
80 84
|
zmulcld |
|- ( ( ph /\ i e. NN0 ) -> ( ( P ^ ( 1st ` <. i , i >. ) ) x. ( ( N / P ) ^ ( 2nd ` <. i , i >. ) ) ) e. ZZ ) |
86 |
67 73 76 85
|
fvmptd |
|- ( ( ph /\ i e. NN0 ) -> ( E ` <. i , i >. ) = ( ( P ^ ( 1st ` <. i , i >. ) ) x. ( ( N / P ) ^ ( 2nd ` <. i , i >. ) ) ) ) |
87 |
|
vex |
|- i e. _V |
88 |
87 87
|
op1st |
|- ( 1st ` <. i , i >. ) = i |
89 |
88
|
a1i |
|- ( ( ph /\ i e. NN0 ) -> ( 1st ` <. i , i >. ) = i ) |
90 |
89
|
oveq2d |
|- ( ( ph /\ i e. NN0 ) -> ( P ^ ( 1st ` <. i , i >. ) ) = ( P ^ i ) ) |
91 |
87 87
|
op2nd |
|- ( 2nd ` <. i , i >. ) = i |
92 |
91
|
a1i |
|- ( ( ph /\ i e. NN0 ) -> ( 2nd ` <. i , i >. ) = i ) |
93 |
92
|
oveq2d |
|- ( ( ph /\ i e. NN0 ) -> ( ( N / P ) ^ ( 2nd ` <. i , i >. ) ) = ( ( N / P ) ^ i ) ) |
94 |
90 93
|
oveq12d |
|- ( ( ph /\ i e. NN0 ) -> ( ( P ^ ( 1st ` <. i , i >. ) ) x. ( ( N / P ) ^ ( 2nd ` <. i , i >. ) ) ) = ( ( P ^ i ) x. ( ( N / P ) ^ i ) ) ) |
95 |
14
|
recnd |
|- ( ph -> N e. CC ) |
96 |
95
|
adantr |
|- ( ( ph /\ i e. NN0 ) -> N e. CC ) |
97 |
77
|
zcnd |
|- ( ( ph /\ i e. NN0 ) -> P e. CC ) |
98 |
37
|
adantr |
|- ( ( ph /\ i e. NN0 ) -> P =/= 0 ) |
99 |
96 97 98
|
divcan2d |
|- ( ( ph /\ i e. NN0 ) -> ( P x. ( N / P ) ) = N ) |
100 |
99
|
eqcomd |
|- ( ( ph /\ i e. NN0 ) -> N = ( P x. ( N / P ) ) ) |
101 |
100
|
oveq1d |
|- ( ( ph /\ i e. NN0 ) -> ( N ^ i ) = ( ( P x. ( N / P ) ) ^ i ) ) |
102 |
81
|
zcnd |
|- ( ( ph /\ i e. NN0 ) -> ( N / P ) e. CC ) |
103 |
97 102 55
|
mulexpd |
|- ( ( ph /\ i e. NN0 ) -> ( ( P x. ( N / P ) ) ^ i ) = ( ( P ^ i ) x. ( ( N / P ) ^ i ) ) ) |
104 |
101 103
|
eqtr2d |
|- ( ( ph /\ i e. NN0 ) -> ( ( P ^ i ) x. ( ( N / P ) ^ i ) ) = ( N ^ i ) ) |
105 |
94 104
|
eqtrd |
|- ( ( ph /\ i e. NN0 ) -> ( ( P ^ ( 1st ` <. i , i >. ) ) x. ( ( N / P ) ^ ( 2nd ` <. i , i >. ) ) ) = ( N ^ i ) ) |
106 |
86 105
|
eqtrd |
|- ( ( ph /\ i e. NN0 ) -> ( E ` <. i , i >. ) = ( N ^ i ) ) |
107 |
106
|
eleq1d |
|- ( ( ph /\ i e. NN0 ) -> ( ( E ` <. i , i >. ) e. ( E " ( NN0 X. NN0 ) ) <-> ( N ^ i ) e. ( E " ( NN0 X. NN0 ) ) ) ) |
108 |
57 107
|
mpbid |
|- ( ( ph /\ i e. NN0 ) -> ( N ^ i ) e. ( E " ( NN0 X. NN0 ) ) ) |
109 |
108
|
ralrimiva |
|- ( ph -> A. i e. NN0 ( N ^ i ) e. ( E " ( NN0 X. NN0 ) ) ) |
110 |
52 1 109 4 5 7 8
|
hashscontpow |
|- ( ph -> ( ( odZ ` R ) ` N ) <_ ( # ` ( L " ( E " ( NN0 X. NN0 ) ) ) ) ) |
111 |
22 26 28 9 110
|
ltletrd |
|- ( ph -> ( ( 2 logb N ) ^ 2 ) < ( # ` ( L " ( E " ( NN0 X. NN0 ) ) ) ) ) |