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

Theorem ablfac1b 19985
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 2731 . 2 (Cntz‘𝐺) = (Cntz‘𝐺)
2 eqid 2731 . 2 (0g𝐺) = (0g𝐺)
3 eqid 2731 . 2 (mrCls‘(SubGrp‘𝐺)) = (mrCls‘(SubGrp‘𝐺))
4 ablfac1.g . . 3 (𝜑𝐺 ∈ Abel)
5 ablgrp 19698 . . 3 (𝐺 ∈ Abel → 𝐺 ∈ Grp)
64, 5syl 17 . 2 (𝜑𝐺 ∈ Grp)
7 ablfac1.1 . . 3 (𝜑𝐴 ⊆ ℙ)
8 prmex 16588 . . . 4 ℙ ∈ V
98ssex 5259 . . 3 (𝐴 ⊆ ℙ → 𝐴 ∈ V)
107, 9syl 17 . 2 (𝜑𝐴 ∈ V)
114adantr 480 . . . 4 ((𝜑𝑝𝐴) → 𝐺 ∈ Abel)
127sselda 3934 . . . . . . 7 ((𝜑𝑝𝐴) → 𝑝 ∈ ℙ)
13 prmnn 16585 . . . . . . 7 (𝑝 ∈ ℙ → 𝑝 ∈ ℕ)
1412, 13syl 17 . . . . . 6 ((𝜑𝑝𝐴) → 𝑝 ∈ ℕ)
15 ablfac1.b . . . . . . . . . . 11 𝐵 = (Base‘𝐺)
1615grpbn0 18879 . . . . . . . . . 10 (𝐺 ∈ Grp → 𝐵 ≠ ∅)
176, 16syl 17 . . . . . . . . 9 (𝜑𝐵 ≠ ∅)
18 ablfac1.f . . . . . . . . . 10 (𝜑𝐵 ∈ Fin)
19 hashnncl 14273 . . . . . . . . . 10 (𝐵 ∈ Fin → ((♯‘𝐵) ∈ ℕ ↔ 𝐵 ≠ ∅))
2018, 19syl 17 . . . . . . . . 9 (𝜑 → ((♯‘𝐵) ∈ ℕ ↔ 𝐵 ≠ ∅))
2117, 20mpbird 257 . . . . . . . 8 (𝜑 → (♯‘𝐵) ∈ ℕ)
2221adantr 480 . . . . . . 7 ((𝜑𝑝𝐴) → (♯‘𝐵) ∈ ℕ)
2312, 22pccld 16762 . . . . . 6 ((𝜑𝑝𝐴) → (𝑝 pCnt (♯‘𝐵)) ∈ ℕ0)
2414, 23nnexpcld 14152 . . . . 5 ((𝜑𝑝𝐴) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℕ)
2524nnzd 12495 . . . 4 ((𝜑𝑝𝐴) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ)
26 ablfac1.o . . . . 5 𝑂 = (od‘𝐺)
2726, 15oddvdssubg 19768 . . . 4 ((𝐺 ∈ Abel ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ (SubGrp‘𝐺))
2811, 25, 27syl2anc 584 . . 3 ((𝜑𝑝𝐴) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ (SubGrp‘𝐺))
29 ablfac1.s . . 3 𝑆 = (𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))})
3028, 29fmptd 7047 . 2 (𝜑𝑆:𝐴⟶(SubGrp‘𝐺))
314adantr 480 . . 3 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝐺 ∈ Abel)
3230adantr 480 . . . 4 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝑆:𝐴⟶(SubGrp‘𝐺))
33 simpr1 1195 . . . 4 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝑎𝐴)
3432, 33ffvelcdmd 7018 . . 3 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → (𝑆𝑎) ∈ (SubGrp‘𝐺))
35 simpr2 1196 . . . 4 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝑏𝐴)
3632, 35ffvelcdmd 7018 . . 3 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → (𝑆𝑏) ∈ (SubGrp‘𝐺))
371, 31, 34, 36ablcntzd 19770 . 2 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → (𝑆𝑎) ⊆ ((Cntz‘𝐺)‘(𝑆𝑏)))
38 id 22 . . . . . . . . . 10 (𝑝 = 𝑎𝑝 = 𝑎)
39 oveq1 7353 . . . . . . . . . 10 (𝑝 = 𝑎 → (𝑝 pCnt (♯‘𝐵)) = (𝑎 pCnt (♯‘𝐵)))
4038, 39oveq12d 7364 . . . . . . . . 9 (𝑝 = 𝑎 → (𝑝↑(𝑝 pCnt (♯‘𝐵))) = (𝑎↑(𝑎 pCnt (♯‘𝐵))))
4140breq2d 5103 . . . . . . . 8 (𝑝 = 𝑎 → ((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ↔ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))))
4241rabbidv 3402 . . . . . . 7 (𝑝 = 𝑎 → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
4315fvexi 6836 . . . . . . . 8 𝐵 ∈ V
4443rabex 5277 . . . . . . 7 {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ V
4542, 29, 44fvmpt3i 6934 . . . . . 6 (𝑎𝐴 → (𝑆𝑎) = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
4645adantl 481 . . . . 5 ((𝜑𝑎𝐴) → (𝑆𝑎) = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
47 eqimss 3993 . . . . 5 ((𝑆𝑎) = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} → (𝑆𝑎) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
4846, 47syl 17 . . . 4 ((𝜑𝑎𝐴) → (𝑆𝑎) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
494adantr 480 . . . . . 6 ((𝜑𝑎𝐴) → 𝐺 ∈ Abel)
50 eqid 2731 . . . . . . 7 (Base‘𝐺) = (Base‘𝐺)
5150subgacs 19074 . . . . . 6 (𝐺 ∈ Grp → (SubGrp‘𝐺) ∈ (ACS‘(Base‘𝐺)))
52 acsmre 17558 . . . . . 6 ((SubGrp‘𝐺) ∈ (ACS‘(Base‘𝐺)) → (SubGrp‘𝐺) ∈ (Moore‘(Base‘𝐺)))
5349, 5, 51, 524syl 19 . . . . 5 ((𝜑𝑎𝐴) → (SubGrp‘𝐺) ∈ (Moore‘(Base‘𝐺)))
54 df-ima 5629 . . . . . . 7 (𝑆 “ (𝐴 ∖ {𝑎})) = ran (𝑆 ↾ (𝐴 ∖ {𝑎}))
557sselda 3934 . . . . . . . . . . . . . . . . 17 ((𝜑𝑎𝐴) → 𝑎 ∈ ℙ)
5655ad2antrr 726 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑎 ∈ ℙ)
5721ad3antrrr 730 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (♯‘𝐵) ∈ ℕ)
58 pcdvds 16776 . . . . . . . . . . . . . . . 16 ((𝑎 ∈ ℙ ∧ (♯‘𝐵) ∈ ℕ) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
5956, 57, 58syl2anc 584 . . . . . . . . . . . . . . 15 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
607ad3antrrr 730 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝐴 ⊆ ℙ)
61 eldifi 4081 . . . . . . . . . . . . . . . . . 18 (𝑝 ∈ (𝐴 ∖ {𝑎}) → 𝑝𝐴)
6261ad2antlr 727 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝𝐴)
6360, 62sseldd 3935 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝 ∈ ℙ)
64 pcdvds 16776 . . . . . . . . . . . . . . . 16 ((𝑝 ∈ ℙ ∧ (♯‘𝐵) ∈ ℕ) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
6563, 57, 64syl2anc 584 . . . . . . . . . . . . . . 15 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
66 eqid 2731 . . . . . . . . . . . . . . . . . . . . 21 (𝑎↑(𝑎 pCnt (♯‘𝐵))) = (𝑎↑(𝑎 pCnt (♯‘𝐵)))
67 eqid 2731 . . . . . . . . . . . . . . . . . . . . 21 ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) = ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))
6815, 26, 29, 4, 18, 7, 66, 67ablfac1lem 19983 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑎𝐴) → (((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ) ∧ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) = 1 ∧ (♯‘𝐵) = ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))))))
6968simp1d 1142 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑎𝐴) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ))
7069simpld 494 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑎𝐴) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ)
7170ad2antrr 726 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ)
7271nnzd 12495 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℤ)
7363, 13syl 17 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝 ∈ ℕ)
7463, 57pccld 16762 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝 pCnt (♯‘𝐵)) ∈ ℕ0)
7573, 74nnexpcld 14152 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℕ)
7675nnzd 12495 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ)
7757nnzd 12495 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (♯‘𝐵) ∈ ℤ)
78 eldifsni 4742 . . . . . . . . . . . . . . . . . . . 20 (𝑝 ∈ (𝐴 ∖ {𝑎}) → 𝑝𝑎)
7978ad2antlr 727 . . . . . . . . . . . . . . . . . . 19 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝𝑎)
8079necomd 2983 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑎𝑝)
81 prmrp 16623 . . . . . . . . . . . . . . . . . . 19 ((𝑎 ∈ ℙ ∧ 𝑝 ∈ ℙ) → ((𝑎 gcd 𝑝) = 1 ↔ 𝑎𝑝))
8256, 63, 81syl2anc 584 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎 gcd 𝑝) = 1 ↔ 𝑎𝑝))
8380, 82mpbird 257 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎 gcd 𝑝) = 1)
84 prmz 16586 . . . . . . . . . . . . . . . . . . 19 (𝑎 ∈ ℙ → 𝑎 ∈ ℤ)
8556, 84syl 17 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑎 ∈ ℤ)
86 prmz 16586 . . . . . . . . . . . . . . . . . . 19 (𝑝 ∈ ℙ → 𝑝 ∈ ℤ)
8763, 86syl 17 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝 ∈ ℤ)
8856, 57pccld 16762 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎 pCnt (♯‘𝐵)) ∈ ℕ0)
89 rpexp12i 16635 . . . . . . . . . . . . . . . . . 18 ((𝑎 ∈ ℤ ∧ 𝑝 ∈ ℤ ∧ ((𝑎 pCnt (♯‘𝐵)) ∈ ℕ0 ∧ (𝑝 pCnt (♯‘𝐵)) ∈ ℕ0)) → ((𝑎 gcd 𝑝) = 1 → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd (𝑝↑(𝑝 pCnt (♯‘𝐵)))) = 1))
9085, 87, 88, 74, 89syl112anc 1376 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎 gcd 𝑝) = 1 → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd (𝑝↑(𝑝 pCnt (♯‘𝐵)))) = 1))
9183, 90mpd 15 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd (𝑝↑(𝑝 pCnt (♯‘𝐵)))) = 1)
92 coprmdvds2 16565 . . . . . . . . . . . . . . . 16 ((((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℤ ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ ∧ (♯‘𝐵) ∈ ℤ) ∧ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd (𝑝↑(𝑝 pCnt (♯‘𝐵)))) = 1) → (((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∥ (♯‘𝐵) ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ (♯‘𝐵)) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ (♯‘𝐵)))
9372, 76, 77, 91, 92syl31anc 1375 . . . . . . . . . . . . . . 15 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∥ (♯‘𝐵) ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ (♯‘𝐵)) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ (♯‘𝐵)))
9459, 65, 93mp2and 699 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ (♯‘𝐵))
9568simp3d 1144 . . . . . . . . . . . . . . 15 ((𝜑𝑎𝐴) → (♯‘𝐵) = ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
9695ad2antrr 726 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (♯‘𝐵) = ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
9794, 96breqtrd 5117 . . . . . . . . . . . . 13 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
9869simprd 495 . . . . . . . . . . . . . . . 16 ((𝜑𝑎𝐴) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ)
9998ad2antrr 726 . . . . . . . . . . . . . . 15 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ)
10099nnzd 12495 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ)
10171nnne0d 12175 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ≠ 0)
102 dvdscmulr 16195 . . . . . . . . . . . . . 14 (((𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ ∧ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℤ ∧ (𝑎↑(𝑎 pCnt (♯‘𝐵))) ≠ 0)) → (((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) ↔ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
10376, 100, 72, 101, 102syl112anc 1376 . . . . . . . . . . . . 13 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) ↔ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
10497, 103mpbid 232 . . . . . . . . . . . 12 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))))
10515, 26odcl 19449 . . . . . . . . . . . . . . 15 (𝑥𝐵 → (𝑂𝑥) ∈ ℕ0)
106105adantl 481 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑂𝑥) ∈ ℕ0)
107106nn0zd 12494 . . . . . . . . . . . . 13 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑂𝑥) ∈ ℤ)
108 dvdstr 16205 . . . . . . . . . . . . 13 (((𝑂𝑥) ∈ ℤ ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ) → (((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) → (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
109107, 76, 100, 108syl3anc 1373 . . . . . . . . . . . 12 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) → (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
110104, 109mpan2d 694 . . . . . . . . . . 11 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) → (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
111110ss2rabdv 4026 . . . . . . . . . 10 (((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
11244elpw 4554 . . . . . . . . . 10 ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ↔ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
113111, 112sylibr 234 . . . . . . . . 9 (((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
11429reseq1i 5924 . . . . . . . . . 10 (𝑆 ↾ (𝐴 ∖ {𝑎})) = ((𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}) ↾ (𝐴 ∖ {𝑎}))
115 difss 4086 . . . . . . . . . . 11 (𝐴 ∖ {𝑎}) ⊆ 𝐴
116 resmpt 5986 . . . . . . . . . . 11 ((𝐴 ∖ {𝑎}) ⊆ 𝐴 → ((𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}) ↾ (𝐴 ∖ {𝑎})) = (𝑝 ∈ (𝐴 ∖ {𝑎}) ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}))
117115, 116ax-mp 5 . . . . . . . . . 10 ((𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}) ↾ (𝐴 ∖ {𝑎})) = (𝑝 ∈ (𝐴 ∖ {𝑎}) ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))})
118114, 117eqtri 2754 . . . . . . . . 9 (𝑆 ↾ (𝐴 ∖ {𝑎})) = (𝑝 ∈ (𝐴 ∖ {𝑎}) ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))})
119113, 118fmptd 7047 . . . . . . . 8 ((𝜑𝑎𝐴) → (𝑆 ↾ (𝐴 ∖ {𝑎})):(𝐴 ∖ {𝑎})⟶𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
120119frnd 6659 . . . . . . 7 ((𝜑𝑎𝐴) → ran (𝑆 ↾ (𝐴 ∖ {𝑎})) ⊆ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
12154, 120eqsstrid 3973 . . . . . 6 ((𝜑𝑎𝐴) → (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
122 sspwuni 5048 . . . . . 6 ((𝑆 “ (𝐴 ∖ {𝑎})) ⊆ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ↔ (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
123121, 122sylib 218 . . . . 5 ((𝜑𝑎𝐴) → (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
12498nnzd 12495 . . . . . 6 ((𝜑𝑎𝐴) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ)
12526, 15oddvdssubg 19768 . . . . . 6 ((𝐺 ∈ Abel ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∈ (SubGrp‘𝐺))
12649, 124, 125syl2anc 584 . . . . 5 ((𝜑𝑎𝐴) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∈ (SubGrp‘𝐺))
1273mrcsscl 17526 . . . . 5 (((SubGrp‘𝐺) ∈ (Moore‘(Base‘𝐺)) ∧ (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∧ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∈ (SubGrp‘𝐺)) → ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎}))) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
12853, 123, 126, 127syl3anc 1373 . . . 4 ((𝜑𝑎𝐴) → ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎}))) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
129 ss2in 4195 . . . 4 (((𝑆𝑎) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∧ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎}))) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) → ((𝑆𝑎) ∩ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎})))) ⊆ ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}))
13048, 128, 129syl2anc 584 . . 3 ((𝜑𝑎𝐴) → ((𝑆𝑎) ∩ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎})))) ⊆ ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}))
131 eqid 2731 . . . . 5 {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))}
132 eqid 2731 . . . . 5 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} = {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}
13368simp2d 1143 . . . . 5 ((𝜑𝑎𝐴) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) = 1)
134 eqid 2731 . . . . 5 (LSSum‘𝐺) = (LSSum‘𝐺)
13515, 26, 131, 132, 49, 70, 98, 133, 95, 2, 134ablfacrp 19981 . . . 4 ((𝜑𝑎𝐴) → (({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) = {(0g𝐺)} ∧ ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} (LSSum‘𝐺){𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) = 𝐵))
136135simpld 494 . . 3 ((𝜑𝑎𝐴) → ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) = {(0g𝐺)})
137130, 136sseqtrd 3971 . 2 ((𝜑𝑎𝐴) → ((𝑆𝑎) ∩ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎})))) ⊆ {(0g𝐺)})
1381, 2, 3, 6, 10, 30, 37, 137dmdprdd 19914 1 (𝜑𝐺dom DProd 𝑆)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1086   = wceq 1541  wcel 2111  wne 2928  {crab 3395  Vcvv 3436  cdif 3899  cin 3901  wss 3902  c0 4283  𝒫 cpw 4550  {csn 4576   cuni 4859   class class class wbr 5091  cmpt 5172  dom cdm 5616  ran crn 5617  cres 5618  cima 5619  wf 6477  cfv 6481  (class class class)co 7346  Fincfn 8869  0cc0 11006  1c1 11007   · cmul 11011   / cdiv 11774  cn 12125  0cn0 12381  cz 12468  cexp 13968  chash 14237  cdvds 16163   gcd cgcd 16405  cprime 16582   pCnt cpc 16748  Basecbs 17120  0gc0g 17343  Moorecmre 17484  mrClscmrc 17485  ACScacs 17487  Grpcgrp 18846  SubGrpcsubg 19033  Cntzccntz 19228  odcod 19437  LSSumclsm 19547  Abelcabl 19694   DProd cdprd 19908
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1911  ax-6 1968  ax-7 2009  ax-8 2113  ax-9 2121  ax-10 2144  ax-11 2160  ax-12 2180  ax-ext 2703  ax-rep 5217  ax-sep 5234  ax-nul 5244  ax-pow 5303  ax-pr 5370  ax-un 7668  ax-inf2 9531  ax-cnex 11062  ax-resscn 11063  ax-1cn 11064  ax-icn 11065  ax-addcl 11066  ax-addrcl 11067  ax-mulcl 11068  ax-mulrcl 11069  ax-mulcom 11070  ax-addass 11071  ax-mulass 11072  ax-distr 11073  ax-i2m1 11074  ax-1ne0 11075  ax-1rid 11076  ax-rnegex 11077  ax-rrecex 11078  ax-cnre 11079  ax-pre-lttri 11080  ax-pre-lttrn 11081  ax-pre-ltadd 11082  ax-pre-mulgt0 11083  ax-pre-sup 11084
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1544  df-fal 1554  df-ex 1781  df-nf 1785  df-sb 2068  df-mo 2535  df-eu 2564  df-clab 2710  df-cleq 2723  df-clel 2806  df-nfc 2881  df-ne 2929  df-nel 3033  df-ral 3048  df-rex 3057  df-rmo 3346  df-reu 3347  df-rab 3396  df-v 3438  df-sbc 3742  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4284  df-if 4476  df-pw 4552  df-sn 4577  df-pr 4579  df-op 4583  df-uni 4860  df-int 4898  df-iun 4943  df-iin 4944  df-disj 5059  df-br 5092  df-opab 5154  df-mpt 5173  df-tr 5199  df-id 5511  df-eprel 5516  df-po 5524  df-so 5525  df-fr 5569  df-se 5570  df-we 5571  df-xp 5622  df-rel 5623  df-cnv 5624  df-co 5625  df-dm 5626  df-rn 5627  df-res 5628  df-ima 5629  df-pred 6248  df-ord 6309  df-on 6310  df-lim 6311  df-suc 6312  df-iota 6437  df-fun 6483  df-fn 6484  df-f 6485  df-f1 6486  df-fo 6487  df-f1o 6488  df-fv 6489  df-isom 6490  df-riota 7303  df-ov 7349  df-oprab 7350  df-mpo 7351  df-om 7797  df-1st 7921  df-2nd 7922  df-frecs 8211  df-wrecs 8242  df-recs 8291  df-rdg 8329  df-1o 8385  df-2o 8386  df-oadd 8389  df-omul 8390  df-er 8622  df-ec 8624  df-qs 8628  df-map 8752  df-ixp 8822  df-en 8870  df-dom 8871  df-sdom 8872  df-fin 8873  df-sup 9326  df-inf 9327  df-oi 9396  df-card 9832  df-acn 9835  df-pnf 11148  df-mnf 11149  df-xr 11150  df-ltxr 11151  df-le 11152  df-sub 11346  df-neg 11347  df-div 11775  df-nn 12126  df-2 12188  df-3 12189  df-n0 12382  df-z 12469  df-uz 12733  df-q 12847  df-rp 12891  df-fz 13408  df-fzo 13555  df-fl 13696  df-mod 13774  df-seq 13909  df-exp 13969  df-hash 14238  df-cj 15006  df-re 15007  df-im 15008  df-sqrt 15142  df-abs 15143  df-clim 15395  df-sum 15594  df-dvds 16164  df-gcd 16406  df-prm 16583  df-pc 16749  df-sets 17075  df-slot 17093  df-ndx 17105  df-base 17121  df-ress 17142  df-plusg 17174  df-0g 17345  df-mre 17488  df-mrc 17489  df-acs 17491  df-mgm 18548  df-sgrp 18627  df-mnd 18643  df-submnd 18692  df-grp 18849  df-minusg 18850  df-sbg 18851  df-mulg 18981  df-subg 19036  df-eqg 19038  df-cntz 19230  df-od 19441  df-lsm 19549  df-cmn 19695  df-abl 19696  df-dprd 19910
This theorem is referenced by:  ablfac1c  19986  ablfac1eu  19988  ablfaclem2  20001  ablfaclem3  20002
  Copyright terms: Public domain W3C validator