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

Theorem ablfac1b 15616
Description: Any abelian group is the direct product of factors of prime power order (with the exact order further matching the prime factorization of the group order). (Contributed by Mario Carneiro, 21-Apr-2016.)
Hypotheses
Ref Expression
ablfac1.b  |-  B  =  ( Base `  G
)
ablfac1.o  |-  O  =  ( od `  G
)
ablfac1.s  |-  S  =  ( p  e.  A  |->  { x  e.  B  |  ( O `  x )  ||  (
p ^ ( p 
pCnt  ( # `  B
) ) ) } )
ablfac1.g  |-  ( ph  ->  G  e.  Abel )
ablfac1.f  |-  ( ph  ->  B  e.  Fin )
ablfac1.1  |-  ( ph  ->  A  C_  Prime )
Assertion
Ref Expression
ablfac1b  |-  ( ph  ->  G dom DProd  S )
Distinct variable groups:    x, p, B    ph, p, x    A, p, x    O, p, x    G, p, x
Allowed substitution hints:    S( x, p)

Proof of Theorem ablfac1b
Dummy variables  a 
b are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2435 . 2  |-  (Cntz `  G )  =  (Cntz `  G )
2 eqid 2435 . 2  |-  ( 0g
`  G )  =  ( 0g `  G
)
3 eqid 2435 . 2  |-  (mrCls `  (SubGrp `  G ) )  =  (mrCls `  (SubGrp `  G ) )
4 ablfac1.g . . 3  |-  ( ph  ->  G  e.  Abel )
5 ablgrp 15405 . . 3  |-  ( G  e.  Abel  ->  G  e. 
Grp )
64, 5syl 16 . 2  |-  ( ph  ->  G  e.  Grp )
7 ablfac1.1 . . 3  |-  ( ph  ->  A  C_  Prime )
8 nnex 9995 . . . . 5  |-  NN  e.  _V
9 prmnn 13070 . . . . . 6  |-  ( p  e.  Prime  ->  p  e.  NN )
109ssriv 3344 . . . . 5  |-  Prime  C_  NN
118, 10ssexi 4340 . . . 4  |-  Prime  e.  _V
1211ssex 4339 . . 3  |-  ( A 
C_  Prime  ->  A  e.  _V )
137, 12syl 16 . 2  |-  ( ph  ->  A  e.  _V )
144adantr 452 . . . 4  |-  ( (
ph  /\  p  e.  A )  ->  G  e.  Abel )
157sselda 3340 . . . . . . 7  |-  ( (
ph  /\  p  e.  A )  ->  p  e.  Prime )
1615, 9syl 16 . . . . . 6  |-  ( (
ph  /\  p  e.  A )  ->  p  e.  NN )
17 ablfac1.b . . . . . . . . . . 11  |-  B  =  ( Base `  G
)
1817grpbn0 14822 . . . . . . . . . 10  |-  ( G  e.  Grp  ->  B  =/=  (/) )
196, 18syl 16 . . . . . . . . 9  |-  ( ph  ->  B  =/=  (/) )
20 ablfac1.f . . . . . . . . . 10  |-  ( ph  ->  B  e.  Fin )
21 hashnncl 11633 . . . . . . . . . 10  |-  ( B  e.  Fin  ->  (
( # `  B )  e.  NN  <->  B  =/=  (/) ) )
2220, 21syl 16 . . . . . . . . 9  |-  ( ph  ->  ( ( # `  B
)  e.  NN  <->  B  =/=  (/) ) )
2319, 22mpbird 224 . . . . . . . 8  |-  ( ph  ->  ( # `  B
)  e.  NN )
2423adantr 452 . . . . . . 7  |-  ( (
ph  /\  p  e.  A )  ->  ( # `
 B )  e.  NN )
