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

Theorem ablfacrplem 15302
Description: Lemma for ablfacrp2 15304. (Contributed by Mario Carneiro, 19-Apr-2016.)
Hypotheses
Ref Expression
ablfacrp.b  |-  B  =  ( Base `  G
)
ablfacrp.o  |-  O  =  ( od `  G
)
ablfacrp.k  |-  K  =  { x  e.  B  |  ( O `  x )  ||  M }
ablfacrp.l  |-  L  =  { x  e.  B  |  ( O `  x )  ||  N }
ablfacrp.g  |-  ( ph  ->  G  e.  Abel )
ablfacrp.m  |-  ( ph  ->  M  e.  NN )
ablfacrp.n  |-  ( ph  ->  N  e.  NN )
ablfacrp.1  |-  ( ph  ->  ( M  gcd  N
)  =  1 )
ablfacrp.2  |-  ( ph  ->  ( # `  B
)  =  ( M  x.  N ) )
Assertion
Ref Expression
ablfacrplem  |-  ( ph  ->  ( ( # `  K
)  gcd  N )  =  1 )
Distinct variable groups:    x, B    x, G    x, O    x, M    x, N    ph, x
Allowed substitution hints:    K( x)    L( x)

Proof of Theorem ablfacrplem
Dummy variables  g  p are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 nprmdvds1 12792 . . . . . . 7  |-  ( p  e.  Prime  ->  -.  p  ||  1 )
21adantl 452 . . . . . 6  |-  ( (
ph  /\  p  e.  Prime )  ->  -.  p  ||  1 )
3 ablfacrp.1 . . . . . . . 8  |-  ( ph  ->  ( M  gcd  N
)  =  1 )
43adantr 451 . . . . . . 7  |-  ( (
ph  /\  p  e.  Prime )  ->  ( M  gcd  N )  =  1 )
54breq2d 4037 . . . . . 6  |-  ( (
ph  /\  p  e.  Prime )  ->  ( p  ||  ( M  gcd  N
)  <->  p  ||  1 ) )
62, 5mtbird 292 . . . . 5  |-  ( (
ph  /\  p  e.  Prime )  ->  -.  p  ||  ( M  gcd  N
) )
7 ablfacrp.k . . . . . . . . . . . . . 14  |-  K  =  { x  e.  B  |  ( O `  x )  ||  M }
8 ablfacrp.g . . . . . . . . . . . . . . 15  |-  ( ph  ->  G  e.  Abel )
9 ablfacrp.m . . . . . . . . . . . . . . . 16  |-  ( ph  ->  M  e.  NN )
109nnzd 10118 . . . . . . . . . . . . . . 15  |-  ( ph  ->  M  e.  ZZ )
11 ablfacrp.o . . . . . . . . . . . . . . . 16  |-  O  =  ( od `  G
)
12 ablfacrp.b . . . . . . . . . . . . . . . 16  |-  B  =  ( Base `  G
)
1311, 12oddvdssubg 15149 . . . . . . . . . . . . . . 15  |-  ( ( G  e.  Abel  /\  M  e.  ZZ )  ->  { x  e.  B  |  ( O `  x )  ||  M }  e.  (SubGrp `  G ) )
148, 10, 13syl2anc 642 . . . . . . . . . . . . . 14  |-  ( ph  ->  { x  e.  B  |  ( O `  x )  ||  M }  e.  (SubGrp `  G
) )
157, 14syl5eqel 2369 . . . . . . . . . . . . 13  |-  ( ph  ->  K  e.  (SubGrp `  G ) )
1615ad2antrr 706 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  K  e.  (SubGrp `  G )
)
17 eqid 2285 . . . . . . . . . . . . 13  |-  ( Gs  K )  =  ( Gs  K )
1817subggrp 14626 . . . . . . . . . . . 12  |-  ( K  e.  (SubGrp `  G
)  ->  ( Gs  K
)  e.  Grp )
1916, 18syl 15 . . . . . . . . . . 11  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  ( Gs  K )  e.  Grp )
2017subgbas 14627 . . . . . . . . . . . . 13  |-  ( K  e.  (SubGrp `  G
)  ->  K  =  ( Base `  ( Gs  K
) ) )
2116, 20syl 15 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  K  =  ( Base `  ( Gs  K ) ) )
22 ablfacrp.2 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( # `  B
)  =  ( M  x.  N ) )
239nnnn0d 10020 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  M  e.  NN0 )
24 ablfacrp.n . . . . . . . . . . . . . . . . . 18  |-  ( ph  ->  N  e.  NN )
2524nnnn0d 10020 . . . . . . . . . . . . . . . . 17  |-  ( ph  ->  N  e.  NN0 )
2623, 25nn0mulcld 10025 . . . . . . . . . . . . . . . 16  |-  ( ph  ->  ( M  x.  N
)  e.  NN0 )
2722, 26eqeltrd 2359 . . . . . . . . . . . . . . 15  |-  ( ph  ->  ( # `  B
)  e.  NN0 )
28 fvex 5541 . . . . . . . . . . . . . . . . 17  |-  ( Base `  G )  e.  _V
2912, 28eqeltri 2355 . . . . . . . . . . . . . . . 16  |-  B  e. 
_V
30 hashclb 11354 . . . . . . . . . . . . . . . 16  |-  ( B  e.  _V  ->  ( B  e.  Fin  <->  ( # `  B
)  e.  NN0 )
)
3129, 30ax-mp 8 . . . . . . . . . . . . . . 15  |-  ( B  e.  Fin  <->  ( # `  B
)  e.  NN0 )
3227, 31sylibr 203 . . . . . . . . . . . . . 14  |-  ( ph  ->  B  e.  Fin )
33 ssrab2 3260 . . . . . . . . . . . . . . 15  |-  { x  e.  B  |  ( O `  x )  ||  M }  C_  B
347, 33eqsstri 3210 . . . . . . . . . . . . . 14  |-  K  C_  B
35 ssfi 7085 . . . . . . . . . . . . . 14  |-  ( ( B  e.  Fin  /\  K  C_  B )  ->  K  e.  Fin )
3632, 34, 35sylancl 643 . . . . . . . . . . . . 13  |-  ( ph  ->  K  e.  Fin )
3736ad2antrr 706 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  K  e.  Fin )
3821, 37eqeltrrd 2360 . . . . . . . . . . 11  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  ( Base `  ( Gs  K ) )  e.  Fin )
39 simplr 731 . . . . . . . . . . 11  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  p  e.  Prime )
40 simpr 447 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  p  ||  ( # `  K
) )
4121fveq2d 5531 . . . . . . . . . . . 12  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  ( # `
 K )  =  ( # `  ( Base `  ( Gs  K ) ) ) )
4240, 41breqtrd 4049 . . . . . . . . . . 11  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  p  ||  ( # `  ( Base `  ( Gs  K ) ) ) )
43 eqid 2285 . . . . . . . . . . . 12  |-  ( Base `  ( Gs  K ) )  =  ( Base `  ( Gs  K ) )
44 eqid 2285 . . . . . . . . . . . 12  |-  ( od
`  ( Gs  K ) )  =  ( od
`  ( Gs  K ) )
4543, 44odcau 14917 . . . . . . . . . . 11  |-  ( ( ( ( Gs  K )  e.  Grp  /\  ( Base `  ( Gs  K ) )  e.  Fin  /\  p  e.  Prime )  /\  p  ||  ( # `  ( Base `  ( Gs  K ) ) ) )  ->  E. g  e.  ( Base `  ( Gs  K ) ) ( ( od
`  ( Gs  K ) ) `  g )  =  p )
4619, 38, 39, 42, 45syl31anc 1185 . . . . . . . . . 10  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  E. g  e.  ( Base `  ( Gs  K ) ) ( ( od `  ( Gs  K ) ) `  g )  =  p )
4721rexeqdv 2745 . . . . . . . . . 10  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  ( E. g  e.  K  ( ( od `  ( Gs  K ) ) `  g )  =  p  <->  E. g  e.  ( Base `  ( Gs  K ) ) ( ( od
`  ( Gs  K ) ) `  g )  =  p ) )
4846, 47mpbird 223 . . . . . . . . 9  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  E. g  e.  K  ( ( od `  ( Gs  K ) ) `  g )  =  p )
4917, 11, 44subgod 14883 . . . . . . . . . . . . 13  |-  ( ( K  e.  (SubGrp `  G )  /\  g  e.  K )  ->  ( O `  g )  =  ( ( od
`  ( Gs  K ) ) `  g ) )
5016, 49sylan 457 . . . . . . . . . . . 12  |-  ( ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  /\  g  e.  K )  ->  ( O `  g )  =  ( ( od
`  ( Gs  K ) ) `  g ) )
51 fveq2 5527 . . . . . . . . . . . . . . . 16  |-  ( x  =  g  ->  ( O `  x )  =  ( O `  g ) )
5251breq1d 4035 . . . . . . . . . . . . . . 15  |-  ( x  =  g  ->  (
( O `  x
)  ||  M  <->  ( O `  g )  ||  M
) )
5352, 7elrab2 2927 . . . . . . . . . . . . . 14  |-  ( g  e.  K  <->  ( g  e.  B  /\  ( O `  g )  ||  M ) )
5453simprbi 450 . . . . . . . . . . . . 13  |-  ( g  e.  K  ->  ( O `  g )  ||  M )
5554adantl 452 . . . . . . . . . . . 12  |-  ( ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  /\  g  e.  K )  ->  ( O `  g )  ||  M )
5650, 55eqbrtrrd 4047 . . . . . . . . . . 11  |-  ( ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  /\  g  e.  K )  ->  (
( od `  ( Gs  K ) ) `  g )  ||  M
)
57 breq1 4028 . . . . . . . . . . 11  |-  ( ( ( od `  ( Gs  K ) ) `  g )  =  p  ->  ( ( ( od `  ( Gs  K ) ) `  g
)  ||  M  <->  p  ||  M
) )
5856, 57syl5ibcom 211 . . . . . . . . . 10  |-  ( ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  /\  g  e.  K )  ->  (
( ( od `  ( Gs  K ) ) `  g )  =  p  ->  p  ||  M
) )
5958rexlimdva 2669 . . . . . . . . 9  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  ( E. g  e.  K  ( ( od `  ( Gs  K ) ) `  g )  =  p  ->  p  ||  M
) )
6048, 59mpd 14 . . . . . . . 8  |-  ( ( ( ph  /\  p  e.  Prime )  /\  p  ||  ( # `  K
) )  ->  p  ||  M )
6160ex 423 . . . . . . 7  |-  ( (
ph  /\  p  e.  Prime )  ->  ( p  ||  ( # `  K
)  ->  p  ||  M
) )
6261anim1d 547 . . . . . 6  |-  ( (
ph  /\  p  e.  Prime )  ->  ( (
p  ||  ( # `  K
)  /\  p  ||  N
)  ->  ( p  ||  M  /\  p  ||  N ) ) )
63 prmz 12764 . . . . . . . 8  |-  ( p  e.  Prime  ->  p  e.  ZZ )
6463adantl 452 . . . . . . 7  |-  ( (
ph  /\  p  e.  Prime )  ->  p  e.  ZZ )
65 hashcl 11352 . . . . . . . . . 10  |-  ( K  e.  Fin  ->  ( # `
 K )  e. 
NN0 )
6636, 65syl 15 . . . . . . . . 9  |-  ( ph  ->  ( # `  K
)  e.  NN0 )
6766nn0zd 10117 . . . . . . . 8  |-  ( ph  ->  ( # `  K
)  e.  ZZ )
6867adantr 451 . . . . . . 7  |-  ( (
ph  /\  p  e.  Prime )  ->  ( # `  K
)  e.  ZZ )
6924nnzd 10118 . . . . . . . 8  |-  ( ph  ->  N  e.  ZZ )
7069adantr 451 . . . . . . 7  |-  ( (
ph  /\  p  e.  Prime )  ->  N  e.  ZZ )
71 dvdsgcdb 12725 . . . . . . 7  |-  ( ( p  e.  ZZ  /\  ( # `  K )  e.  ZZ  /\  N  e.  ZZ )  ->  (
( p  ||  ( # `
 K )  /\  p  ||  N )  <->  p  ||  (
( # `  K )  gcd  N ) ) )
7264, 68, 70, 71syl3anc 1182 . . . . . 6  |-  ( (
ph  /\  p  e.  Prime )  ->  ( (
p  ||  ( # `  K
)  /\  p  ||  N
)  <->  p  ||  ( (
# `  K )  gcd  N ) ) )
7310adantr 451 . . . . . . 7  |-  ( (
ph  /\  p  e.  Prime )  ->  M  e.  ZZ )
74 dvdsgcdb 12725 . . . . . . 7  |-  ( ( p  e.  ZZ  /\  M  e.  ZZ  /\  N  e.  ZZ )  ->  (
( p  ||  M  /\  p  ||  N )  <-> 
p  ||  ( M  gcd  N ) ) )
7564, 73, 70, 74syl3anc 1182 . . . . . 6  |-  ( (
ph  /\  p  e.  Prime )  ->  ( (
p  ||  M  /\  p  ||  N )  <->  p  ||  ( M  gcd  N ) ) )
7662, 72, 753imtr3d 258 . . . . 5  |-  ( (
ph  /\  p  e.  Prime )  ->  ( p  ||  ( ( # `  K
)  gcd  N )  ->  p  ||  ( M  gcd  N ) ) )
776, 76mtod 168 . . . 4  |-  ( (
ph  /\  p  e.  Prime )  ->  -.  p  ||  ( ( # `  K
)  gcd  N )
)
7877nrexdv 2648 . . 3  |-  ( ph  ->  -.  E. p  e. 
Prime  p  ||  ( (
# `  K )  gcd  N ) )
79 exprmfct 12791 . . 3  |-  ( ( ( # `  K
)  gcd  N )  e.  ( ZZ>= `  2 )  ->  E. p  e.  Prime  p 
||  ( ( # `  K )  gcd  N
) )
8078, 79nsyl 113 . 2  |-  ( ph  ->  -.  ( ( # `  K )  gcd  N
)  e.  ( ZZ>= ` 
2 ) )
8124nnne0d 9792 . . . . . 6  |-  ( ph  ->  N  =/=  0 )
82 simpr 447 . . . . . . 7  |-  ( ( ( # `  K
)  =  0  /\  N  =  0 )  ->  N  =  0 )
8382necon3ai 2488 . . . . . 6  |-  ( N  =/=  0  ->  -.  ( ( # `  K
)  =  0  /\  N  =  0 ) )
8481, 83syl 15 . . . . 5  |-  ( ph  ->  -.  ( ( # `  K )  =  0  /\  N  =  0 ) )
85 gcdn0cl 12695 . . . . 5  |-  ( ( ( ( # `  K
)  e.  ZZ  /\  N  e.  ZZ )  /\  -.  ( ( # `  K )  =  0  /\  N  =  0 ) )  ->  (
( # `  K )  gcd  N )  e.  NN )
8667, 69, 84, 85syl21anc 1181 . . . 4  |-  ( ph  ->  ( ( # `  K
)  gcd  N )  e.  NN )
87 elnn1uz2 10296 . . . 4  |-  ( ( ( # `  K
)  gcd  N )  e.  NN  <->  ( ( (
# `  K )  gcd  N )  =  1  \/  ( ( # `  K )  gcd  N
)  e.  ( ZZ>= ` 
2 ) ) )
8886, 87sylib 188 . . 3  |-  ( ph  ->  ( ( ( # `  K )  gcd  N
)  =  1  \/  ( ( # `  K
)  gcd  N )  e.  ( ZZ>= `  2 )
) )
8988ord 366 . 2  |-  ( ph  ->  ( -.  ( (
# `  K )  gcd  N )  =  1  ->  ( ( # `  K )  gcd  N
)  e.  ( ZZ>= ` 
2 ) ) )
9080, 89mt3d 117 1  |-  ( ph  ->  ( ( # `  K
)  gcd  N )  =  1 )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    <-> wb 176    \/ wo 357    /\ wa 358    = wceq 1625    e. wcel 1686    =/= wne 2448   E.wrex 2546   {crab 2549   _Vcvv 2790    C_ wss 3154   class class class wbr 4025   ` cfv 5257  (class class class)co 5860   Fincfn 6865   0cc0 8739   1c1 8740    x. cmul 8744   NNcn 9748   2c2 9797   NN0cn0 9967   ZZcz 10026   ZZ>=cuz 10232   #chash 11339    || cdivides 12533    gcd cgcd 12687   Primecprime 12760   Basecbs 13150   ↾s cress 13151   Grpcgrp 14364  SubGrpcsubg 14617   odcod 14842   Abelcabel 15092
This theorem is referenced by:  ablfacrp2  15304
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1535  ax-5 1546  ax-17 1605  ax-9 1637  ax-8 1645  ax-13 1688  ax-14 1690  ax-6 1705  ax-7 1710  ax-11 1717  ax-12 1868  ax-ext 2266  ax-rep 4133  ax-sep 4143  ax-nul 4151  ax-pow 4190  ax-pr 4216  ax-un 4514  ax-inf2 7344  ax-cnex 8795  ax-resscn 8796  ax-1cn 8797  ax-icn 8798  ax-addcl 8799  ax-addrcl 8800  ax-mulcl 8801  ax-mulrcl 8802  ax-mulcom 8803  ax-addass 8804  ax-mulass 8805  ax-distr 8806  ax-i2m1 8807  ax-1ne0 8808  ax-1rid 8809  ax-rnegex 8810  ax-rrecex 8811  ax-cnre 8812  ax-pre-lttri 8813  ax-pre-lttrn 8814  ax-pre-ltadd 8815  ax-pre-mulgt0 8816  ax-pre-sup 8817
This theorem depends on definitions:  df-bi 177  df-or 359  df-an 360  df-3or 935  df-3an 936  df-tru 1310  df-ex 1531  df-nf 1534  df-sb 1632  df-eu 2149  df-mo 2150  df-clab 2272  df-cleq 2278  df-clel 2281  df-nfc 2410  df-ne 2450  df-nel 2451  df-ral 2550  df-rex 2551  df-reu 2552  df-rmo 2553  df-rab 2554  df-v 2792  df-sbc 2994  df-csb 3084  df-dif 3157  df-un 3159  df-in 3161  df-ss 3168  df-pss 3170  df-nul 3458  df-if 3568  df-pw 3629  df-sn 3648  df-pr 3649  df-tp 3650  df-op 3651  df-uni 3830  df-int 3865  df-iun 3909  df-disj 3996  df-br 4026  df-opab 4080  df-mpt 4081  df-tr 4116  df-eprel 4307  df-id 4311  df-po 4316  df-so 4317  df-fr 4354  df-se 4355  df-we 4356  df-ord 4397  df-on 4398  df-lim 4399  df-suc 4400  df-om 4659  df-xp 4697  df-rel 4698  df-cnv 4699  df-co 4700  df-dm 4701  df-rn 4702  df-res 4703  df-ima 4704  df-iota 5221  df-fun 5259  df-fn 5260  df-f 5261  df-f1 5262  df-fo 5263  df-f1o 5264  df-fv 5265  df-isom 5266  df-ov 5863  df-oprab 5864  df-mpt2 5865  df-1st 6124  df-2nd 6125  df-riota 6306  df-recs 6390  df-rdg 6425  df-1o 6481  df-2o 6482  df-oadd 6485  df-omul 6486  df-er 6662  df-ec 6664  df-qs 6668  df-map 6776  df-en 6866  df-dom 6867  df-sdom 6868  df-fin 6869  df-sup 7196  df-oi 7227  df-card 7574  df-acn 7577  df-cda 7796  df-pnf 8871  df-mnf 8872  df-xr 8873  df-ltxr 8874  df-le 8875  df-sub 9041  df-neg 9042  df-div 9426  df-nn 9749  df-2 9806  df-3 9807  df-n0 9968  df-z 10027  df-uz 10233  df-q 10319  df-rp 10357  df-fz 10785  df-fzo 10873  df-fl 10927  df-mod 10976  df-seq 11049  df-exp 11107  df-fac 11291  df-bc 11318  df-hash 11340  df-cj 11586  df-re 11587  df-im 11588  df-sqr 11722  df-abs 11723  df-clim 11964  df-sum 12161  df-dvds 12534  df-gcd 12688  df-prm 12761  df-pc 12892  df-ndx 13153  df-slot 13154  df-base 13155  df-sets 13156  df-ress 13157  df-plusg 13223  df-0g 13406  df-mnd 14369  df-submnd 14418  df-grp 14491  df-minusg 14492  df-sbg 14493  df-mulg 14494  df-subg 14620  df-eqg 14622  df-ga 14746  df-od 14846  df-cmn 15093  df-abl 15094
  Copyright terms: Public domain W3C validator