ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  phicl2 Unicode version

Theorem phicl2 11682
Description: Bounds and closure for the value of the Euler  phi function. (Contributed by Mario Carneiro, 23-Feb-2014.)
Assertion
Ref Expression
phicl2  |-  ( N  e.  NN  ->  ( phi `  N )  e.  ( 1 ... N
) )

Proof of Theorem phicl2
Dummy variable  x is distinct from all other variables.
StepHypRef Expression
1 phival 11681 . 2  |-  ( N  e.  NN  ->  ( phi `  N )  =  ( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } ) )
2 phivalfi 11680 . . . . 5  |-  ( N  e.  NN  ->  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  e.  Fin )
3 hashcl 10368 . . . . 5  |-  ( { x  e.  ( 1 ... N )  |  ( x  gcd  N
)  =  1 }  e.  Fin  ->  ( `  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )  e.  NN0 )
42, 3syl 14 . . . 4  |-  ( N  e.  NN  ->  ( `  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )  e.  NN0 )
54nn0zd 9023 . . 3  |-  ( N  e.  NN  ->  ( `  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )  e.  ZZ )
6 1z 8932 . . . . 5  |-  1  e.  ZZ
7 hashsng 10385 . . . . 5  |-  ( 1  e.  ZZ  ->  ( `  { 1 } )  =  1 )
86, 7ax-mp 7 . . . 4  |-  ( `  {
1 } )  =  1
9 eluzfz1 9652 . . . . . . . . 9  |-  ( N  e.  ( ZZ>= `  1
)  ->  1  e.  ( 1 ... N
) )
10 nnuz 9211 . . . . . . . . 9  |-  NN  =  ( ZZ>= `  1 )
119, 10eleq2s 2194 . . . . . . . 8  |-  ( N  e.  NN  ->  1  e.  ( 1 ... N
) )
12 nnz 8925 . . . . . . . . 9  |-  ( N  e.  NN  ->  N  e.  ZZ )
13 1gcd 11475 . . . . . . . . 9  |-  ( N  e.  ZZ  ->  (
1  gcd  N )  =  1 )
1412, 13syl 14 . . . . . . . 8  |-  ( N  e.  NN  ->  (
1  gcd  N )  =  1 )
15 oveq1 5713 . . . . . . . . . 10  |-  ( x  =  1  ->  (
x  gcd  N )  =  ( 1  gcd 
N ) )
1615eqeq1d 2108 . . . . . . . . 9  |-  ( x  =  1  ->  (
( x  gcd  N
)  =  1  <->  (
1  gcd  N )  =  1 ) )
1716elrab 2793 . . . . . . . 8  |-  ( 1  e.  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  <->  ( 1  e.  ( 1 ... N )  /\  (
1  gcd  N )  =  1 ) )
1811, 14, 17sylanbrc 411 . . . . . . 7  |-  ( N  e.  NN  ->  1  e.  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )
1918snssd 3612 . . . . . 6  |-  ( N  e.  NN  ->  { 1 }  C_  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )
20 ssdomg 6602 . . . . . 6  |-  ( { x  e.  ( 1 ... N )  |  ( x  gcd  N
)  =  1 }  e.  Fin  ->  ( { 1 }  C_  { x  e.  ( 1 ... N )  |  ( x  gcd  N
)  =  1 }  ->  { 1 }  ~<_  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } ) )
212, 19, 20sylc 62 . . . . 5  |-  ( N  e.  NN  ->  { 1 }  ~<_  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )
22 1nn 8589 . . . . . . 7  |-  1  e.  NN
23 snfig 6638 . . . . . . 7  |-  ( 1  e.  NN  ->  { 1 }  e.  Fin )
2422, 23ax-mp 7 . . . . . 6  |-  { 1 }  e.  Fin
25 fihashdom 10390 . . . . . 6  |-  ( ( { 1 }  e.  Fin  /\  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  e.  Fin )  ->  ( ( `  {
1 } )  <_ 
( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )  <->  { 1 }  ~<_  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } ) )
2624, 2, 25sylancr 408 . . . . 5  |-  ( N  e.  NN  ->  (
( `  { 1 } )  <_  ( `  {
x  e.  ( 1 ... N )  |  ( x  gcd  N
)  =  1 } )  <->  { 1 }  ~<_  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } ) )
2721, 26mpbird 166 . . . 4  |-  ( N  e.  NN  ->  ( `  { 1 } )  <_  ( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } ) )
288, 27syl5eqbrr 3909 . . 3  |-  ( N  e.  NN  ->  1  <_  ( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } ) )
29 1zzd 8933 . . . . . . 7  |-  ( N  e.  NN  ->  1  e.  ZZ )
3029, 12fzfigd 10045 . . . . . 6  |-  ( N  e.  NN  ->  (
1 ... N )  e. 
Fin )
31 ssrab2 3129 . . . . . 6  |-  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  C_  (
1 ... N )
32 ssdomg 6602 . . . . . 6  |-  ( ( 1 ... N )  e.  Fin  ->  ( { x  e.  (
1 ... N )  |  ( x  gcd  N
)  =  1 } 
C_  ( 1 ... N )  ->  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  ~<_  ( 1 ... N ) ) )
3330, 31, 32mpisyl 1390 . . . . 5  |-  ( N  e.  NN  ->  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  ~<_  ( 1 ... N ) )
34 fihashdom 10390 . . . . . 6  |-  ( ( { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 }  e.  Fin  /\  (
1 ... N )  e. 
Fin )  ->  (
( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )  <_ 
( `  ( 1 ... N ) )  <->  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  ~<_  ( 1 ... N ) ) )
352, 30, 34syl2anc 406 . . . . 5  |-  ( N  e.  NN  ->  (
( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )  <_ 
( `  ( 1 ... N ) )  <->  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  ~<_  ( 1 ... N ) ) )
3633, 35mpbird 166 . . . 4  |-  ( N  e.  NN  ->  ( `  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )  <_  ( `  (
1 ... N ) ) )
37 nnnn0 8836 . . . . 5  |-  ( N  e.  NN  ->  N  e.  NN0 )
38 hashfz1 10370 . . . . 5  |-  ( N  e.  NN0  ->  ( `  (
1 ... N ) )  =  N )
3937, 38syl 14 . . . 4  |-  ( N  e.  NN  ->  ( `  ( 1 ... N
) )  =  N )
4036, 39breqtrd 3899 . . 3  |-  ( N  e.  NN  ->  ( `  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )  <_  N )
41 elfz1 9636 . . . 4  |-  ( ( 1  e.  ZZ  /\  N  e.  ZZ )  ->  ( ( `  {
x  e.  ( 1 ... N )  |  ( x  gcd  N
)  =  1 } )  e.  ( 1 ... N )  <->  ( ( `  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )  e.  ZZ  /\  1  <_  ( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )  /\  ( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )  <_  N ) ) )
426, 12, 41sylancr 408 . . 3  |-  ( N  e.  NN  ->  (
( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )  e.  ( 1 ... N
)  <->  ( ( `  {
x  e.  ( 1 ... N )  |  ( x  gcd  N
)  =  1 } )  e.  ZZ  /\  1  <_  ( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )  /\  ( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )  <_  N ) ) )
435, 28, 40, 42mpbir3and 1132 . 2  |-  ( N  e.  NN  ->  ( `  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )  e.  ( 1 ... N ) )
441, 43eqeltrd 2176 1  |-  ( N  e.  NN  ->  ( phi `  N )  e.  ( 1 ... N
) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 104    /\ w3a 930    = wceq 1299    e. wcel 1448   {crab 2379    C_ wss 3021   {csn 3474   class class class wbr 3875   ` cfv 5059  (class class class)co 5706    ~<_ cdom 6563   Fincfn 6564   1c1 7501    <_ cle 7673   NNcn 8578   NN0cn0 8829   ZZcz 8906   ZZ>=cuz 9176   ...cfz 9631  ♯chash 10362    gcd cgcd 11430   phicphi 11678
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 105  ax-ia2 106  ax-ia3 107  ax-in1 584  ax-in2 585  ax-io 671  ax-5 1391  ax-7 1392  ax-gen 1393  ax-ie1 1437  ax-ie2 1438  ax-8 1450  ax-10 1451  ax-11 1452  ax-i12 1453  ax-bndl 1454  ax-4 1455  ax-13 1459  ax-14 1460  ax-17 1474  ax-i9 1478  ax-ial 1482  ax-i5r 1483  ax-ext 2082  ax-coll 3983  ax-sep 3986  ax-nul 3994  ax-pow 4038  ax-pr 4069  ax-un 4293  ax-setind 4390  ax-iinf 4440  ax-cnex 7586  ax-resscn 7587  ax-1cn 7588  ax-1re 7589  ax-icn 7590  ax-addcl 7591  ax-addrcl 7592  ax-mulcl 7593  ax-mulrcl 7594  ax-addcom 7595  ax-mulcom 7596  ax-addass 7597  ax-mulass 7598  ax-distr 7599  ax-i2m1 7600  ax-0lt1 7601  ax-1rid 7602  ax-0id 7603  ax-rnegex 7604  ax-precex 7605  ax-cnre 7606  ax-pre-ltirr 7607  ax-pre-ltwlin 7608  ax-pre-lttrn 7609  ax-pre-apti 7610  ax-pre-ltadd 7611  ax-pre-mulgt0 7612  ax-pre-mulext 7613  ax-arch 7614  ax-caucvg 7615
This theorem depends on definitions:  df-bi 116  df-dc 787  df-3or 931  df-3an 932  df-tru 1302  df-fal 1305  df-nf 1405  df-sb 1704  df-eu 1963  df-mo 1964  df-clab 2087  df-cleq 2093  df-clel 2096  df-nfc 2229  df-ne 2268  df-nel 2363  df-ral 2380  df-rex 2381  df-reu 2382  df-rmo 2383  df-rab 2384  df-v 2643  df-sbc 2863  df-csb 2956  df-dif 3023  df-un 3025  df-in 3027  df-ss 3034  df-nul 3311  df-if 3422  df-pw 3459  df-sn 3480  df-pr 3481  df-op 3483  df-uni 3684  df-int 3719  df-iun 3762  df-br 3876  df-opab 3930  df-mpt 3931  df-tr 3967  df-id 4153  df-po 4156  df-iso 4157  df-iord 4226  df-on 4228  df-ilim 4229  df-suc 4231  df-iom 4443  df-xp 4483  df-rel 4484  df-cnv 4485  df-co 4486  df-dm 4487  df-rn 4488  df-res 4489  df-ima 4490  df-iota 5024  df-fun 5061  df-fn 5062  df-f 5063  df-f1 5064  df-fo 5065  df-f1o 5066  df-fv 5067  df-riota 5662  df-ov 5709  df-oprab 5710  df-mpo 5711  df-1st 5969  df-2nd 5970  df-recs 6132  df-frec 6218  df-1o 6243  df-er 6359  df-en 6565  df-dom 6566  df-fin 6567  df-sup 6786  df-pnf 7674  df-mnf 7675  df-xr 7676  df-ltxr 7677  df-le 7678  df-sub 7806  df-neg 7807  df-reap 8203  df-ap 8210  df-div 8294  df-inn 8579  df-2 8637  df-3 8638  df-4 8639  df-n0 8830  df-z 8907  df-uz 9177  df-q 9262  df-rp 9292  df-fz 9632  df-fzo 9761  df-fl 9884  df-mod 9937  df-seqfrec 10060  df-exp 10134  df-ihash 10363  df-cj 10455  df-re 10456  df-im 10457  df-rsqrt 10610  df-abs 10611  df-dvds 11289  df-gcd 11431  df-phi 11679
This theorem is referenced by:  phicl  11683  phi1  11687
  Copyright terms: Public domain W3C validator