2515, 24pccld 13212 . . . . . 6  |-  ( (
ph  /\  p  e.  A )  ->  (
p  pCnt  ( # `  B
) )  e.  NN0 )
2616, 25nnexpcld 11532 . . . . 5  |-  ( (
ph  /\  p  e.  A )  ->  (
p ^ ( p 
pCnt  ( # `  B
) ) )  e.  NN )
2726nnzd 10363 . . . 4  |-  ( (
ph  /\  p  e.  A )  ->  (
p ^ ( p 
pCnt  ( # `  B
) ) )  e.  ZZ )
28 ablfac1.o . . . . 5  |-  O  =  ( od `  G
)
2928, 17oddvdssubg 15458 . . . 4  |-  ( ( G  e.  Abel  /\  (
p ^ ( p 
pCnt  ( # `  B
) ) )  e.  ZZ )  ->  { x  e.  B  |  ( O `  x )  ||  ( p ^ (
p  pCnt  ( # `  B
) ) ) }  e.  (SubGrp `  G
) )
3014, 27, 29syl2anc 643 . . 3  |-  ( (
ph  /\  p  e.  A )  ->  { x  e.  B  |  ( O `  x )  ||  ( p ^ (
p  pCnt  ( # `  B
) ) ) }  e.  (SubGrp `  G
) )
31 ablfac1.s . . 3  |-  S  =  ( p  e.  A  |->  { x  e.  B  |  ( O `  x )  ||  (
p ^ ( p 
pCnt  ( # `  B
) ) ) } )
3230, 31fmptd 5884 . 2  |-  ( ph  ->  S : A --> (SubGrp `  G ) )
334adantr 452 . . 3  |-  ( (
ph  /\  ( a  e.  A  /\  b  e.  A  /\  a  =/=  b ) )  ->  G  e.  Abel )
3432adantr 452 . . . 4  |-  ( (
ph  /\  ( a  e.  A  /\  b  e.  A  /\  a  =/=  b ) )  ->  S : A --> (SubGrp `  G ) )
35 simpr1 963 . . . 4  |-  ( (
ph  /\  ( a  e.  A  /\  b  e.  A  /\  a  =/=  b ) )  -> 
a  e.  A )
3634, 35ffvelrnd 5862 . . 3  |-  ( (
ph  /\  ( a  e.  A  /\  b  e.  A  /\  a  =/=  b ) )  -> 
( S `  a
)  e.  (SubGrp `  G ) )
37 simpr2 964 . . . 4  |-  ( (
ph  /\  ( a  e.  A  /\  b  e.  A  /\  a  =/=  b ) )  -> 
b  e.  A )
3834, 37ffvelrnd 5862 . . 3  |-  ( (
ph  /\  ( a  e.  A  /\  b  e.  A  /\  a  =/=  b ) )  -> 
( S `  b
)  e.  (SubGrp `  G ) )
391, 33, 36, 38ablcntzd 15460 . 2  |-  ( (
ph  /\  ( a  e.  A  /\  b  e.  A  /\  a  =/=  b ) )  -> 
( S `  a
)  C_  ( (Cntz `  G ) `  ( S `  b )
) )
40 id 20 . . . . . . . . . 10  |-  ( p  =  a  ->  p  =  a )
41 oveq1 6079 . . . . . . . . . 10  |-  ( p  =  a  ->  (
p  pCnt  ( # `  B
) )  =  ( a  pCnt  ( # `  B
) ) )
4240, 41oveq12d 6090 . . . . . . . . 9  |-  ( p  =  a  ->  (
p ^ ( p 
pCnt  ( # `  B
) ) )  =  ( a ^ (
a  pCnt  ( # `  B
) ) ) )
4342breq2d 4216 . . . . . . . 8  |-  ( p  =  a  ->  (
( O `  x
)  ||  ( p ^ ( p  pCnt  (
# `  B )
) )  <->  ( O `  x )  ||  (
a ^ ( a 
pCnt  ( # `  B
) ) ) ) )
4443rabbidv 2940 . . . . . . 7  |-  ( p  =  a  ->  { x  e.  B  |  ( O `  x )  ||  ( p ^ (
p  pCnt  ( # `  B
) ) ) }  =  { x  e.  B  |  ( O `
 x )  ||  ( a ^ (
a  pCnt  ( # `  B
) ) ) } )
45 fvex 5733 . . . . . . . . 9  |-  ( Base `  G )  e.  _V
4617, 45eqeltri 2505 . . . . . . . 8  |-  B  e. 
_V
4746rabex 4346 . . . . . . 7  |-  { x  e.  B  |  ( O `  x )  ||  ( p ^ (
p  pCnt  ( # `  B
) ) ) }  e.  _V
4844, 31, 47fvmpt3i 5800 . . . . . 6  |-  ( a  e.  A  ->  ( S `  a )  =  { x  e.  B  |  ( O `  x )  ||  (
a ^ ( a 
pCnt  ( # `  B
) ) ) } )
4948adantl 453 . . . . 5  |-  ( (
ph  /\  a  e.  A )  ->  ( S `  a )  =  { x  e.  B  |  ( O `  x )  ||  (
a ^ ( a 
pCnt  ( # `  B
) ) ) } )
50 eqimss 3392 . . . . 5  |-  ( ( S `  a )  =  { x  e.  B  |  ( O `
 x )  ||  ( a ^ (
a  pCnt  ( # `  B
) ) ) }  ->  ( S `  a )  C_  { x  e.  B  |  ( O `  x )  ||  ( a ^ (
a  pCnt  ( # `  B
) ) ) } )
5149, 50syl 16 . . . 4  |-  ( (
ph  /\  a  e.  A )  ->  ( S `  a )  C_ 
{ x  e.  B  |  ( O `  x )  ||  (
a ^ ( a 
pCnt  ( # `  B
) ) ) } )
524adantr 452 . . . . . . 7  |-  ( (
ph  /\  a  e.  A )  ->  G  e.  Abel )
5352, 5syl 16 . . . . . 6  |-  ( (
ph  /\  a  e.  A )  ->  G  e.  Grp )
54 eqid 2435 . . . . . . 7  |-  ( Base `  G )  =  (
Base `  G )
5554subgacs 14963 . . . . . 6  |-  ( G  e.  Grp  ->  (SubGrp `  G )  e.  (ACS
`  ( Base `  G
) ) )
56 acsmre 13865 . . . . . 6  |-  ( (SubGrp `  G )  e.  (ACS
`  ( Base `  G
) )  ->  (SubGrp `  G )  e.  (Moore `  ( Base `  G
) ) )
5753, 55, 563syl 19 . . . . 5  |-  ( (
ph  /\  a  e.  A )  ->  (SubGrp `  G )  e.  (Moore `  ( Base `  G
) ) )
58 df-ima 4882 . . . . . . 7  |-  ( S
" ( A  \  { a } ) )  =  ran  ( S  |`  ( A  \  { a } ) )
597sselda 3340 . . . . . . . . . . . . . . . . 17  |-  ( (
ph  /\  a  e.  A )  ->  a  e.  Prime )
6059ad2antrr 707 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  a  e.  Prime )
6123ad3antrrr 711 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  ( # `
 B )  e.  NN )
