MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  odngen Structured version   Unicode version

Theorem odngen 16714
Description: A cyclic subgroup of size  ( O `  A ) has  ( phi `  ( O `  A
) ) generators. (Contributed by Stefan O'Rear, 12-Sep-2015.)
Hypotheses
Ref Expression
odhash.x  |-  X  =  ( Base `  G
)
odhash.o  |-  O  =  ( od `  G
)
odhash.k  |-  K  =  (mrCls `  (SubGrp `  G
) )
Assertion
Ref Expression
odngen  |-  ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  -> 
( # `  { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) } )  =  ( phi `  ( O `  A ) ) )
Distinct variable groups:    x, A    x, G    x, K    x, O    x, X

Proof of Theorem odngen
Dummy variable  y is distinct from all other variables.
StepHypRef Expression
1 eqid 2382 . . . 4  |-  ( y  e.  ( 0..^ ( O `  A ) )  |->  ( y (.g `  G ) A ) )  =  ( y  e.  ( 0..^ ( O `  A ) )  |->  ( y (.g `  G ) A ) )
21mptpreima 5408 . . 3  |-  ( `' ( y  e.  ( 0..^ ( O `  A ) )  |->  ( y (.g `  G ) A ) ) " {
x  e.  ( K `
 { A }
)  |  ( O `
 x )  =  ( O `  A
) } )  =  { y  e.  ( 0..^ ( O `  A ) )  |  ( y (.g `  G
) A )  e. 
{ x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) } }
32fveq2i 5777 . 2  |-  ( # `  ( `' ( y  e.  ( 0..^ ( O `  A ) )  |->  ( y (.g `  G ) A ) ) " { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) } ) )  =  ( # `  { y  e.  ( 0..^ ( O `  A ) )  |  ( y (.g `  G
) A )  e. 
{ x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) } }
)
4 odhash.x . . . . 5  |-  X  =  ( Base `  G
)
5 eqid 2382 . . . . 5  |-  (.g `  G
)  =  (.g `  G
)
6 odhash.o . . . . 5  |-  O  =  ( od `  G
)
7 odhash.k . . . . 5  |-  K  =  (mrCls `  (SubGrp `  G
) )
84, 5, 6, 7odf1o2 16710 . . . 4  |-  ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  -> 
( y  e.  ( 0..^ ( O `  A ) )  |->  ( y (.g `  G ) A ) ) : ( 0..^ ( O `  A ) ) -1-1-onto-> ( K `
 { A }
) )
9 f1ocnv 5736 . . . 4  |-  ( ( y  e.  ( 0..^ ( O `  A
) )  |->  ( y (.g `  G ) A ) ) : ( 0..^ ( O `  A ) ) -1-1-onto-> ( K `
 { A }
)  ->  `' (
y  e.  ( 0..^ ( O `  A
) )  |->  ( y (.g `  G ) A ) ) : ( K `  { A } ) -1-1-onto-> ( 0..^ ( O `
 A ) ) )
10 f1of1 5723 . . . 4  |-  ( `' ( y  e.  ( 0..^ ( O `  A ) )  |->  ( y (.g `  G ) A ) ) : ( K `  { A } ) -1-1-onto-> ( 0..^ ( O `
 A ) )  ->  `' ( y  e.  ( 0..^ ( O `  A ) )  |->  ( y (.g `  G ) A ) ) : ( K `
 { A }
) -1-1-> ( 0..^ ( O `  A ) ) )
118, 9, 103syl 20 . . 3  |-  ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  ->  `' ( y  e.  ( 0..^ ( O `
 A ) ) 
|->  ( y (.g `  G
) A ) ) : ( K `  { A } ) -1-1-> ( 0..^ ( O `  A ) ) )
12 ssrab2 3499 . . 3  |-  { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) }  C_  ( K `  { A } )
13 fvex 5784 . . . . . 6  |-  ( K `
 { A }
)  e.  _V
1413rabex 4516 . . . . 5  |-  { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) }  e.  _V
1514f1imaen 7496 . . . 4  |-  ( ( `' ( y  e.  ( 0..^ ( O `
 A ) ) 
|->  ( y (.g `  G
) A ) ) : ( K `  { A } ) -1-1-> ( 0..^ ( O `  A ) )  /\  { x  e.  ( K `
 { A }
)  |  ( O `
 x )  =  ( O `  A
) }  C_  ( K `  { A } ) )  -> 
( `' ( y  e.  ( 0..^ ( O `  A ) )  |->  ( y (.g `  G ) A ) ) " { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) } ) 
~~  { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) } )
16 hasheni 12323 . . . 4  |-  ( ( `' ( y  e.  ( 0..^ ( O `
 A ) ) 
|->  ( y (.g `  G
) A ) )
" { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) } ) 
~~  { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) }  ->  (
# `  ( `' ( y  e.  ( 0..^ ( O `  A ) )  |->  ( y (.g `  G ) A ) ) " {
x  e.  ( K `
 { A }
)  |  ( O `
 x )  =  ( O `  A
) } ) )  =  ( # `  {
x  e.  ( K `
 { A }
)  |  ( O `
 x )  =  ( O `  A
) } ) )
1715, 16syl 16 . . 3  |-  ( ( `' ( y  e.  ( 0..^ ( O `
 A ) ) 
|->  ( y (.g `  G
) A ) ) : ( K `  { A } ) -1-1-> ( 0..^ ( O `  A ) )  /\  { x  e.  ( K `
 { A }
)  |  ( O `
 x )  =  ( O `  A
) }  C_  ( K `  { A } ) )  -> 
( # `  ( `' ( y  e.  ( 0..^ ( O `  A ) )  |->  ( y (.g `  G ) A ) ) " {
x  e.  ( K `
 { A }
)  |  ( O `
 x )  =  ( O `  A
) } ) )  =  ( # `  {
x  e.  ( K `
 { A }
)  |  ( O `
 x )  =  ( O `  A
) } ) )
1811, 12, 17sylancl 660 . 2  |-  ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  -> 
( # `  ( `' ( y  e.  ( 0..^ ( O `  A ) )  |->  ( y (.g `  G ) A ) ) " {
x  e.  ( K `
 { A }
)  |  ( O `
 x )  =  ( O `  A
) } ) )  =  ( # `  {
x  e.  ( K `
 { A }
)  |  ( O `
 x )  =  ( O `  A
) } ) )
19 simpl1 997 . . . . . . . 8  |-  ( ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  /\  y  e.  ( 0..^ ( O `  A
) ) )  ->  G  e.  Grp )
20 simpl2 998 . . . . . . . 8  |-  ( ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  /\  y  e.  ( 0..^ ( O `  A
) ) )  ->  A  e.  X )
21 elfzoelz 11722 . . . . . . . . 9  |-  ( y  e.  ( 0..^ ( O `  A ) )  ->  y  e.  ZZ )
2221adantl 464 . . . . . . . 8  |-  ( ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  /\  y  e.  ( 0..^ ( O `  A
) ) )  -> 
y  e.  ZZ )
234, 5, 7cycsubg2cl 16356 . . . . . . . 8  |-  ( ( G  e.  Grp  /\  A  e.  X  /\  y  e.  ZZ )  ->  ( y (.g `  G
) A )  e.  ( K `  { A } ) )
2419, 20, 22, 23syl3anc 1226 . . . . . . 7  |-  ( ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  /\  y  e.  ( 0..^ ( O `  A
) ) )  -> 
( y (.g `  G
) A )  e.  ( K `  { A } ) )
25 fveq2 5774 . . . . . . . . 9  |-  ( x  =  ( y (.g `  G ) A )  ->  ( O `  x )  =  ( O `  ( y (.g `  G ) A ) ) )
2625eqeq1d 2384 . . . . . . . 8  |-  ( x  =  ( y (.g `  G ) A )  ->  ( ( O `
 x )  =  ( O `  A
)  <->  ( O `  ( y (.g `  G
) A ) )  =  ( O `  A ) ) )
2726elrab3 3183 . . . . . . 7  |-  ( ( y (.g `  G ) A )  e.  ( K `
 { A }
)  ->  ( (
y (.g `  G ) A )  e.  { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) }  <->  ( O `  ( y (.g `  G
) A ) )  =  ( O `  A ) ) )
2824, 27syl 16 . . . . . 6  |-  ( ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  /\  y  e.  ( 0..^ ( O `  A
) ) )  -> 
( ( y (.g `  G ) A )  e.  { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) }  <->  ( O `  ( y (.g `  G
) A ) )  =  ( O `  A ) ) )
29 simpl3 999 . . . . . . 7  |-  ( ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  /\  y  e.  ( 0..^ ( O `  A
) ) )  -> 
( O `  A
)  e.  NN )
304, 6, 5odmulgeq 16696 . . . . . . 7  |-  ( ( ( G  e.  Grp  /\  A  e.  X  /\  y  e.  ZZ )  /\  ( O `  A
)  e.  NN )  ->  ( ( O `
 ( y (.g `  G ) A ) )  =  ( O `
 A )  <->  ( y  gcd  ( O `  A
) )  =  1 ) )
3119, 20, 22, 29, 30syl31anc 1229 . . . . . 6  |-  ( ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  /\  y  e.  ( 0..^ ( O `  A
) ) )  -> 
( ( O `  ( y (.g `  G
) A ) )  =  ( O `  A )  <->  ( y  gcd  ( O `  A
) )  =  1 ) )
3228, 31bitrd 253 . . . . 5  |-  ( ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  /\  y  e.  ( 0..^ ( O `  A
) ) )  -> 
( ( y (.g `  G ) A )  e.  { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) }  <->  ( y  gcd  ( O `  A
) )  =  1 ) )
3332rabbidva 3025 . . . 4  |-  ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  ->  { y  e.  ( 0..^ ( O `  A ) )  |  ( y (.g `  G
) A )  e. 
{ x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) } }  =  { y  e.  ( 0..^ ( O `  A ) )  |  ( y  gcd  ( O `  A )
)  =  1 } )
3433fveq2d 5778 . . 3  |-  ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  -> 
( # `  { y  e.  ( 0..^ ( O `  A ) )  |  ( y (.g `  G ) A )  e.  { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) } }
)  =  ( # `  { y  e.  ( 0..^ ( O `  A ) )  |  ( y  gcd  ( O `  A )
)  =  1 } ) )
35 dfphi2 14306 . . . 4  |-  ( ( O `  A )  e.  NN  ->  ( phi `  ( O `  A ) )  =  ( # `  {
y  e.  ( 0..^ ( O `  A
) )  |  ( y  gcd  ( O `
 A ) )  =  1 } ) )
36353ad2ant3 1017 . . 3  |-  ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  -> 
( phi `  ( O `  A )
)  =  ( # `  { y  e.  ( 0..^ ( O `  A ) )  |  ( y  gcd  ( O `  A )
)  =  1 } ) )
3734, 36eqtr4d 2426 . 2  |-  ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  -> 
( # `  { y  e.  ( 0..^ ( O `  A ) )  |  ( y (.g `  G ) A )  e.  { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) } }
)  =  ( phi `  ( O `  A
) ) )
383, 18, 373eqtr3a 2447 1  |-  ( ( G  e.  Grp  /\  A  e.  X  /\  ( O `  A )  e.  NN )  -> 
( # `  { x  e.  ( K `  { A } )  |  ( O `  x )  =  ( O `  A ) } )  =  ( phi `  ( O `  A ) ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 184    /\ wa 367    /\ w3a 971    = wceq 1399    e. wcel 1826   {crab 2736    C_ wss 3389   {csn 3944   class class class wbr 4367    |-> cmpt 4425   `'ccnv 4912   "cima 4916   -1-1->wf1 5493   -1-1-onto->wf1o 5495   ` cfv 5496  (class class class)co 6196    ~~ cen 7432   0cc0 9403   1c1 9404   NNcn 10452   ZZcz 10781  ..^cfzo 11717   #chash 12307    gcd cgcd 14146   phicphi 14296   Basecbs 14634  mrClscmrc 14990   Grpcgrp 16170  .gcmg 16173  SubGrpcsubg 16312   odcod 16666
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1626  ax-4 1639  ax-5 1712  ax-6 1755  ax-7 1798  ax-8 1828  ax-9 1830  ax-10 1845  ax-11 1850  ax-12 1862  ax-13 2006  ax-ext 2360  ax-rep 4478  ax-sep 4488  ax-nul 4496  ax-pow 4543  ax-pr 4601  ax-un 6491  ax-inf2 7972  ax-cnex 9459  ax-resscn 9460  ax-1cn 9461  ax-icn 9462  ax-addcl 9463  ax-addrcl 9464  ax-mulcl 9465  ax-mulrcl 9466  ax-mulcom 9467  ax-addass 9468  ax-mulass 9469  ax-distr 9470  ax-i2m1 9471  ax-1ne0 9472  ax-1rid 9473  ax-rnegex 9474  ax-rrecex 9475  ax-cnre 9476  ax-pre-lttri 9477  ax-pre-lttrn 9478  ax-pre-ltadd 9479  ax-pre-mulgt0 9480  ax-pre-sup 9481
This theorem depends on definitions:  df-bi 185  df-or 368  df-an 369  df-3or 972  df-3an 973  df-tru 1402  df-ex 1621  df-nf 1625  df-sb 1748  df-eu 2222  df-mo 2223  df-clab 2368  df-cleq 2374  df-clel 2377  df-nfc 2532  df-ne 2579  df-nel 2580  df-ral 2737  df-rex 2738  df-reu 2739  df-rmo 2740  df-rab 2741  df-v 3036  df-sbc 3253  df-csb 3349  df-dif 3392  df-un 3394  df-in 3396  df-ss 3403  df-pss 3405  df-nul 3712  df-if 3858  df-pw 3929  df-sn 3945  df-pr 3947  df-tp 3949  df-op 3951  df-uni 4164  df-int 4200  df-iun 4245  df-iin 4246  df-br 4368  df-opab 4426  df-mpt 4427  df-tr 4461  df-eprel 4705  df-id 4709  df-po 4714  df-so 4715  df-fr 4752  df-we 4754  df-ord 4795  df-on 4796  df-lim 4797  df-suc 4798  df-xp 4919  df-rel 4920  df-cnv 4921  df-co 4922  df-dm 4923  df-rn 4924  df-res 4925  df-ima 4926  df-iota 5460  df-fun 5498  df-fn 5499  df-f 5500  df-f1 5501  df-fo 5502  df-f1o 5503  df-fv 5504  df-riota 6158  df-ov 6199  df-oprab 6200  df-mpt2 6201  df-om 6600  df-1st 6699  df-2nd 6700  df-recs 6960  df-rdg 6994  df-1o 7048  df-oadd 7052  df-er 7229  df-en 7436  df-dom 7437  df-sdom 7438  df-fin 7439  df-sup 7816  df-card 8233  df-pnf 9541  df-mnf 9542  df-xr 9543  df-ltxr 9544  df-le 9545  df-sub 9720  df-neg 9721  df-div 10124  df-nn 10453  df-2 10511  df-3 10512  df-n0 10713  df-z 10782  df-uz 11002  df-rp 11140  df-fz 11594  df-fzo 11718  df-fl 11828  df-mod 11897  df-seq 12011  df-exp 12070  df-hash 12308  df-cj 12934  df-re 12935  df-im 12936  df-sqrt 13070  df-abs 13071  df-dvds 13989  df-gcd 14147  df-phi 14298  df-ndx 14637  df-slot 14638  df-base 14639  df-sets 14640  df-ress 14641  df-plusg 14715  df-0g 14849  df-mre 14993  df-mrc 14994  df-acs 14996  df-mgm 15989  df-sgrp 16028  df-mnd 16038  df-submnd 16084  df-grp 16174  df-minusg 16175  df-sbg 16176  df-mulg 16177  df-subg 16315  df-od 16670
This theorem is referenced by:  proot1hash  31328
  Copyright terms: Public domain W3C validator