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

Theorem ablfac1b 20047
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 2736 . 2 (Cntz‘𝐺) = (Cntz‘𝐺)
2 eqid 2736 . 2 (0g𝐺) = (0g𝐺)
3 eqid 2736 . 2 (mrCls‘(SubGrp‘𝐺)) = (mrCls‘(SubGrp‘𝐺))
4 ablfac1.g . . 3 (𝜑𝐺 ∈ Abel)
5 ablgrp 19760 . . 3 (𝐺 ∈ Abel → 𝐺 ∈ Grp)
64, 5syl 17 . 2 (𝜑𝐺 ∈ Grp)
7 ablfac1.1 . . 3 (𝜑𝐴 ⊆ ℙ)
8 prmex 16646 . . . 4 ℙ ∈ V
98ssex 5262 . . 3 (𝐴 ⊆ ℙ → 𝐴 ∈ V)
107, 9syl 17 . 2 (𝜑𝐴 ∈ V)
114adantr 480 . . . 4 ((𝜑𝑝𝐴) → 𝐺 ∈ Abel)
127sselda 3921 . . . . . . 7 ((𝜑𝑝𝐴) → 𝑝 ∈ ℙ)
13 prmnn 16643 . . . . . . 7 (𝑝 ∈ ℙ → 𝑝 ∈ ℕ)
1412, 13syl 17 . . . . . 6 ((𝜑𝑝𝐴) → 𝑝 ∈ ℕ)
15 ablfac1.b . . . . . . . . . . 11 𝐵 = (Base‘𝐺)
1615grpbn0 18942 . . . . . . . . . 10 (𝐺 ∈ Grp → 𝐵 ≠ ∅)
176, 16syl 17 . . . . . . . . 9 (𝜑𝐵 ≠ ∅)
18 ablfac1.f . . . . . . . . . 10 (𝜑𝐵 ∈ Fin)
19 hashnncl 14328 . . . . . . . . . 10 (𝐵 ∈ Fin → ((♯‘𝐵) ∈ ℕ ↔ 𝐵 ≠ ∅))
2018, 19syl 17 . . . . . . . . 9 (𝜑 → ((♯‘𝐵) ∈ ℕ ↔ 𝐵 ≠ ∅))
2117, 20mpbird 257 . . . . . . . 8 (𝜑 → (♯‘𝐵) ∈ ℕ)
2221adantr 480 . . . . . . 7 ((𝜑𝑝𝐴) → (♯‘𝐵) ∈ ℕ)
2312, 22pccld 16821 . . . . . 6 ((𝜑𝑝𝐴) → (𝑝 pCnt (♯‘𝐵)) ∈ ℕ0)
2414, 23nnexpcld 14207 . . . . 5 ((𝜑𝑝𝐴) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℕ)
2524nnzd 12550 . . . 4 ((𝜑𝑝𝐴) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ)
26 ablfac1.o . . . . 5 𝑂 = (od‘𝐺)
2726, 15oddvdssubg 19830 . . . 4 ((𝐺 ∈ Abel ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ (SubGrp‘𝐺))
2811, 25, 27syl2anc 585 . . 3 ((𝜑𝑝𝐴) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ (SubGrp‘𝐺))
29 ablfac1.s . . 3 𝑆 = (𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))})
3028, 29fmptd 7066 . 2 (𝜑𝑆:𝐴⟶(SubGrp‘𝐺))
314adantr 480 . . 3 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝐺 ∈ Abel)
3230adantr 480 . . . 4 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝑆:𝐴⟶(SubGrp‘𝐺))
33 simpr1 1196 . . . 4 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝑎𝐴)
3432, 33ffvelcdmd 7037 . . 3 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → (𝑆𝑎) ∈ (SubGrp‘𝐺))
35 simpr2 1197 . . . 4 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → 𝑏𝐴)
3632, 35ffvelcdmd 7037 . . 3 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → (𝑆𝑏) ∈ (SubGrp‘𝐺))
371, 31, 34, 36ablcntzd 19832 . 2 ((𝜑 ∧ (𝑎𝐴𝑏𝐴𝑎𝑏)) → (𝑆𝑎) ⊆ ((Cntz‘𝐺)‘(𝑆𝑏)))
38 id 22 . . . . . . . . . 10 (𝑝 = 𝑎𝑝 = 𝑎)
39 oveq1 7374 . . . . . . . . . 10 (𝑝 = 𝑎 → (𝑝 pCnt (♯‘𝐵)) = (𝑎 pCnt (♯‘𝐵)))
4038, 39oveq12d 7385 . . . . . . . . 9 (𝑝 = 𝑎 → (𝑝↑(𝑝 pCnt (♯‘𝐵))) = (𝑎↑(𝑎 pCnt (♯‘𝐵))))
4140breq2d 5097 . . . . . . . 8 (𝑝 = 𝑎 → ((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ↔ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))))
4241rabbidv 3396 . . . . . . 7 (𝑝 = 𝑎 → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
4315fvexi 6854 . . . . . . . 8 𝐵 ∈ V
4443rabex 5280 . . . . . . 7 {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ V
4542, 29, 44fvmpt3i 6953 . . . . . 6 (𝑎𝐴 → (𝑆𝑎) = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
4645adantl 481 . . . . 5 ((𝜑𝑎𝐴) → (𝑆𝑎) = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
47 eqimss 3980 . . . . 5 ((𝑆𝑎) = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} → (𝑆𝑎) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
4846, 47syl 17 . . . 4 ((𝜑𝑎𝐴) → (𝑆𝑎) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))})
494adantr 480 . . . . . 6 ((𝜑𝑎𝐴) → 𝐺 ∈ Abel)
50 eqid 2736 . . . . . . 7 (Base‘𝐺) = (Base‘𝐺)
5150subgacs 19136 . . . . . 6 (𝐺 ∈ Grp → (SubGrp‘𝐺) ∈ (ACS‘(Base‘𝐺)))
52 acsmre 17618 . . . . . 6 ((SubGrp‘𝐺) ∈ (ACS‘(Base‘𝐺)) → (SubGrp‘𝐺) ∈ (Moore‘(Base‘𝐺)))
5349, 5, 51, 524syl 19 . . . . 5 ((𝜑𝑎𝐴) → (SubGrp‘𝐺) ∈ (Moore‘(Base‘𝐺)))
54 df-ima 5644 . . . . . . 7 (𝑆 “ (𝐴 ∖ {𝑎})) = ran (𝑆 ↾ (𝐴 ∖ {𝑎}))
557sselda 3921 . . . . . . . . . . . . . . . . 17 ((𝜑𝑎𝐴) → 𝑎 ∈ ℙ)
5655ad2antrr 727 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑎 ∈ ℙ)
5721ad3antrrr 731 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (♯‘𝐵) ∈ ℕ)
58 pcdvds 16835 . . . . . . . . . . . . . . . 16 ((𝑎 ∈ ℙ ∧ (♯‘𝐵) ∈ ℕ) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
5956, 57, 58syl2anc 585 . . . . . . . . . . . . . . 15 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
607ad3antrrr 731 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝐴 ⊆ ℙ)
61 eldifi 4071 . . . . . . . . . . . . . . . . . 18 (𝑝 ∈ (𝐴 ∖ {𝑎}) → 𝑝𝐴)
6261ad2antlr 728 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝𝐴)
6360, 62sseldd 3922 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝 ∈ ℙ)
64 pcdvds 16835 . . . . . . . . . . . . . . . 16 ((𝑝 ∈ ℙ ∧ (♯‘𝐵) ∈ ℕ) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
6563, 57, 64syl2anc 585 . . . . . . . . . . . . . . 15 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ (♯‘𝐵))
66 eqid 2736 . . . . . . . . . . . . . . . . . . . . 21 (𝑎↑(𝑎 pCnt (♯‘𝐵))) = (𝑎↑(𝑎 pCnt (♯‘𝐵)))
67 eqid 2736 . . . . . . . . . . . . . . . . . . . . 21 ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) = ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))
6815, 26, 29, 4, 18, 7, 66, 67ablfac1lem 20045 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑎𝐴) → (((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ) ∧ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) = 1 ∧ (♯‘𝐵) = ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))))))
6968simp1d 1143 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑎𝐴) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ))
7069simpld 494 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑎𝐴) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ)
7170ad2antrr 727 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℕ)
7271nnzd 12550 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ∈ ℤ)
7363, 13syl 17 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝 ∈ ℕ)
7463, 57pccld 16821 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝 pCnt (♯‘𝐵)) ∈ ℕ0)
7573, 74nnexpcld 14207 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℕ)
7675nnzd 12550 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ)
7757nnzd 12550 . . . . . . . . . . . . . . . 16 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (♯‘𝐵) ∈ ℤ)
78 eldifsni 4735 . . . . . . . . . . . . . . . . . . . 20 (𝑝 ∈ (𝐴 ∖ {𝑎}) → 𝑝𝑎)
7978ad2antlr 728 . . . . . . . . . . . . . . . . . . 19 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝𝑎)
8079necomd 2987 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑎𝑝)
81 prmrp 16682 . . . . . . . . . . . . . . . . . . 19 ((𝑎 ∈ ℙ ∧ 𝑝 ∈ ℙ) → ((𝑎 gcd 𝑝) = 1 ↔ 𝑎𝑝))
8256, 63, 81syl2anc 585 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎 gcd 𝑝) = 1 ↔ 𝑎𝑝))
8380, 82mpbird 257 . . . . . . . . . . . . . . . . 17 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎 gcd 𝑝) = 1)
84 prmz 16644 . . . . . . . . . . . . . . . . . . 19 (𝑎 ∈ ℙ → 𝑎 ∈ ℤ)
8556, 84syl 17 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑎 ∈ ℤ)
86 prmz 16644 . . . . . . . . . . . . . . . . . . 19 (𝑝 ∈ ℙ → 𝑝 ∈ ℤ)
8763, 86syl 17 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → 𝑝 ∈ ℤ)
8856, 57pccld 16821 . . . . . . . . . . . . . . . . . 18 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎 pCnt (♯‘𝐵)) ∈ ℕ0)
89 rpexp12i 16694 . . . . . . . . . . . . . . . . . 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 16623 . . . . . . . . . . . . . . . 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 5111 . . . . . . . . . . . . 13 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · (𝑝↑(𝑝 pCnt (♯‘𝐵)))) ∥ ((𝑎↑(𝑎 pCnt (♯‘𝐵))) · ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
9869simprd 495 . . . . . . . . . . . . . . . 16 ((𝜑𝑎𝐴) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ)
9998ad2antrr 727 . . . . . . . . . . . . . . 15 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℕ)
10099nnzd 12550 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ)
10171nnne0d 12227 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑎↑(𝑎 pCnt (♯‘𝐵))) ≠ 0)
102 dvdscmulr 16253 . . . . . . . . . . . . . 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 19511 . . . . . . . . . . . . . . 15 (𝑥𝐵 → (𝑂𝑥) ∈ ℕ0)
106105adantl 481 . . . . . . . . . . . . . 14 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑂𝑥) ∈ ℕ0)
107106nn0zd 12549 . . . . . . . . . . . . 13 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (𝑂𝑥) ∈ ℤ)
108 dvdstr 16263 . . . . . . . . . . . . 13 (((𝑂𝑥) ∈ ℤ ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∈ ℤ ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ) → (((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) → (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
109107, 76, 100, 108syl3anc 1374 . . . . . . . . . . . 12 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → (((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∧ (𝑝↑(𝑝 pCnt (♯‘𝐵))) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) → (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
110104, 109mpan2d 695 . . . . . . . . . . 11 ((((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) ∧ 𝑥𝐵) → ((𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵))) → (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))))
111110ss2rabdv 4015 . . . . . . . . . 10 (((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
11244elpw 4545 . . . . . . . . . 10 ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ↔ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
113111, 112sylibr 234 . . . . . . . . 9 (((𝜑𝑎𝐴) ∧ 𝑝 ∈ (𝐴 ∖ {𝑎})) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))} ∈ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
11429reseq1i 5940 . . . . . . . . . 10 (𝑆 ↾ (𝐴 ∖ {𝑎})) = ((𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}) ↾ (𝐴 ∖ {𝑎}))
115 difss 4076 . . . . . . . . . . 11 (𝐴 ∖ {𝑎}) ⊆ 𝐴
116 resmpt 6002 . . . . . . . . . . 11 ((𝐴 ∖ {𝑎}) ⊆ 𝐴 → ((𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}) ↾ (𝐴 ∖ {𝑎})) = (𝑝 ∈ (𝐴 ∖ {𝑎}) ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}))
117115, 116ax-mp 5 . . . . . . . . . 10 ((𝑝𝐴 ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))}) ↾ (𝐴 ∖ {𝑎})) = (𝑝 ∈ (𝐴 ∖ {𝑎}) ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))})
118114, 117eqtri 2759 . . . . . . . . 9 (𝑆 ↾ (𝐴 ∖ {𝑎})) = (𝑝 ∈ (𝐴 ∖ {𝑎}) ↦ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑝↑(𝑝 pCnt (♯‘𝐵)))})
119113, 118fmptd 7066 . . . . . . . 8 ((𝜑𝑎𝐴) → (𝑆 ↾ (𝐴 ∖ {𝑎})):(𝐴 ∖ {𝑎})⟶𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
120119frnd 6676 . . . . . . 7 ((𝜑𝑎𝐴) → ran (𝑆 ↾ (𝐴 ∖ {𝑎})) ⊆ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
12154, 120eqsstrid 3960 . . . . . 6 ((𝜑𝑎𝐴) → (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
122 sspwuni 5042 . . . . . 6 ((𝑆 “ (𝐴 ∖ {𝑎})) ⊆ 𝒫 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ↔ (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
123121, 122sylib 218 . . . . 5 ((𝜑𝑎𝐴) → (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
12498nnzd 12550 . . . . . 6 ((𝜑𝑎𝐴) → ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ)
12526, 15oddvdssubg 19830 . . . . . 6 ((𝐺 ∈ Abel ∧ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵)))) ∈ ℤ) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∈ (SubGrp‘𝐺))
12649, 124, 125syl2anc 585 . . . . 5 ((𝜑𝑎𝐴) → {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∈ (SubGrp‘𝐺))
1273mrcsscl 17586 . . . . 5 (((SubGrp‘𝐺) ∈ (Moore‘(Base‘𝐺)) ∧ (𝑆 “ (𝐴 ∖ {𝑎})) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∧ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} ∈ (SubGrp‘𝐺)) → ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎}))) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
12853, 123, 126, 127syl3anc 1374 . . . 4 ((𝜑𝑎𝐴) → ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎}))) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))})
129 ss2in 4185 . . . 4 (((𝑆𝑎) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∧ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎}))) ⊆ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) → ((𝑆𝑎) ∩ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎})))) ⊆ ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}))
13048, 128, 129syl2anc 585 . . 3 ((𝜑𝑎𝐴) → ((𝑆𝑎) ∩ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎})))) ⊆ ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}))
131 eqid 2736 . . . . 5 {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} = {𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))}
132 eqid 2736 . . . . 5 {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))} = {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}
13368simp2d 1144 . . . . 5 ((𝜑𝑎𝐴) → ((𝑎↑(𝑎 pCnt (♯‘𝐵))) gcd ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))) = 1)
134 eqid 2736 . . . . 5 (LSSum‘𝐺) = (LSSum‘𝐺)
13515, 26, 131, 132, 49, 70, 98, 133, 95, 2, 134ablfacrp 20043 . . . 4 ((𝜑𝑎𝐴) → (({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) = {(0g𝐺)} ∧ ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} (LSSum‘𝐺){𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) = 𝐵))
136135simpld 494 . . 3 ((𝜑𝑎𝐴) → ({𝑥𝐵 ∣ (𝑂𝑥) ∥ (𝑎↑(𝑎 pCnt (♯‘𝐵)))} ∩ {𝑥𝐵 ∣ (𝑂𝑥) ∥ ((♯‘𝐵) / (𝑎↑(𝑎 pCnt (♯‘𝐵))))}) = {(0g𝐺)})
137130, 136sseqtrd 3958 . 2 ((𝜑𝑎𝐴) → ((𝑆𝑎) ∩ ((mrCls‘(SubGrp‘𝐺))‘ (𝑆 “ (𝐴 ∖ {𝑎})))) ⊆ {(0g𝐺)})
1381, 2, 3, 6, 10, 30, 37, 137dmdprdd 19976 1 (𝜑𝐺dom DProd 𝑆)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1087   = wceq 1542  wcel 2114  wne 2932  {crab 3389  Vcvv 3429  cdif 3886  cin 3888  wss 3889  c0 4273  𝒫 cpw 4541  {csn 4567   cuni 4850   class class class wbr 5085  cmpt 5166  dom cdm 5631  ran crn 5632  cres 5633  cima 5634  wf 6494  cfv 6498  (class class class)co 7367  Fincfn 8893  0cc0 11038  1c1 11039   · cmul 11043   / cdiv 11807  cn 12174  0cn0 12437  cz 12524  cexp 14023  chash 14292  cdvds 16221   gcd cgcd 16463  cprime 16640   pCnt cpc 16807  Basecbs 17179  0gc0g 17402  Moorecmre 17544  mrClscmrc 17545  ACScacs 17547  Grpcgrp 18909  SubGrpcsubg 19096  Cntzccntz 19290  odcod 19499  LSSumclsm 19609  Abelcabl 19756   DProd cdprd 19970
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 2708  ax-rep 5212  ax-sep 5231  ax-nul 5241  ax-pow 5307  ax-pr 5375  ax-un 7689  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 2539  df-eu 2569  df-clab 2715  df-cleq 2728  df-clel 2811  df-nfc 2885  df-ne 2933  df-nel 3037  df-ral 3052  df-rex 3062  df-rmo 3342  df-reu 3343  df-rab 3390  df-v 3431  df-sbc 3729  df-csb 3838  df-dif 3892  df-un 3894  df-in 3896  df-ss 3906  df-pss 3909  df-nul 4274  df-if 4467  df-pw 4543  df-sn 4568  df-pr 4570  df-op 4574  df-uni 4851  df-int 4890  df-iun 4935  df-iin 4936  df-disj 5053  df-br 5086  df-opab 5148  df-mpt 5167  df-tr 5193  df-id 5526  df-eprel 5531  df-po 5539  df-so 5540  df-fr 5584  df-se 5585  df-we 5586  df-xp 5637  df-rel 5638  df-cnv 5639  df-co 5640  df-dm 5641  df-rn 5642  df-res 5643  df-ima 5644  df-pred 6265  df-ord 6326  df-on 6327  df-lim 6328  df-suc 6329  df-iota 6454  df-fun 6500  df-fn 6501  df-f 6502  df-f1 6503  df-fo 6504  df-f1o 6505  df-fv 6506  df-isom 6507  df-riota 7324  df-ov 7370  df-oprab 7371  df-mpo 7372  df-om 7818  df-1st 7942  df-2nd 7943  df-frecs 8231  df-wrecs 8262  df-recs 8311  df-rdg 8349  df-1o 8405  df-2o 8406  df-oadd 8409  df-omul 8410  df-er 8643  df-ec 8645  df-qs 8649  df-map 8775  df-ixp 8846  df-en 8894  df-dom 8895  df-sdom 8896  df-fin 8897  df-sup 9355  df-inf 9356  df-oi 9425  df-card 9863  df-acn 9866  df-pnf 11181  df-mnf 11182  df-xr 11183  df-ltxr 11184  df-le 11185  df-sub 11379  df-neg 11380  df-div 11808  df-nn 12175  df-2 12244  df-3 12245  df-n0 12438  df-z 12525  df-uz 12789  df-q 12899  df-rp 12943  df-fz 13462  df-fzo 13609  df-fl 13751  df-mod 13829  df-seq 13964  df-exp 14024  df-hash 14293  df-cj 15061  df-re 15062  df-im 15063  df-sqrt 15197  df-abs 15198  df-clim 15450  df-sum 15649  df-dvds 16222  df-gcd 16464  df-prm 16641  df-pc 16808  df-sets 17134  df-slot 17152  df-ndx 17164  df-base 17180  df-ress 17201  df-plusg 17233  df-0g 17404  df-mre 17548  df-mrc 17549  df-acs 17551  df-mgm 18608  df-sgrp 18687  df-mnd 18703  df-submnd 18752  df-grp 18912  df-minusg 18913  df-sbg 18914  df-mulg 19044  df-subg 19099  df-eqg 19101  df-cntz 19292  df-od 19503  df-lsm 19611  df-cmn 19757  df-abl 19758  df-dprd 19972
This theorem is referenced by:  ablfac1c  20048  ablfac1eu  20050  ablfaclem2  20063  ablfaclem3  20064
  Copyright terms: Public domain W3C validator