62 pcdvds 13225 . . . . . . . . . . . . . . . 16  |-  ( ( a  e.  Prime  /\  ( # `
 B )  e.  NN )  ->  (
a ^ ( a 
pCnt  ( # `  B
) ) )  ||  ( # `  B ) )
6360, 61, 62syl2anc 643 . . . . . . . . . . . . . . 15  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
a ^ ( a 
pCnt  ( # `  B
) ) )  ||  ( # `  B ) )
647ad3antrrr 711 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  A  C_ 
Prime )
65 eldifi 3461 . . . . . . . . . . . . . . . . . 18  |-  ( p  e.  ( A  \  { a } )  ->  p  e.  A
)
6665ad2antlr 708 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  p  e.  A )
6764, 66sseldd 3341 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  p  e.  Prime )
68 pcdvds 13225 . . . . . . . . . . . . . . . 16  |-  ( ( p  e.  Prime  /\  ( # `
 B )  e.  NN )  ->  (
p ^ ( p 
pCnt  ( # `  B
) ) )  ||  ( # `  B ) )
6967, 61, 68syl2anc 643 . . . . . . . . . . . . . . 15  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
p ^ ( p 
pCnt  ( # `  B
) ) )  ||  ( # `  B ) )
70 eqid 2435 . . . . . . . . . . . . . . . . . . . . 21  |-  ( a ^ ( a  pCnt  (
# `  B )
) )  =  ( a ^ ( a 
pCnt  ( # `  B
) ) )
71 eqid 2435 . . . . . . . . . . . . . . . . . . . . 21  |-  ( (
# `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) )  =  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) )
7217, 28, 31, 4, 20, 7, 70, 71ablfac1lem 15614 . . . . . . . . . . . . . . . . . . . 20  |-  ( (
ph  /\  a  e.  A )  ->  (
( ( a ^
( a  pCnt  ( # `
 B ) ) )  e.  NN  /\  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) )  e.  NN )  /\  (
( a ^ (
a  pCnt  ( # `  B
) ) )  gcd  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) )  =  1  /\  ( # `
 B )  =  ( ( a ^
( a  pCnt  ( # `
 B ) ) )  x.  ( (
# `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) ) ) )
7372simp1d 969 . . . . . . . . . . . . . . . . . . 19  |-  ( (
ph  /\  a  e.  A )  ->  (
( a ^ (
a  pCnt  ( # `  B
) ) )  e.  NN  /\  ( (
# `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) )  e.  NN ) )
7473simpld 446 . . . . . . . . . . . . . . . . . 18  |-  ( (
ph  /\  a  e.  A )  ->  (
a ^ ( a 
pCnt  ( # `  B
) ) )  e.  NN )
7574ad2antrr 707 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
a ^ ( a 
pCnt  ( # `  B
) ) )  e.  NN )
7675nnzd 10363 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
a ^ ( a 
pCnt  ( # `  B
) ) )  e.  ZZ )
7767, 9syl 16 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  p  e.  NN )
7867, 61pccld 13212 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
p  pCnt  ( # `  B
) )  e.  NN0 )
7977, 78nnexpcld 11532 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
p ^ ( p 
pCnt  ( # `  B
) ) )  e.  NN )
8079nnzd 10363 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
p ^ ( p 
pCnt  ( # `  B
) ) )  e.  ZZ )
8161nnzd 10363 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  ( # `
 B )  e.  ZZ )
