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

Theorem ablfac1b 20013
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 𝐵 = (Base‘𝐺)
ablfac1.o 𝑂 = (od‘𝐺)
ablfac1.s 𝑆 = (𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))})
ablfac1.g (𝜑𝐺 ∈ Abel)
ablfac1.f (𝜑𝐵 ∈ Fin)
ablfac1.1 (𝜑𝐴 ⊆ ℙ)
Assertion
Ref Expression
ablfac1b (𝜑𝐺dom DProd 𝑆)
Distinct variable groups:   𝑥,𝑝,𝐵   𝜑,𝑝,𝑥   𝐴,𝑝,𝑥   𝑂,𝑝,𝑥   𝐺,𝑝,𝑥
Allowed substitution hints:   𝑆(𝑥,𝑝)

Proof of Theorem ablfac1b
Dummy variables 𝑎 𝑏 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2737 . 2 (Cntz‘𝐺) = (Cntz‘𝐺)
2 eqid 2737 . 2 (0g𝐺) = (0g𝐺)
3 eqid 2737 . 2 (mrCls‘(SubGrp‘𝐺)) = (mrCls‘(SubGrp‘𝐺))
4 ablfac1.g . . 3 (𝜑𝐺 ∈ Abel)
5 ablgrp 19726 . . 3 (𝐺 ∈ Abel → 𝐺 ∈ Grp)
64, 5syl 17 . 2 (𝜑𝐺 ∈ Grp)
7 ablfac1.1 . . 3 (𝜑𝐴 ⊆ ℙ)
8 prmex 16616 . . . 4 ℙ ∈ V
98ssex 5268 . . 3 (𝐴 ⊆ ℙ → 𝐴 ∈ V)
107, 9syl 17 . 2 (𝜑𝐴 ∈ V)
114adantr 480 . . . 4 ((𝜑𝑝𝐴) → 𝐺 ∈ Abel)
127sselda 3935 . . . . . . 7 ((𝜑𝑝𝐴) → 𝑝 ∈ ℙ)
13 prmnn 16613 . . . . . . 7 (𝑝 ∈ ℙ → 𝑝 ∈ ℕ)
1412, 13syl 17 . . . . . 6 ((𝜑𝑝𝐴) → 𝑝 ∈ ℕ)
15 ablfac1.b . . . . . . . . . . 11 𝐵 = (Base‘𝐺)
1615grpbn0 18908 . . . . . . . . . 10 (𝐺 ∈ Grp → 𝐵 ≠ ∅)
176, 16syl 17 . . . . . . . . 9 (𝜑𝐵 ≠ ∅)
18 ablfac1.f . . . . . . . . . 10 (𝜑𝐵 ∈ Fin)
19 hashnncl 14301 . . . . . . . . . 10 (𝐵 ∈ Fin → ((♯‘𝐵) ∈ ℕ ↔ 𝐵 ≠ ∅))
2018, 19syl 17 . . . . . . . . 9 (𝜑 → ((♯‘𝐵) ∈ ℕ ↔ 𝐵 ≠ ∅))
2117, 20mpbird 257 . . . . . . . 8 (𝜑 → (♯‘𝐵) ∈ ℕ)
2221adantr 480 . . . . . . 7 ((𝜑𝑝𝐴) → (♯‘𝐵) ∈ ℕ)
2312, 22pccld 16790 . . . . . 6 ((𝜑𝑝𝐴) → (𝑝 pCnt (♯‘𝐵)) ∈ ℕ0)
2414, 23nnexpcld 14180 . . . . 5 ((𝜑𝑝𝐴) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℕ)
2524nnzd 12526 . . . 4 ((𝜑𝑝𝐴) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ)
26 ablfac1.o . . . . 5 𝑂 = (od‘𝐺)
2726, 15oddvdssubg 19796 . . . 4 ((𝐺 ∈ Abel ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ (SubGrp‘𝐺))
2811, 25, 27syl2anc 585 . . 3 ((𝜑𝑝𝐴) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ (SubGrp‘𝐺))
29 ablfac1.s . . 3 𝑆 = (𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))})
3028, 29fmptd 7068 . 2 (𝜑𝑆:𝐴⟶(SubGrp‘𝐺))
314adantr 480 . . 3 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝐺 ∈ Abel)
3230adantr 480 . . . 4 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝑆:𝐴⟶(SubGrp‘𝐺))
33 simpr1 1196 . . . 4 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝑎𝐴)
3432, 33ffvelcdmd 7039 . . 3 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → (𝑆𝑎) ∈ (SubGrp‘𝐺))
35 simpr2 1197 . . . 4 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝑏𝐴)
3632, 35ffvelcdmd 7039 . . 3 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → (𝑆𝑏) ∈ (SubGrp‘𝐺))
371, 31, 34, 36ablcntzd 19798 . 2 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → (𝑆𝑎) ⊆ ((Cntz‘𝐺)‘(𝑆𝑏)))
38 id 22 . . . . . . . . . 10 (𝑝 = 𝑎𝑝 = 𝑎)
39 oveq1 7375 . . . . . . . . . 10 (𝑝 = 𝑎 → (𝑝 pCnt (♯‘𝐵)) = (𝑎 pCnt (♯‘𝐵)))
4038, 39oveq12d 7386 . . . . . . . . 9 (𝑝 = 𝑎 → (𝑝↑(𝑝 pCnt (♯‘𝐵))) = (𝑎↑(𝑎 pCnt (♯‘𝐵))))
4140breq2d 5112 . . . . . . . 8 (𝑝 = 𝑎 → ((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ↔ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))))
4241rabbidv 3408 . . . . . . 7 (𝑝 = 𝑎 → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
4315fvexi 6856 . . . . . . . 8 𝐵 ∈ V
4443rabex 5286 . . . . . . 7 {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ V
4542, 29, 44fvmpt3i 6955 . . . . . 6 (𝑎𝐴 → (𝑆𝑎) = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
4645adantl 481 . . . . 5 ((𝜑𝑎𝐴) → (𝑆𝑎) = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
47 eqimss 3994 . . . . 5 ((𝑆𝑎) = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} → (𝑆𝑎) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
4846, 47syl 17 . . . 4 ((𝜑𝑎𝐴) → (𝑆𝑎) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
494adantr 480 . . . . . 6 ((𝜑𝑎𝐴) → 𝐺 ∈ Abel)
50 eqid 2737 . . . . . . 7 (Base‘𝐺) = (Base‘𝐺)
5150subgacs 19102 . . . . . 6 (𝐺 ∈ Grp → (SubGrp‘𝐺) ∈ (ACS‘(Base‘𝐺)))
52 acsmre 17587 . . . . . 6 ((SubGrp‘𝐺) ∈ (ACS‘(Base‘𝐺)) → (SubGrp‘𝐺) ∈ (Moore‘(Base‘𝐺)))
5349, 5, 51, 524syl 19 . . . . 5 ((𝜑𝑎𝐴) → (SubGrp‘𝐺) ∈ (Moore‘(Base‘𝐺)))
54 df-ima 5645 . . . . . . 7 (𝑆 “ (𝐴 ∖ {𝑎})) = ran (𝑆 ↾ (𝐴 ∖ {𝑎}))
557sselda 3935 . . . . . . . . . . . . . . . . 17 ((𝜑𝑎𝐴) → 𝑎 ∈ ℙ)
5655ad2antrr 727 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑎 ∈ ℙ)
5721ad3antrrr 731 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (♯‘𝐵) ∈ ℕ)
58 pcdvds 16804 . . . . . . . . . . . . . . . 16 ((𝑎 ∈ ℙ ∧ (♯‘𝐵) ∈ ℕ) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
5956, 57, 58syl2anc 585 . . . . . . . . . . . . . . 15 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
607ad3antrrr 731 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝐴 ⊆ ℙ)
61 eldifi 4085 . . . . . . . . . . . . . . . . . 18 (𝑝 ∈ (𝐴 ∖ {𝑎}) → 𝑝𝐴)
6261ad2antlr 728 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝𝐴)
6360, 62sseldd 3936 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝 ∈ ℙ)
64 pcdvds 16804 . . . . . . . . . . . . . . . 16 ((𝑝 ∈ ℙ ∧ (♯‘𝐵) ∈ ℕ) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
6563, 57, 64syl2anc 585 . . . . . . . . . . . . . . 15 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
66 eqid 2737 . . . . . . . . . . . . . . . . . . . . 21 (𝑎↑(𝑎 pCnt (♯‘𝐵))) = (𝑎↑(𝑎 pCnt (♯‘𝐵)))
67 eqid 2737 . . . . . . . . . . . . . . . . . . . . 21 ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) = ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))
6815, 26, 29, 4, 18, 7, 66, 67ablfac1lem 20011 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑎𝐴) → (((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ) ∧ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) = 1 ∧ (♯‘𝐵) = ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))))))
6968simp1d 1143 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑎𝐴) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ))
7069simpld 494 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑎𝐴) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ)
7170ad2antrr 727 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ)
7271nnzd 12526 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℤ)
7363, 13syl 17 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝 ∈ ℕ)
7463, 57pccld 16790 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝 pCnt (♯‘𝐵)) ∈ ℕ0)
7573, 74nnexpcld 14180 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℕ)
7675nnzd 12526 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ)
7757nnzd 12526 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (♯‘𝐵) ∈ ℤ)
78 eldifsni 4748 . . . . . . . . . . . . . . . . . . . 20 (𝑝 ∈ (𝐴 ∖ {𝑎}) → 𝑝𝑎)
7978ad2antlr 728 . . . . . . . . . . . . . . . . . . 19 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝𝑎)
8079necomd 2988 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑎𝑝)
81 prmrp 16651 . . . . . . . . . . . . . . . . . . 19 ((𝑎 ∈ ℙ ∧ 𝑝 ∈ ℙ) → ((𝑎 gcd 𝑝) = 1 ↔ 𝑎𝑝))
8256, 63, 81syl2anc 585 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎 gcd 𝑝) = 1 ↔ 𝑎𝑝))
8380, 82mpbird 257 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎 gcd 𝑝) = 1)
84 prmz 16614 . . . . . . . . . . . . . . . . . . 19 (𝑎 ∈ ℙ → 𝑎 ∈ ℤ)
8556, 84syl 17 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑎 ∈ ℤ)
86 prmz 16614 . . . . . . . . . . . . . . . . . . 19 (𝑝 ∈ ℙ → 𝑝 ∈ ℤ)
8763, 86syl 17 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝 ∈ ℤ)
8856, 57pccld 16790 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎 pCnt (♯‘𝐵)) ∈ ℕ0)
89 rpexp12i 16663 . . . . . . . . . . . . . . . . . 18 ((𝑎 ∈ ℤ ∧ 𝑝 ∈ ℤ ∧ ((𝑎 pCnt (♯‘𝐵)) ∈ ℕ0 ∧ (𝑝 pCnt (♯‘𝐵)) ∈ ℕ0)) → ((𝑎 gcd 𝑝) = 1 → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd (𝑝↑(𝑝 pCnt (♯‘𝐵)))) = 1))
9085, 87, 88, 74, 89syl112anc 1377 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎 gcd 𝑝) = 1 → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd (𝑝↑(𝑝 pCnt (♯‘𝐵)))) = 1))
9183, 90mpd 15 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd (𝑝↑(𝑝 pCnt (♯‘𝐵)))) = 1)
92 coprmdvds2 16593 . . . . . . . . . . . . . . . 16 ((((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℤ ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ ∧ (♯‘𝐵) ∈ ℤ) ∧ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd (𝑝↑(𝑝 pCnt (♯‘𝐵)))) = 1) → (((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∥ (♯‘𝐵) ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ (♯‘𝐵)) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ (♯‘𝐵)))
9372, 76, 77, 91, 92syl31anc 1376 . . . . . . . . . . . . . . 15 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∥ (♯‘𝐵) ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ (♯‘𝐵)) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ (♯‘𝐵)))
9459, 65, 93mp2and 700 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ (♯‘𝐵))
9568simp3d 1145 . . . . . . . . . . . . . . 15 ((𝜑𝑎𝐴) → (♯‘𝐵) = ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
9695ad2antrr 727 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (♯‘𝐵) = ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
9794, 96breqtrd 5126 . . . . . . . . . . . . 13 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
9869simprd 495 . . . . . . . . . . . . . . . 16 ((𝜑𝑎𝐴) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ)
9998ad2antrr 727 . . . . . . . . . . . . . . 15 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ)
10099nnzd 12526 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ)
10171nnne0d 12207 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ≠ 0)
102 dvdscmulr 16223 . . . . . . . . . . . . . 14 (((𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ ∧ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℤ ∧ (𝑎↑(𝑎 pCnt (♯‘𝐵))) ≠ 0)) → (((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) ↔ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
10376, 100, 72, 101, 102syl112anc 1377 . . . . . . . . . . . . 13 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) ↔ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
10497, 103mpbid 232 . . . . . . . . . . . 12 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))))
10515, 26odcl 19477 . . . . . . . . . . . . . . 15 (𝑥𝐵 → (𝑂𝑥) ∈ ℕ0)
106105adantl 481 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑂𝑥) ∈ ℕ0)
107106nn0zd 12525 . . . . . . . . . . . . 13 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑂𝑥) ∈ ℤ)
108 dvdstr 16233 . . . . . . . . . . . . 13 (((𝑂𝑥) ∈ ℤ ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ) → (((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) → (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
109107, 76, 100, 108syl3anc 1374 . . . . . . . . . . . 12 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) → (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
110104, 109mpan2d 695 . . . . . . . . . . 11 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) → (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
111110ss2rabdv 4029 . . . . . . . . . 10 (((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
11244elpw 4560 . . . . . . . . . 10 ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ↔ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
113111, 112sylibr 234 . . . . . . . . 9 (((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
11429reseq1i 5942 . . . . . . . . . 10 (𝑆 ↾ (𝐴 ∖ {𝑎})) = ((𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}) ↾ (𝐴 ∖ {𝑎}))
115 difss 4090 . . . . . . . . . . 11 (𝐴 ∖ {𝑎}) ⊆ 𝐴
116 resmpt 6004 . . . . . . . . . . 11 ((𝐴 ∖ {𝑎}) ⊆ 𝐴 → ((𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}) ↾ (𝐴 ∖ {𝑎})) = (𝑝 ∈ (𝐴 ∖ {𝑎}) ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}))
117115, 116ax-mp 5 . . . . . . . . . 10 ((𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}) ↾ (𝐴 ∖ {𝑎})) = (𝑝 ∈ (𝐴 ∖ {𝑎}) ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))})
118114, 117eqtri 2760 . . . . . . . . 9 (𝑆 ↾ (𝐴 ∖ {𝑎})) = (𝑝 ∈ (𝐴 ∖ {𝑎}) ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))})
119113, 118fmptd 7068 . . . . . . . 8 ((𝜑𝑎𝐴) → (𝑆 ↾ (𝐴 ∖ {𝑎})):(𝐴 ∖ {𝑎})⟶𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
120119frnd 6678 . . . . . . 7 ((𝜑𝑎𝐴) → ran (𝑆 ↾ (𝐴 ∖ {𝑎})) ⊆ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
12154, 120eqsstrid 3974 . . . . . 6 ((𝜑𝑎𝐴) → (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
122 sspwuni 5057 . . . . . 6 ((𝑆 “ (𝐴 ∖ {𝑎})) ⊆ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ↔ (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
123121, 122sylib 218 . . . . 5 ((𝜑𝑎𝐴) → (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
12498nnzd 12526 . . . . . 6 ((𝜑𝑎𝐴) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ)
12526, 15oddvdssubg 19796 . . . . . 6 ((𝐺 ∈ Abel ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∈ (SubGrp‘𝐺))
12649, 124, 125syl2anc 585 . . . . 5 ((𝜑𝑎𝐴) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∈ (SubGrp‘𝐺))
1273mrcsscl 17555 . . . . 5 (((SubGrp‘𝐺) ∈ (Moore‘(Base‘𝐺)) ∧ (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∧ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∈ (SubGrp‘𝐺)) → ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎}))) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
12853, 123, 126, 127syl3anc 1374 . . . 4 ((𝜑𝑎𝐴) → ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎}))) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
129 ss2in 4199 . . . 4 (((𝑆𝑎) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∧ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎}))) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) → ((𝑆𝑎) ∩ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎})))) ⊆ ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}))
13048, 128, 129syl2anc 585 . . 3 ((𝜑𝑎𝐴) → ((𝑆𝑎) ∩ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎})))) ⊆ ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}))
131 eqid 2737 . . . . 5 {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))}
132 eqid 2737 . . . . 5 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} = {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}
13368simp2d 1144 . . . . 5 ((𝜑𝑎𝐴) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) = 1)
134 eqid 2737 . . . . 5 (LSSum‘𝐺) = (LSSum‘𝐺)
13515, 26, 131, 132, 49, 70, 98, 133, 95, 2, 134ablfacrp 20009 . . . 4 ((𝜑𝑎𝐴) → (({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) = {(0g𝐺)} ∧ ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} (LSSum‘𝐺){𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) = 𝐵))
136135simpld 494 . . 3 ((𝜑𝑎𝐴) → ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) = {(0g𝐺)})
137130, 136sseqtrd 3972 . 2 ((𝜑𝑎𝐴) → ((𝑆𝑎) ∩ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎})))) ⊆ {(0g𝐺)})
1381, 2, 3, 6, 10, 30, 37, 137dmdprdd 19942 1 (𝜑𝐺dom DProd 𝑆)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1087   = wceq 1542  wcel 2114  wne 2933  {crab 3401  Vcvv 3442  cdif 3900  cin 3902  wss 3903  c0 4287  𝒫 cpw 4556  {csn 4582   cuni 4865   class class class wbr 5100  cmpt 5181  dom cdm 5632  ran crn 5633  cres 5634  cima 5635  wf 6496  cfv 6500  (class class class)co 7368  Fincfn 8895  0cc0 11038  1c1 11039   · cmul 11043   / cdiv 11806  cn 12157  0cn0 12413  cz 12500  cexp 13996  chash 14265  cdvds 16191   gcd cgcd 16433  cprime 16610   pCnt cpc 16776  Basecbs 17148  0gc0g 17371  Moorecmre 17513  mrClscmrc 17514  ACScacs 17516  Grpcgrp 18875  SubGrpcsubg 19062  Cntzccntz 19256  odcod 19465  LSSumclsm 19575  Abelcabl 19722   DProd cdprd 19936
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2185  ax-ext 2709  ax-rep 5226  ax-sep 5243  ax-nul 5253  ax-pow 5312  ax-pr 5379  ax-un 7690  ax-inf2 9562  ax-cnex 11094  ax-resscn 11095  ax-1cn 11096  ax-icn 11097  ax-addcl 11098  ax-addrcl 11099  ax-mulcl 11100  ax-mulrcl 11101  ax-mulcom 11102  ax-addass 11103  ax-mulass 11104  ax-distr 11105  ax-i2m1 11106  ax-1ne0 11107  ax-1rid 11108  ax-rnegex 11109  ax-rrecex 11110  ax-cnre 11111  ax-pre-lttri 11112  ax-pre-lttrn 11113  ax-pre-ltadd 11114  ax-pre-mulgt0 11115  ax-pre-sup 11116
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3or 1088  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-nel 3038  df-ral 3053  df-rex 3063  df-rmo 3352  df-reu 3353  df-rab 3402  df-v 3444  df-sbc 3743  df-csb 3852  df-dif 3906  df-un 3908  df-in 3910  df-ss 3920  df-pss 3923  df-nul 4288  df-if 4482  df-pw 4558  df-sn 4583  df-pr 4585  df-op 4589  df-uni 4866  df-int 4905  df-iun 4950  df-iin 4951  df-disj 5068  df-br 5101  df-opab 5163  df-mpt 5182  df-tr 5208  df-id 5527  df-eprel 5532  df-po 5540  df-so 5541  df-fr 5585  df-se 5586  df-we 5587  df-xp 5638  df-rel 5639  df-cnv 5640  df-co 5641  df-dm 5642  df-rn 5643  df-res 5644  df-ima 5645  df-pred 6267  df-ord 6328  df-on 6329  df-lim 6330  df-suc 6331  df-iota 6456  df-fun 6502  df-fn 6503  df-f 6504  df-f1 6505  df-fo 6506  df-f1o 6507  df-fv 6508  df-isom 6509  df-riota 7325  df-ov 7371  df-oprab 7372  df-mpo 7373  df-om 7819  df-1st 7943  df-2nd 7944  df-frecs 8233  df-wrecs 8264  df-recs 8313  df-rdg 8351  df-1o 8407  df-2o 8408  df-oadd 8411  df-omul 8412  df-er 8645  df-ec 8647  df-qs 8651  df-map 8777  df-ixp 8848  df-en 8896  df-dom 8897  df-sdom 8898  df-fin 8899  df-sup 9357  df-inf 9358  df-oi 9427  df-card 9863  df-acn 9866  df-pnf 11180  df-mnf 11181  df-xr 11182  df-ltxr 11183  df-le 11184  df-sub 11378  df-neg 11379  df-div 11807  df-nn 12158  df-2 12220  df-3 12221  df-n0 12414  df-z 12501  df-uz 12764  df-q 12874  df-rp 12918  df-fz 13436  df-fzo 13583  df-fl 13724  df-mod 13802  df-seq 13937  df-exp 13997  df-hash 14266  df-cj 15034  df-re 15035  df-im 15036  df-sqrt 15170  df-abs 15171  df-clim 15423  df-sum 15622  df-dvds 16192  df-gcd 16434  df-prm 16611  df-pc 16777  df-sets 17103  df-slot 17121  df-ndx 17133  df-base 17149  df-ress 17170  df-plusg 17202  df-0g 17373  df-mre 17517  df-mrc 17518  df-acs 17520  df-mgm 18577  df-sgrp 18656  df-mnd 18672  df-submnd 18721  df-grp 18878  df-minusg 18879  df-sbg 18880  df-mulg 19010  df-subg 19065  df-eqg 19067  df-cntz 19258  df-od 19469  df-lsm 19577  df-cmn 19723  df-abl 19724  df-dprd 19938
This theorem is referenced by:  ablfac1c  20014  ablfac1eu  20016  ablfaclem2  20029  ablfaclem3  20030
  Copyright terms: Public domain W3C validator