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

Theorem phicl2 11096
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 11095 . 2  |-  ( N  e.  NN  ->  ( phi `  N )  =  ( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } ) )
2 phivalfi 11094 . . . . 5  |-  ( N  e.  NN  ->  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  e.  Fin )
3 hashcl 10089 . . . . 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 8802 . . 3  |-  ( N  e.  NN  ->  ( `  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )  e.  ZZ )
6 1z 8712 . . . . 5  |-  1  e.  ZZ
7 hashsng 10106 . . . . 5  |-  ( 1  e.  ZZ  ->  ( `  { 1 } )  =  1 )
86, 7ax-mp 7 . . . 4  |-  ( `  {
1 } )  =  1
9 eluzfz1 9380 . . . . . . . . 9  |-  ( N  e.  ( ZZ>= `  1
)  ->  1  e.  ( 1 ... N
) )
10 nnuz 8989 . . . . . . . . 9  |-  NN  =  ( ZZ>= `  1 )
119, 10eleq2s 2179 . . . . . . . 8  |-  ( N  e.  NN  ->  1  e.  ( 1 ... N
) )
12 nnz 8705 . . . . . . . . 9  |-  ( N  e.  NN  ->  N  e.  ZZ )
13 1gcd 10889 . . . . . . . . 9  |-  ( N  e.  ZZ  ->  (
1  gcd  N )  =  1 )
1412, 13syl 14 . . . . . . . 8  |-  ( N  e.  NN  ->  (
1  gcd  N )  =  1 )
15 oveq1 5622 . . . . . . . . . 10  |-  ( x  =  1  ->  (
x  gcd  N )  =  ( 1  gcd 
N ) )
1615eqeq1d 2093 . . . . . . . . 9  |-  ( x  =  1  ->  (
( x  gcd  N
)  =  1  <->  (
1  gcd  N )  =  1 ) )
1716elrab 2762 . . . . . . . 8  |-  ( 1  e.  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  <->  ( 1  e.  ( 1 ... N )  /\  (
1  gcd  N )  =  1 ) )
1811, 14, 17sylanbrc 408 . . . . . . 7  |-  ( N  e.  NN  ->  1  e.  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )
1918snssd 3567 . . . . . 6  |-  ( N  e.  NN  ->  { 1 }  C_  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )
20 ssdomg 6449 . . . . . 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 61 . . . . 5  |-  ( N  e.  NN  ->  { 1 }  ~<_  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } )
22 1nn 8371 . . . . . . 7  |-  1  e.  NN
23 snfig 6485 . . . . . . 7  |-  ( 1  e.  NN  ->  { 1 }  e.  Fin )
2422, 23ax-mp 7 . . . . . 6  |-  { 1 }  e.  Fin
25 fihashdom 10111 . . . . . 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 405 . . . . 5  |-  ( N  e.  NN  ->  (
( `  { 1 } )  <_  ( `  {
x  e.  ( 1 ... N )  |  ( x  gcd  N
)  =  1 } )  <->  { 1 }  ~<_  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } ) )
2721, 26mpbird 165 . . . 4  |-  ( N  e.  NN  ->  ( `  { 1 } )  <_  ( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } ) )
288, 27syl5eqbrr 3856 . . 3  |-  ( N  e.  NN  ->  1  <_  ( `  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 } ) )
29 1zzd 8713 . . . . . . 7  |-  ( N  e.  NN  ->  1  e.  ZZ )
3029, 12fzfigd 9769 . . . . . 6  |-  ( N  e.  NN  ->  (
1 ... N )  e. 
Fin )
31 ssrab2 3095 . . . . . 6  |-  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  C_  (
1 ... N )
32 ssdomg 6449 . . . . . 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 1378 . . . . 5  |-  ( N  e.  NN  ->  { x  e.  ( 1 ... N
)  |  ( x  gcd  N )  =  1 }  ~<_  ( 1 ... N ) )
34 fihashdom 10111 . . . . . 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 403 . . . . 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 165 . . . 4  |-  ( N  e.  NN  ->  ( `  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )  <_  ( `  (
1 ... N ) ) )
37 nnnn0 8616 . . . . 5  |-  ( N  e.  NN  ->  N  e.  NN0 )
38 hashfz1 10091 . . . . 5  |-  ( N  e.  NN0  ->  ( `  (
1 ... N ) )  =  N )
3937, 38syl 14 . . . 4  |-  ( N  e.  NN  ->  ( `  ( 1 ... N
) )  =  N )
4036, 39breqtrd 3846 . . 3  |-  ( N  e.  NN  ->  ( `  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )  <_  N )
41 elfz1 9364 . . . 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 405 . . 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 1124 . 2  |-  ( N  e.  NN  ->  ( `  { x  e.  ( 1 ... N )  |  ( x  gcd  N )  =  1 } )  e.  ( 1 ... N ) )
441, 43eqeltrd 2161 1  |-  ( N  e.  NN  ->  ( phi `  N )  e.  ( 1 ... N
) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 103    /\ w3a 922    = wceq 1287    e. wcel 1436   {crab 2359    C_ wss 2988   {csn 3431   class class class wbr 3822   ` cfv 4983  (class class class)co 5615    ~<_ cdom 6410   Fincfn 6411   1c1 7298    <_ cle 7470   NNcn 8360   NN0cn0 8609   ZZcz 8686   ZZ>=cuz 8954   ...cfz 9359  ♯chash 10083    gcd cgcd 10844   phicphi 11092
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 104  ax-ia2 105  ax-ia3 106  ax-in1 577  ax-in2 578  ax-io 663  ax-5 1379  ax-7 1380  ax-gen 1381  ax-ie1 1425  ax-ie2 1426  ax-8 1438  ax-10 1439  ax-11 1440  ax-i12 1441  ax-bndl 1442  ax-4 1443  ax-13 1447  ax-14 1448  ax-17 1462  ax-i9 1466  ax-ial 1470  ax-i5r 1471  ax-ext 2067  ax-coll 3931  ax-sep 3934  ax-nul 3942  ax-pow 3986  ax-pr 4012  ax-un 4236  ax-setind 4328  ax-iinf 4378  ax-cnex 7383  ax-resscn 7384  ax-1cn 7385  ax-1re 7386  ax-icn 7387  ax-addcl 7388  ax-addrcl 7389  ax-mulcl 7390  ax-mulrcl 7391  ax-addcom 7392  ax-mulcom 7393  ax-addass 7394  ax-mulass 7395  ax-distr 7396  ax-i2m1 7397  ax-0lt1 7398  ax-1rid 7399  ax-0id 7400  ax-rnegex 7401  ax-precex 7402  ax-cnre 7403  ax-pre-ltirr 7404  ax-pre-ltwlin 7405  ax-pre-lttrn 7406  ax-pre-apti 7407  ax-pre-ltadd 7408  ax-pre-mulgt0 7409  ax-pre-mulext 7410  ax-arch 7411  ax-caucvg 7412
This theorem depends on definitions:  df-bi 115  df-dc 779  df-3or 923  df-3an 924  df-tru 1290  df-fal 1293  df-nf 1393  df-sb 1690  df-eu 1948  df-mo 1949  df-clab 2072  df-cleq 2078  df-clel 2081  df-nfc 2214  df-ne 2252  df-nel 2347  df-ral 2360  df-rex 2361  df-reu 2362  df-rmo 2363  df-rab 2364  df-v 2617  df-sbc 2830  df-csb 2923  df-dif 2990  df-un 2992  df-in 2994  df-ss 3001  df-nul 3276  df-if 3380  df-pw 3417  df-sn 3437  df-pr 3438  df-op 3440  df-uni 3639  df-int 3674  df-iun 3717  df-br 3823  df-opab 3877  df-mpt 3878  df-tr 3914  df-id 4096  df-po 4099  df-iso 4100  df-iord 4169  df-on 4171  df-ilim 4172  df-suc 4174  df-iom 4381  df-xp 4419  df-rel 4420  df-cnv 4421  df-co 4422  df-dm 4423  df-rn 4424  df-res 4425  df-ima 4426  df-iota 4948  df-fun 4985  df-fn 4986  df-f 4987  df-f1 4988  df-fo 4989  df-f1o 4990  df-fv 4991  df-riota 5571  df-ov 5618  df-oprab 5619  df-mpt2 5620  df-1st 5870  df-2nd 5871  df-recs 6026  df-frec 6112  df-1o 6137  df-er 6246  df-en 6412  df-dom 6413  df-fin 6414  df-sup 6626  df-pnf 7471  df-mnf 7472  df-xr 7473  df-ltxr 7474  df-le 7475  df-sub 7602  df-neg 7603  df-reap 7996  df-ap 8003  df-div 8082  df-inn 8361  df-2 8419  df-3 8420  df-4 8421  df-n0 8610  df-z 8687  df-uz 8955  df-q 9040  df-rp 9070  df-fz 9360  df-fzo 9485  df-fl 9608  df-mod 9661  df-iseq 9783  df-iexp 9857  df-ihash 10084  df-cj 10175  df-re 10176  df-im 10177  df-rsqrt 10330  df-abs 10331  df-dvds 10703  df-gcd 10845  df-phi 11093
This theorem is referenced by:  phicl  11097  phi1  11101
  Copyright terms: Public domain W3C validator