82 eldifsni 3920 . . . . . . . . . . . . . . . . . . . 20  |-  ( p  e.  ( A  \  { a } )  ->  p  =/=  a
)
8382ad2antlr 708 . . . . . . . . . . . . . . . . . . 19  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  p  =/=  a )
8483necomd 2681 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  a  =/=  p )
85 prmrp 13089 . . . . . . . . . . . . . . . . . . 19  |-  ( ( a  e.  Prime  /\  p  e.  Prime )  ->  (
( a  gcd  p
)  =  1  <->  a  =/=  p ) )
8660, 67, 85syl2anc 643 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
( a  gcd  p
)  =  1  <->  a  =/=  p ) )
8784, 86mpbird 224 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
a  gcd  p )  =  1 )
88 prmz 13071 . . . . . . . . . . . . . . . . . . 19  |-  ( a  e.  Prime  ->  a  e.  ZZ )
8960, 88syl 16 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  a  e.  ZZ )
90 prmz 13071 . . . . . . . . . . . . . . . . . . 19  |-  ( p  e.  Prime  ->  p  e.  ZZ )
9167, 90syl 16 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  p  e.  ZZ )
9260, 61pccld 13212 . . . . . . . . . . . . . . . . . 18  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
a  pCnt  ( # `  B
) )  e.  NN0 )
93 rpexp12i 13110 . . . . . . . . . . . . . . . . . 18  |-  ( ( a  e.  ZZ  /\  p  e.  ZZ  /\  (
( a  pCnt  ( # `
 B ) )  e.  NN0  /\  (
p  pCnt  ( # `  B
) )  e.  NN0 ) )  ->  (
( a  gcd  p
)  =  1  -> 
( ( a ^
( a  pCnt  ( # `
 B ) ) )  gcd  ( p ^ ( p  pCnt  (
# `  B )
) ) )  =  1 ) )
9489, 91, 92, 78, 93syl112anc 1188 . . . . . . . . . . . . . . . . 17  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
( a  gcd  p
)  =  1  -> 
( ( a ^
( a  pCnt  ( # `
 B ) ) )  gcd  ( p ^ ( p  pCnt  (
# `  B )
) ) )  =  1 ) )
9587, 94mpd 15 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
( a ^ (
a  pCnt  ( # `  B
) ) )  gcd  ( p ^ (
p  pCnt  ( # `  B
) ) ) )  =  1 )
96 coprmdvds2 13091 . . . . . . . . . . . . . . . 16  |-  ( ( ( ( a ^
( a  pCnt  ( # `
 B ) ) )  e.  ZZ  /\  ( p ^ (
p  pCnt  ( # `  B
) ) )  e.  ZZ  /\  ( # `  B )  e.  ZZ )  /\  ( ( a ^ ( a  pCnt  (
# `  B )
) )  gcd  (
p ^ ( p 
pCnt  ( # `  B
) ) ) )  =  1 )  -> 
( ( ( a ^ ( a  pCnt  (
# `  B )
) )  ||  ( # `
 B )  /\  ( p ^ (
p  pCnt  ( # `  B
) ) )  ||  ( # `  B ) )  ->  ( (
a ^ ( a 
pCnt  ( # `  B
) ) )  x.  ( p ^ (
p  pCnt  ( # `  B
) ) ) ) 
||  ( # `  B
) ) )
9776, 80, 81, 95, 96syl31anc 1187 . . . . . . . . . . . . . . 15  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
( ( a ^
( a  pCnt  ( # `
 B ) ) )  ||  ( # `  B )  /\  (
p ^ ( p 
pCnt  ( # `  B
) ) )  ||  ( # `  B ) )  ->  ( (
a ^ ( a 
pCnt  ( # `  B
) ) )  x.  ( p ^ (
p  pCnt  ( # `  B
) ) ) ) 
||  ( # `  B
) ) )
9863, 69, 97mp2and 661 . . . . . . . . . . . . . 14  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
( a ^ (
a  pCnt  ( # `  B
) ) )  x.  ( p ^ (
p  pCnt  ( # `  B
) ) ) ) 
||  ( # `  B
) )
9972simp3d 971 . . . . . . . . . . . . . . 15  |-  ( (
ph  /\  a  e.  A )  ->  ( # `
 B )  =  ( ( a ^
( a  pCnt  ( # `
 B ) ) )  x.  ( (
# `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) ) )
10099ad2antrr 707 . . . . . . . . . . . . . 14  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  ( # `
 B )  =  ( ( a ^
( a  pCnt  ( # `
 B ) ) )  x.  ( (
# `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) ) )
10198, 100breqtrd 4228 . . . . . . . . . . . . 13  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
( a ^ (
a  pCnt  ( # `  B
) ) )  x.  ( p ^ (
p  pCnt  ( # `  B
) ) ) ) 
||  ( ( a ^ ( a  pCnt  (
# `  B )
) )  x.  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) ) )
10273simprd 450 . . . . . . . . . . . . . . . 16  |-  ( (
ph  /\  a  e.  A )  ->  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) )  e.  NN )
103102ad2antrr 707 . . . . . . . . . . . . . . 15  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) )  e.  NN )
104103nnzd 10363 . . . . . . . . . . . . . 14  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) )  e.  ZZ )
10575nnne0d 10033 . . . . . . . . . . . . . 14  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
a ^ ( a 
pCnt  ( # `  B
) ) )  =/=  0 )
106 dvdscmulr 12866 . . . . . . . . . . . . . 14  |-  ( ( ( p ^ (
p  pCnt  ( # `  B
) ) )  e.  ZZ  /\  ( (
# `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) )  e.  ZZ  /\  ( ( a ^
( a  pCnt  ( # `
 B ) ) )  e.  ZZ  /\  ( a ^ (
a  pCnt  ( # `  B
) ) )  =/=  0 ) )  -> 
( ( ( a ^ ( a  pCnt  (
# `  B )
) )  x.  (
p ^ ( p 
pCnt  ( # `  B
) ) ) ) 
||  ( ( a ^ ( a  pCnt  (
# `  B )
) )  x.  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) )  <->  ( p ^ ( p  pCnt  (
# `  B )
) )  ||  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) ) )
10780, 104, 76, 105, 106syl112anc 1188 . . . . . . . . . . . . 13  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
( ( a ^
( a  pCnt  ( # `
 B ) ) )  x.  ( p ^ ( p  pCnt  (
# `  B )
) ) )  ||  ( ( a ^
( a  pCnt  ( # `
 B ) ) )  x.  ( (
# `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) )  <->  ( p ^ ( p  pCnt  (
# `  B )
) )  ||  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) ) )
108101, 107mpbid 202 . . . . . . . . . . . 12  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
p ^ ( p 
pCnt  ( # `  B
) ) )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) )
10917, 28odcl 15162 . . . . . . . . . . . . . . 15  |-  ( x  e.  B  ->  ( O `  x )  e.  NN0 )
110109adantl 453 . . . . . . . . . . . . . 14  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  ( O `  x )  e.  NN0 )
111110nn0zd 10362 . . . . . . . . . . . . 13  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  ( O `  x )  e.  ZZ )
112 dvdstr 12871 . . . . . . . . . . . . 13  |-  ( ( ( O `  x
)  e.  ZZ  /\  ( p ^ (
p  pCnt  ( # `  B
) ) )  e.  ZZ  /\  ( (
# `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) )  e.  ZZ )  ->  ( ( ( O `  x ) 
||  ( p ^
( p  pCnt  ( # `
 B ) ) )  /\  ( p ^ ( p  pCnt  (
# `  B )
) )  ||  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) )  -> 
( O `  x
)  ||  ( ( # `
 B )  / 
( a ^ (
a  pCnt  ( # `  B
) ) ) ) ) )
113111, 80, 104, 112syl3anc 1184 . . . . . . . . . . . 12  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
( ( O `  x )  ||  (
p ^ ( p 
pCnt  ( # `  B
) ) )  /\  ( p ^ (
p  pCnt  ( # `  B
) ) )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) )  ->  ( O `  x )  ||  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) ) )
114108, 113mpan2d 656 . . . . . . . . . . 11  |-  ( ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  { a } ) )  /\  x  e.  B )  ->  (
( O `  x
)  ||  ( p ^ ( p  pCnt  (
# `  B )
) )  ->  ( O `  x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) ) )
115114ss2rabdv 3416 . . . . . . . . . 10  |-  ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  {
a } ) )  ->  { x  e.  B  |  ( O `
 x )  ||  ( p ^ (
p  pCnt  ( # `  B
) ) ) } 
C_  { x  e.  B  |  ( O `
 x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } )
11647elpw 3797 . . . . . . . . . 10  |-  ( { x  e.  B  | 
( O `  x
)  ||  ( p ^ ( p  pCnt  (
# `  B )
) ) }  e.  ~P { x  e.  B  |  ( O `  x )  ||  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) }  <->  { x  e.  B  |  ( O `  x )  ||  ( p ^ (
p  pCnt  ( # `  B
) ) ) } 
C_  { x  e.  B  |  ( O `
 x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } )
117115, 116sylibr 204 . . . . . . . . 9  |-  ( ( ( ph  /\  a  e.  A )  /\  p  e.  ( A  \  {
a } ) )  ->  { x  e.  B  |  ( O `
 x )  ||  ( p ^ (
p  pCnt  ( # `  B
) ) ) }  e.  ~P { x  e.  B  |  ( O `  x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } )
11831reseq1i 5133 . . . . . . . . . 10  |-  ( S  |`  ( A  \  {
a } ) )  =  ( ( p  e.  A  |->  { x  e.  B  |  ( O `  x )  ||  ( p ^ (
p  pCnt  ( # `  B
) ) ) } )  |`  ( A  \  { a } ) )
119 difss 3466 . . . . . . . . . . 11  |-  ( A 
\  { a } )  C_  A
120 resmpt 5182 . . . . . . . . . . 11  |-  ( ( A  \  { a } )  C_  A  ->  ( ( p  e.  A  |->  { x  e.  B  |  ( O `
 x )  ||  ( p ^ (
p  pCnt  ( # `  B
) ) ) } )  |`  ( A  \  { a } ) )  =  ( p  e.  ( A  \  { a } ) 
|->  { x  e.  B  |  ( O `  x )  ||  (
p ^ ( p 
pCnt  ( # `  B
) ) ) } ) )
121119, 120ax-mp 8 . . . . . . . . . 10  |-  ( ( p  e.  A  |->  { x  e.  B  | 
( O `  x
)  ||  ( p ^ ( p  pCnt  (
# `  B )
) ) } )  |`  ( A  \  {
a } ) )  =  ( p  e.  ( A  \  {
a } )  |->  { x  e.  B  | 
( O `  x
)  ||  ( p ^ ( p  pCnt  (
# `  B )
) ) } )
122118, 121eqtri 2455 . . . . . . . . 9  |-  ( S  |`  ( A  \  {
a } ) )  =  ( p  e.  ( A  \  {
a } )  |->  { x  e.  B  | 
( O `  x
)  ||  ( p ^ ( p  pCnt  (
# `  B )
) ) } )
123117, 122fmptd 5884 . . . . . . . 8  |-  ( (
ph  /\  a  e.  A )  ->  ( S  |`  ( A  \  { a } ) ) : ( A 
\  { a } ) --> ~P { x  e.  B  |  ( O `  x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } )
124 frn 5588 . . . . . . . 8  |-  ( ( S  |`  ( A  \  { a } ) ) : ( A 
\  { a } ) --> ~P { x  e.  B  |  ( O `  x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) }  ->  ran  ( S  |`  ( A  \  {
a } ) ) 
C_  ~P { x  e.  B  |  ( O `
 x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } )
125123, 124syl 16 . . . . . . 7  |-  ( (
ph  /\  a  e.  A )  ->  ran  ( S  |`  ( A 
\  { a } ) )  C_  ~P { x  e.  B  |  ( O `  x )  ||  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) } )
12658, 125syl5eqss 3384 . . . . . 6  |-  ( (
ph  /\  a  e.  A )  ->  ( S " ( A  \  { a } ) )  C_  ~P { x  e.  B  |  ( O `  x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } )
127 sspwuni 4168 . . . . . 6  |-  ( ( S " ( A 
\  { a } ) )  C_  ~P { x  e.  B  |  ( O `  x )  ||  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) ) }  <->  U. ( S " ( A  \  { a } ) )  C_  { x  e.  B  |  ( O `  x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } )
128126, 127sylib 189 . . . . 5  |-  ( (
ph  /\  a  e.  A )  ->  U. ( S " ( A  \  { a } ) )  C_  { x  e.  B  |  ( O `  x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } )
129102nnzd 10363 . . . . . 6  |-  ( (
ph  /\  a  e.  A )  ->  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) )  e.  ZZ )
13028, 17oddvdssubg 15458 . . . . . 6  |-  ( ( G  e.  Abel  /\  (
( # `  B )  /  ( a ^
( a  pCnt  ( # `
 B ) ) ) )  e.  ZZ )  ->  { x  e.  B  |  ( O `
 x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) }  e.  (SubGrp `  G
) )
13152, 129, 130syl2anc 643 . . . . 5  |-  ( (
ph  /\  a  e.  A )  ->  { x  e.  B  |  ( O `  x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) }  e.  (SubGrp `  G
) )
1323mrcsscl 13833 . . . . 5  |-  ( ( (SubGrp `  G )  e.  (Moore `  ( Base `  G ) )  /\  U. ( S " ( A  \  { a } ) )  C_  { x  e.  B  |  ( O `  x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) }  /\  { x  e.  B  |  ( O `
 x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) }  e.  (SubGrp `  G
) )  ->  (
(mrCls `  (SubGrp `  G
) ) `  U. ( S " ( A 
\  { a } ) ) )  C_  { x  e.  B  | 
( O `  x
)  ||  ( ( # `
 B )  / 
( a ^ (
a  pCnt  ( # `  B
) ) ) ) } )
13357, 128, 131, 132syl3anc 1184 . . . 4  |-  ( (
ph  /\  a  e.  A )  ->  (
(mrCls `  (SubGrp `  G
) ) `  U. ( S " ( A 
\  { a } ) ) )  C_  { x  e.  B  | 
( O `  x
)  ||  ( ( # `
 B )  / 
( a ^ (
a  pCnt  ( # `  B
) ) ) ) } )
134 ss2in 3560 . . . 4  |-  ( ( ( S `  a
)  C_  { x  e.  B  |  ( O `  x )  ||  ( a ^ (
a  pCnt  ( # `  B
) ) ) }  /\  ( (mrCls `  (SubGrp `  G ) ) `
 U. ( S
" ( A  \  { a } ) ) )  C_  { x  e.  B  |  ( O `  x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } )  ->  ( ( S `  a )  i^i  ( (mrCls `  (SubGrp `  G ) ) `  U. ( S " ( A  \  { a } ) ) ) ) 
C_  ( { x  e.  B  |  ( O `  x )  ||  ( a ^ (
a  pCnt  ( # `  B
) ) ) }  i^i  { x  e.  B  |  ( O `
 x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } ) )
13551, 133, 134syl2anc 643 . . 3  |-  ( (
ph  /\  a  e.  A )  ->  (
( S `  a
)  i^i  ( (mrCls `  (SubGrp `  G )
) `  U. ( S
" ( A  \  { a } ) ) ) )  C_  ( { x  e.  B  |  ( O `  x )  ||  (
a ^ ( a 
pCnt  ( # `  B
) ) ) }  i^i  { x  e.  B  |  ( O `
 x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } ) )
136 eqid 2435 . . . . 5  |-  { x  e.  B  |  ( O `  x )  ||  ( a ^ (
a  pCnt  ( # `  B
) ) ) }  =  { x  e.  B  |  ( O `
 x )  ||  ( a ^ (
a  pCnt  ( # `  B
) ) ) }
137 eqid 2435 . . . . 5  |-  { x  e.  B  |  ( O `  x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) }  =  { x  e.  B  |  ( O `
 x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) }
13872simp2d 970 . . . . 5  |-  ( (
ph  /\  a  e.  A )  ->  (
( a ^ (
a  pCnt  ( # `  B
) ) )  gcd  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) )  =  1 )
139 eqid 2435 . . . . 5  |-  ( LSSum `  G )  =  (
LSSum `  G )
14017, 28, 136, 137, 52, 74, 102, 138, 99, 2, 139ablfacrp 15612 . . . 4  |-  ( (
ph  /\  a  e.  A )  ->  (
( { x  e.  B  |  ( O `
 x )  ||  ( a ^ (
a  pCnt  ( # `  B
) ) ) }  i^i  { x  e.  B  |  ( O `
 x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } )  =  { ( 0g `  G ) }  /\  ( { x  e.  B  | 
( O `  x
)  ||  ( a ^ ( a  pCnt  (
# `  B )
) ) }  ( LSSum `  G ) { x  e.  B  | 
( O `  x
)  ||  ( ( # `
 B )  / 
( a ^ (
a  pCnt  ( # `  B
) ) ) ) } )  =  B ) )
141140simpld 446 . . 3  |-  ( (
ph  /\  a  e.  A )  ->  ( { x  e.  B  |  ( O `  x )  ||  (
a ^ ( a 
pCnt  ( # `  B
) ) ) }  i^i  { x  e.  B  |  ( O `
 x )  ||  ( ( # `  B
)  /  ( a ^ ( a  pCnt  (
# `  B )
) ) ) } )  =  { ( 0g `  G ) } )
142135, 141sseqtrd 3376 . 2  |-  ( (
ph  /\  a  e.  A )  ->  (
( S `  a
)  i^i  ( (mrCls `  (SubGrp `  G )
) `  U. ( S
" ( A  \  { a } ) ) ) )  C_  { ( 0g `  G
) } )
1431, 2, 3, 6, 13, 32, 39, 142dmdprdd 15548 1  |-  ( ph  ->  G dom DProd  S )
Colors of variables: wff set class
Syntax hints:    -> wi 4    <-> wb 177    /\ wa 359    /\ w3a 936    = wceq 1652    e. wcel 1725    =/= wne 2598   {crab 2701   _Vcvv 2948    \ cdif 3309    i^i cin 3311    C_ wss 3312   (/)c0 3620   ~Pcpw 3791   {csn 3806   U.cuni 4007   class class class wbr 4204    e. cmpt 4258   dom cdm 4869   ran crn 4870    |` cres 4871   "cima 4872   -->wf 5441   ` cfv 5445  (class class class)co 6072   Fincfn 7100   0cc0 8979   1c1 8980    x. cmul 8984    / cdiv 9666   NNcn 9989   NN0cn0 10210   ZZcz 10271   ^cexp 11370   #chash 11606    || cdivides 12840    gcd cgcd 12994   Primecprime 13067    pCnt cpc 13198   Basecbs 13457   0gc0g 13711  Moorecmre 13795  mrClscmrc 13796  ACScacs 13798   Grpcgrp 14673  SubGrpcsubg 14926  Cntzccntz 15102   odcod 15151   LSSumclsm 15256   Abelcabel 15401   DProd cdprd 15542
This theorem is referenced by:  ablfac1c  15617  ablfac1eu  15619  ablfaclem2  15632  ablfaclem3  15633
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-3 7  ax-mp 8  ax-gen 1555  ax-5 1566  ax-17 1626  ax-9 1666  ax-8 1687  ax-13 1727  ax-14 1729  ax-6 1744  ax-7 1749  ax-11 1761  ax-12 1950  ax-ext 2416  ax-rep 4312  ax-sep 4322  ax-nul 4330  ax-pow 4369  ax-pr 4395  ax-un 4692  ax-inf2 7585  ax-cnex 9035  ax-resscn 9036  ax-1cn 9037  ax-icn 9038  ax-addcl 9039  ax-addrcl 9040  ax-mulcl 9041  ax-mulrcl 9042  ax-mulcom 9043  ax-addass 9044  ax-mulass 9045  ax-distr 9046  ax-i2m1 9047  ax-1ne0 9048  ax-1rid 9049  ax-rnegex 9050  ax-rrecex 9051  ax-cnre 9052  ax-pre-lttri 9053  ax-pre-lttrn 9054  ax-pre-ltadd 9055  ax-pre-mulgt0 9056  ax-pre-sup 9057
This theorem depends on definitions:  df-bi 178  df-or 360  df-an 361  df-3or 937  df-3an 938  df-tru 1328  df-ex 1551  df-nf 1554  df-sb 1659  df-eu 2284  df-mo 2285  df-clab 2422  df-cleq 2428  df-clel 2431  df-nfc 2560  df-ne 2600  df-nel 2601  df-ral 2702  df-rex 2703  df-reu 2704  df-rmo 2705  df-rab 2706  df-v 2950  df-sbc 3154  df-csb 3244  df-dif 3315  df-un 3317  df-in 3319  df-ss 3326  df-pss 3328  df-nul 3621  df-if 3732  df-pw 3793  df-sn 3812  df-pr 3813  df-tp 3814  df-op 3815  df-uni 4008  df-int 4043  df-iun 4087  df-iin 4088  df-disj 4175  df-br 4205  df-opab 4259  df-mpt 4260  df-tr 4295  df-eprel 4486  df-id 4490  df-po 4495  df-so 4496  df-fr 4533  df-se 4534  df-we 4535  df-ord 4576  df-on 4577  df-lim 4578  df-suc 4579  df-om 4837  df-xp 4875  df-rel 4876  df-cnv 4877  df-co 4878  df-dm 4879  df-rn 4880  df-res 4881  df-ima 4882  df-iota 5409  df-fun 5447  df-fn 5448  df-f 5449  df-f1 5450  df-fo 5451  df-f1o 5452  df-fv 5453  df-isom 5454  df-ov 6075  df-oprab 6076  df-mpt2 6077  df-1st 6340  df-2nd 6341  df-riota 6540  df-recs 6624  df-rdg 6659  df-1o 6715  df-2o 6716  df-oadd 6719  df-omul 6720  df-er 6896  df-ec 6898  df-qs 6902  df-map 7011  df-ixp 7055  df-en 7101  df-dom 7102  df-sdom 7103  df-fin 7104  df-sup 7437  df-oi 7468  df-card 7815  df-acn 7818  df-pnf 9111  df-mnf 9112  df-xr 9113  df-ltxr 9114  df-le 9115  df-sub 9282  df-neg 9283  df-div 9667  df-nn 9990  df-2 10047  df-3 10048  df-n0 10211  df-z 10272  df-uz 10478  df-q 10564  df-rp 10602  df-fz 11033  df-fzo 11124  df-fl 11190  df-mod 11239  df-seq 11312  df-exp 11371  df-hash 11607  df-cj 11892  df-re 11893  df-im 11894  df-sqr 12028  df-abs 12029  df-clim 12270  df-sum 12468  df-dvds 12841  df-gcd 12995  df-prm 13068  df-pc 13199  df-ndx 13460  df-slot 13461  df-base 13462  df-sets 13463  df-ress 13464  df-plusg 13530  df-0g 13715  df-mre 13799  df-mrc 13800  df-acs 13802  df-mnd 14678  df-submnd 14727  df-grp 14800  df-minusg 14801  df-sbg 14802  df-mulg 14803  df-subg 14929  df-eqg 14931  df-cntz 15104  df-od 15155  df-lsm 15258  df-cmn 15402  df-abl 15403  df-dprd 15544
  Copyright terms: Public domain W3C validator