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

Theorem frgpcyg 21546
Description: A free group is cyclic iff it has zero or one generator. (Contributed by Mario Carneiro, 21-Apr-2016.) (Proof shortened by AV, 18-Apr-2021.)
Hypothesis
Ref Expression
frgpcyg.g 𝐺 = (freeGrp‘𝐼)
Assertion
Ref Expression
frgpcyg (𝐼 ≼ 1o𝐺 ∈ CycGrp)

Proof of Theorem frgpcyg
Dummy variables 𝑓 𝑔 𝑛 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 brdom2 9004 . . 3 (𝐼 ≼ 1o ↔ (𝐼 ≺ 1o𝐼 ≈ 1o))
2 sdom1 9260 . . . . 5 (𝐼 ≺ 1o𝐼 = ∅)
3 frgpcyg.g . . . . . . 7 𝐺 = (freeGrp‘𝐼)
4 fveq2 6886 . . . . . . 7 (𝐼 = ∅ → (freeGrp‘𝐼) = (freeGrp‘∅))
53, 4eqtrid 2781 . . . . . 6 (𝐼 = ∅ → 𝐺 = (freeGrp‘∅))
6 0ex 5287 . . . . . . . 8 ∅ ∈ V
7 eqid 2734 . . . . . . . . 9 (freeGrp‘∅) = (freeGrp‘∅)
87frgpgrp 19748 . . . . . . . 8 (∅ ∈ V → (freeGrp‘∅) ∈ Grp)
96, 8ax-mp 5 . . . . . . 7 (freeGrp‘∅) ∈ Grp
10 eqid 2734 . . . . . . . 8 (Base‘(freeGrp‘∅)) = (Base‘(freeGrp‘∅))
117, 100frgp 19765 . . . . . . 7 (Base‘(freeGrp‘∅)) ≈ 1o
12100cyg 19879 . . . . . . 7 (((freeGrp‘∅) ∈ Grp ∧ (Base‘(freeGrp‘∅)) ≈ 1o) → (freeGrp‘∅) ∈ CycGrp)
139, 11, 12mp2an 692 . . . . . 6 (freeGrp‘∅) ∈ CycGrp
145, 13eqeltrdi 2841 . . . . 5 (𝐼 = ∅ → 𝐺 ∈ CycGrp)
152, 14sylbi 217 . . . 4 (𝐼 ≺ 1o𝐺 ∈ CycGrp)
16 eqid 2734 . . . . 5 (Base‘𝐺) = (Base‘𝐺)
17 eqid 2734 . . . . 5 (.g𝐺) = (.g𝐺)
18 relen 8972 . . . . . . 7 Rel ≈
1918brrelex1i 5721 . . . . . 6 (𝐼 ≈ 1o𝐼 ∈ V)
203frgpgrp 19748 . . . . . 6 (𝐼 ∈ V → 𝐺 ∈ Grp)
2119, 20syl 17 . . . . 5 (𝐼 ≈ 1o𝐺 ∈ Grp)
22 eqid 2734 . . . . . . . 8 ( ~FG𝐼) = ( ~FG𝐼)
23 eqid 2734 . . . . . . . 8 (varFGrp𝐼) = (varFGrp𝐼)
2422, 23, 3, 16vrgpf 19754 . . . . . . 7 (𝐼 ∈ V → (varFGrp𝐼):𝐼⟶(Base‘𝐺))
2519, 24syl 17 . . . . . 6 (𝐼 ≈ 1o → (varFGrp𝐼):𝐼⟶(Base‘𝐺))
26 en1uniel 9051 . . . . . 6 (𝐼 ≈ 1o 𝐼𝐼)
2725, 26ffvelcdmd 7085 . . . . 5 (𝐼 ≈ 1o → ((varFGrp𝐼)‘ 𝐼) ∈ (Base‘𝐺))
28 zringgrp 21425 . . . . . . . . 9 ring ∈ Grp
2919uniexd 7744 . . . . . . . . . . 11 (𝐼 ≈ 1o 𝐼 ∈ V)
30 1zzd 12631 . . . . . . . . . . 11 (𝐼 ≈ 1o → 1 ∈ ℤ)
3129, 30fsnd 6871 . . . . . . . . . 10 (𝐼 ≈ 1o → {⟨ 𝐼, 1⟩}:{ 𝐼}⟶ℤ)
32 en1b 9047 . . . . . . . . . . . 12 (𝐼 ≈ 1o𝐼 = { 𝐼})
3332biimpi 216 . . . . . . . . . . 11 (𝐼 ≈ 1o𝐼 = { 𝐼})
3433feq2d 6702 . . . . . . . . . 10 (𝐼 ≈ 1o → ({⟨ 𝐼, 1⟩}:𝐼⟶ℤ ↔ {⟨ 𝐼, 1⟩}:{ 𝐼}⟶ℤ))
3531, 34mpbird 257 . . . . . . . . 9 (𝐼 ≈ 1o → {⟨ 𝐼, 1⟩}:𝐼⟶ℤ)
36 zringbas 21426 . . . . . . . . . 10 ℤ = (Base‘ℤring)
373, 36, 23frgpup3 19764 . . . . . . . . 9 ((ℤring ∈ Grp ∧ 𝐼 ∈ V ∧ {⟨ 𝐼, 1⟩}:𝐼⟶ℤ) → ∃!𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp𝐼)) = {⟨ 𝐼, 1⟩})
3828, 19, 35, 37mp3an2i 1467 . . . . . . . 8 (𝐼 ≈ 1o → ∃!𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp𝐼)) = {⟨ 𝐼, 1⟩})
3938adantr 480 . . . . . . 7 ((𝐼 ≈ 1o𝑥 ∈ (Base‘𝐺)) → ∃!𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp𝐼)) = {⟨ 𝐼, 1⟩})
40 reurex 3367 . . . . . . 7 (∃!𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp𝐼)) = {⟨ 𝐼, 1⟩} → ∃𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp𝐼)) = {⟨ 𝐼, 1⟩})
4139, 40syl 17 . . . . . 6 ((𝐼 ≈ 1o𝑥 ∈ (Base‘𝐺)) → ∃𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp𝐼)) = {⟨ 𝐼, 1⟩})
42 fveq1 6885 . . . . . . . . . 10 ((𝑓 ∘ (varFGrp𝐼)) = {⟨ 𝐼, 1⟩} → ((𝑓 ∘ (varFGrp𝐼))‘ 𝐼) = ({⟨ 𝐼, 1⟩}‘ 𝐼))
4325, 26fvco3d 6989 . . . . . . . . . . 11 (𝐼 ≈ 1o → ((𝑓 ∘ (varFGrp𝐼))‘ 𝐼) = (𝑓‘((varFGrp𝐼)‘ 𝐼)))
44 1z 12630 . . . . . . . . . . . 12 1 ∈ ℤ
45 fvsng 7182 . . . . . . . . . . . 12 (( 𝐼 ∈ V ∧ 1 ∈ ℤ) → ({⟨ 𝐼, 1⟩}‘ 𝐼) = 1)
4629, 44, 45sylancl 586 . . . . . . . . . . 11 (𝐼 ≈ 1o → ({⟨ 𝐼, 1⟩}‘ 𝐼) = 1)
4743, 46eqeq12d 2750 . . . . . . . . . 10 (𝐼 ≈ 1o → (((𝑓 ∘ (varFGrp𝐼))‘ 𝐼) = ({⟨ 𝐼, 1⟩}‘ 𝐼) ↔ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1))
4842, 47imbitrid 244 . . . . . . . . 9 (𝐼 ≈ 1o → ((𝑓 ∘ (varFGrp𝐼)) = {⟨ 𝐼, 1⟩} → (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1))
4948ad2antrr 726 . . . . . . . 8 (((𝐼 ≈ 1o𝑥 ∈ (Base‘𝐺)) ∧ 𝑓 ∈ (𝐺 GrpHom ℤring)) → ((𝑓 ∘ (varFGrp𝐼)) = {⟨ 𝐼, 1⟩} → (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1))
5016, 36ghmf 19207 . . . . . . . . . . . . 13 (𝑓 ∈ (𝐺 GrpHom ℤring) → 𝑓:(Base‘𝐺)⟶ℤ)
5150ad2antrl 728 . . . . . . . . . . . 12 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → 𝑓:(Base‘𝐺)⟶ℤ)
5251ffvelcdmda 7084 . . . . . . . . . . 11 (((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) ∧ 𝑥 ∈ (Base‘𝐺)) → (𝑓𝑥) ∈ ℤ)
5352an32s 652 . . . . . . . . . 10 (((𝐼 ≈ 1o𝑥 ∈ (Base‘𝐺)) ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (𝑓𝑥) ∈ ℤ)
54 mptresid 6049 . . . . . . . . . . . . . 14 ( I ↾ (Base‘𝐺)) = (𝑥 ∈ (Base‘𝐺) ↦ 𝑥)
553, 16, 23frgpup3 19764 . . . . . . . . . . . . . . . . . 18 ((𝐺 ∈ Grp ∧ 𝐼 ∈ V ∧ (varFGrp𝐼):𝐼⟶(Base‘𝐺)) → ∃!𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp𝐼)) = (varFGrp𝐼))
5621, 19, 25, 55syl3anc 1372 . . . . . . . . . . . . . . . . 17 (𝐼 ≈ 1o → ∃!𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp𝐼)) = (varFGrp𝐼))
57 reurmo 3366 . . . . . . . . . . . . . . . . 17 (∃!𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp𝐼)) = (varFGrp𝐼) → ∃*𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp𝐼)) = (varFGrp𝐼))
5856, 57syl 17 . . . . . . . . . . . . . . . 16 (𝐼 ≈ 1o → ∃*𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp𝐼)) = (varFGrp𝐼))
5958adantr 480 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ∃*𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp𝐼)) = (varFGrp𝐼))
6021adantr 480 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → 𝐺 ∈ Grp)
6116idghm 19218 . . . . . . . . . . . . . . . 16 (𝐺 ∈ Grp → ( I ↾ (Base‘𝐺)) ∈ (𝐺 GrpHom 𝐺))
6260, 61syl 17 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ( I ↾ (Base‘𝐺)) ∈ (𝐺 GrpHom 𝐺))
6325adantr 480 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (varFGrp𝐼):𝐼⟶(Base‘𝐺))
64 fcoi2 6763 . . . . . . . . . . . . . . . 16 ((varFGrp𝐼):𝐼⟶(Base‘𝐺) → (( I ↾ (Base‘𝐺)) ∘ (varFGrp𝐼)) = (varFGrp𝐼))
6563, 64syl 17 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (( I ↾ (Base‘𝐺)) ∘ (varFGrp𝐼)) = (varFGrp𝐼))
6651feqmptd 6957 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → 𝑓 = (𝑥 ∈ (Base‘𝐺) ↦ (𝑓𝑥)))
67 eqidd 2735 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (𝑛 ∈ ℤ ↦ (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))) = (𝑛 ∈ ℤ ↦ (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))))
68 oveq1 7420 . . . . . . . . . . . . . . . . 17 (𝑛 = (𝑓𝑥) → (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
6952, 66, 67, 68fmptco 7129 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ((𝑛 ∈ ℤ ↦ (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∘ 𝑓) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))))
7027adantr 480 . . . . . . . . . . . . . . . . . 18 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ((varFGrp𝐼)‘ 𝐼) ∈ (Base‘𝐺))
71 eqid 2734 . . . . . . . . . . . . . . . . . . 19 (𝑛 ∈ ℤ ↦ (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))) = (𝑛 ∈ ℤ ↦ (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
7217, 71, 16mulgghm2 21449 . . . . . . . . . . . . . . . . . 18 ((𝐺 ∈ Grp ∧ ((varFGrp𝐼)‘ 𝐼) ∈ (Base‘𝐺)) → (𝑛 ∈ ℤ ↦ (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∈ (ℤring GrpHom 𝐺))
7360, 70, 72syl2anc 584 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (𝑛 ∈ ℤ ↦ (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∈ (ℤring GrpHom 𝐺))
74 simprl 770 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → 𝑓 ∈ (𝐺 GrpHom ℤring))
75 ghmco 19223 . . . . . . . . . . . . . . . . 17 (((𝑛 ∈ ℤ ↦ (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∈ (ℤring GrpHom 𝐺) ∧ 𝑓 ∈ (𝐺 GrpHom ℤring)) → ((𝑛 ∈ ℤ ↦ (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∘ 𝑓) ∈ (𝐺 GrpHom 𝐺))
7673, 74, 75syl2anc 584 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ((𝑛 ∈ ℤ ↦ (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∘ 𝑓) ∈ (𝐺 GrpHom 𝐺))
7769, 76eqeltrrd 2834 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∈ (𝐺 GrpHom 𝐺))
7833adantr 480 . . . . . . . . . . . . . . . . . . . 20 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → 𝐼 = { 𝐼})
7978eleq2d 2819 . . . . . . . . . . . . . . . . . . 19 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (𝑦𝐼𝑦 ∈ { 𝐼}))
80 simprr 772 . . . . . . . . . . . . . . . . . . . . . 22 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)
8180oveq1d 7428 . . . . . . . . . . . . . . . . . . . . 21 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ((𝑓‘((varFGrp𝐼)‘ 𝐼))(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = (1(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
8216, 17mulg1 19068 . . . . . . . . . . . . . . . . . . . . . 22 (((varFGrp𝐼)‘ 𝐼) ∈ (Base‘𝐺) → (1(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = ((varFGrp𝐼)‘ 𝐼))
8370, 82syl 17 . . . . . . . . . . . . . . . . . . . . 21 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (1(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = ((varFGrp𝐼)‘ 𝐼))
8481, 83eqtrd 2769 . . . . . . . . . . . . . . . . . . . 20 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ((𝑓‘((varFGrp𝐼)‘ 𝐼))(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = ((varFGrp𝐼)‘ 𝐼))
85 elsni 4623 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑦 ∈ { 𝐼} → 𝑦 = 𝐼)
8685fveq2d 6890 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑦 ∈ { 𝐼} → ((varFGrp𝐼)‘𝑦) = ((varFGrp𝐼)‘ 𝐼))
8786fveq2d 6890 . . . . . . . . . . . . . . . . . . . . . 22 (𝑦 ∈ { 𝐼} → (𝑓‘((varFGrp𝐼)‘𝑦)) = (𝑓‘((varFGrp𝐼)‘ 𝐼)))
8887oveq1d 7428 . . . . . . . . . . . . . . . . . . . . 21 (𝑦 ∈ { 𝐼} → ((𝑓‘((varFGrp𝐼)‘𝑦))(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = ((𝑓‘((varFGrp𝐼)‘ 𝐼))(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
8988, 86eqeq12d 2750 . . . . . . . . . . . . . . . . . . . 20 (𝑦 ∈ { 𝐼} → (((𝑓‘((varFGrp𝐼)‘𝑦))(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = ((varFGrp𝐼)‘𝑦) ↔ ((𝑓‘((varFGrp𝐼)‘ 𝐼))(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = ((varFGrp𝐼)‘ 𝐼)))
9084, 89syl5ibrcom 247 . . . . . . . . . . . . . . . . . . 19 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (𝑦 ∈ { 𝐼} → ((𝑓‘((varFGrp𝐼)‘𝑦))(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = ((varFGrp𝐼)‘𝑦)))
9179, 90sylbid 240 . . . . . . . . . . . . . . . . . 18 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (𝑦𝐼 → ((𝑓‘((varFGrp𝐼)‘𝑦))(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = ((varFGrp𝐼)‘𝑦)))
9291imp 406 . . . . . . . . . . . . . . . . 17 (((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) ∧ 𝑦𝐼) → ((𝑓‘((varFGrp𝐼)‘𝑦))(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = ((varFGrp𝐼)‘𝑦))
9392mpteq2dva 5222 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (𝑦𝐼 ↦ ((𝑓‘((varFGrp𝐼)‘𝑦))(.g𝐺)((varFGrp𝐼)‘ 𝐼))) = (𝑦𝐼 ↦ ((varFGrp𝐼)‘𝑦)))
9463ffvelcdmda 7084 . . . . . . . . . . . . . . . . 17 (((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) ∧ 𝑦𝐼) → ((varFGrp𝐼)‘𝑦) ∈ (Base‘𝐺))
9563feqmptd 6957 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (varFGrp𝐼) = (𝑦𝐼 ↦ ((varFGrp𝐼)‘𝑦)))
96 eqidd 2735 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))))
97 fveq2 6886 . . . . . . . . . . . . . . . . . 18 (𝑥 = ((varFGrp𝐼)‘𝑦) → (𝑓𝑥) = (𝑓‘((varFGrp𝐼)‘𝑦)))
9897oveq1d 7428 . . . . . . . . . . . . . . . . 17 (𝑥 = ((varFGrp𝐼)‘𝑦) → ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼)) = ((𝑓‘((varFGrp𝐼)‘𝑦))(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
9994, 95, 96, 98fmptco 7129 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∘ (varFGrp𝐼)) = (𝑦𝐼 ↦ ((𝑓‘((varFGrp𝐼)‘𝑦))(.g𝐺)((varFGrp𝐼)‘ 𝐼))))
10093, 99, 953eqtr4d 2779 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∘ (varFGrp𝐼)) = (varFGrp𝐼))
101 coeq1 5848 . . . . . . . . . . . . . . . . 17 (𝑔 = ( I ↾ (Base‘𝐺)) → (𝑔 ∘ (varFGrp𝐼)) = (( I ↾ (Base‘𝐺)) ∘ (varFGrp𝐼)))
102101eqeq1d 2736 . . . . . . . . . . . . . . . 16 (𝑔 = ( I ↾ (Base‘𝐺)) → ((𝑔 ∘ (varFGrp𝐼)) = (varFGrp𝐼) ↔ (( I ↾ (Base‘𝐺)) ∘ (varFGrp𝐼)) = (varFGrp𝐼)))
103 coeq1 5848 . . . . . . . . . . . . . . . . 17 (𝑔 = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) → (𝑔 ∘ (varFGrp𝐼)) = ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∘ (varFGrp𝐼)))
104103eqeq1d 2736 . . . . . . . . . . . . . . . 16 (𝑔 = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) → ((𝑔 ∘ (varFGrp𝐼)) = (varFGrp𝐼) ↔ ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∘ (varFGrp𝐼)) = (varFGrp𝐼)))
105102, 104rmoi 3871 . . . . . . . . . . . . . . 15 ((∃*𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp𝐼)) = (varFGrp𝐼) ∧ (( I ↾ (Base‘𝐺)) ∈ (𝐺 GrpHom 𝐺) ∧ (( I ↾ (Base‘𝐺)) ∘ (varFGrp𝐼)) = (varFGrp𝐼)) ∧ ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∈ (𝐺 GrpHom 𝐺) ∧ ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ∘ (varFGrp𝐼)) = (varFGrp𝐼))) → ( I ↾ (Base‘𝐺)) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))))
10659, 62, 65, 77, 100, 105syl122anc 1380 . . . . . . . . . . . . . 14 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ( I ↾ (Base‘𝐺)) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))))
10754, 106eqtr3id 2783 . . . . . . . . . . . . 13 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → (𝑥 ∈ (Base‘𝐺) ↦ 𝑥) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))))
108 mpteqb 7015 . . . . . . . . . . . . . 14 (∀𝑥 ∈ (Base‘𝐺)𝑥 ∈ (Base‘𝐺) → ((𝑥 ∈ (Base‘𝐺) ↦ 𝑥) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ↔ ∀𝑥 ∈ (Base‘𝐺)𝑥 = ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))))
109 id 22 . . . . . . . . . . . . . 14 (𝑥 ∈ (Base‘𝐺) → 𝑥 ∈ (Base‘𝐺))
110108, 109mprg 3056 . . . . . . . . . . . . 13 ((𝑥 ∈ (Base‘𝐺) ↦ 𝑥) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) ↔ ∀𝑥 ∈ (Base‘𝐺)𝑥 = ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
111107, 110sylib 218 . . . . . . . . . . . 12 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ∀𝑥 ∈ (Base‘𝐺)𝑥 = ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
112111r19.21bi 3237 . . . . . . . . . . 11 (((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) ∧ 𝑥 ∈ (Base‘𝐺)) → 𝑥 = ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
113112an32s 652 . . . . . . . . . 10 (((𝐼 ≈ 1o𝑥 ∈ (Base‘𝐺)) ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → 𝑥 = ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
11468rspceeqv 3628 . . . . . . . . . 10 (((𝑓𝑥) ∈ ℤ ∧ 𝑥 = ((𝑓𝑥)(.g𝐺)((varFGrp𝐼)‘ 𝐼))) → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
11553, 113, 114syl2anc 584 . . . . . . . . 9 (((𝐼 ≈ 1o𝑥 ∈ (Base‘𝐺)) ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1)) → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
116115expr 456 . . . . . . . 8 (((𝐼 ≈ 1o𝑥 ∈ (Base‘𝐺)) ∧ 𝑓 ∈ (𝐺 GrpHom ℤring)) → ((𝑓‘((varFGrp𝐼)‘ 𝐼)) = 1 → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))))
11749, 116syld 47 . . . . . . 7 (((𝐼 ≈ 1o𝑥 ∈ (Base‘𝐺)) ∧ 𝑓 ∈ (𝐺 GrpHom ℤring)) → ((𝑓 ∘ (varFGrp𝐼)) = {⟨ 𝐼, 1⟩} → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))))
118117rexlimdva 3142 . . . . . 6 ((𝐼 ≈ 1o𝑥 ∈ (Base‘𝐺)) → (∃𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp𝐼)) = {⟨ 𝐼, 1⟩} → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼))))
11941, 118mpd 15 . . . . 5 ((𝐼 ≈ 1o𝑥 ∈ (Base‘𝐺)) → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g𝐺)((varFGrp𝐼)‘ 𝐼)))
12016, 17, 21, 27, 119iscygd 19873 . . . 4 (𝐼 ≈ 1o𝐺 ∈ CycGrp)
12115, 120jaoi 857 . . 3 ((𝐼 ≺ 1o𝐼 ≈ 1o) → 𝐺 ∈ CycGrp)
1221, 121sylbi 217 . 2 (𝐼 ≼ 1o𝐺 ∈ CycGrp)
123 cygabl 19877 . . 3 (𝐺 ∈ CycGrp → 𝐺 ∈ Abel)
1243frgpnabl 19861 . . . . 5 (1o𝐼 → ¬ 𝐺 ∈ Abel)
125124con2i 139 . . . 4 (𝐺 ∈ Abel → ¬ 1o𝐼)
126 ablgrp 19771 . . . . . 6 (𝐺 ∈ Abel → 𝐺 ∈ Grp)
127 eqid 2734 . . . . . . 7 (0g𝐺) = (0g𝐺)
12816, 127grpidcl 18952 . . . . . 6 (𝐺 ∈ Grp → (0g𝐺) ∈ (Base‘𝐺))
1293, 16elbasfv 17235 . . . . . 6 ((0g𝐺) ∈ (Base‘𝐺) → 𝐼 ∈ V)
130126, 128, 1293syl 18 . . . . 5 (𝐺 ∈ Abel → 𝐼 ∈ V)
131 1onn 8660 . . . . . 6 1o ∈ ω
132 nnfi 9189 . . . . . 6 (1o ∈ ω → 1o ∈ Fin)
133131, 132ax-mp 5 . . . . 5 1o ∈ Fin
134 fidomtri2 10016 . . . . 5 ((𝐼 ∈ V ∧ 1o ∈ Fin) → (𝐼 ≼ 1o ↔ ¬ 1o𝐼))
135130, 133, 134sylancl 586 . . . 4 (𝐺 ∈ Abel → (𝐼 ≼ 1o ↔ ¬ 1o𝐼))
136125, 135mpbird 257 . . 3 (𝐺 ∈ Abel → 𝐼 ≼ 1o)
137123, 136syl 17 . 2 (𝐺 ∈ CycGrp → 𝐼 ≼ 1o)
138122, 137impbii 209 1 (𝐼 ≼ 1o𝐺 ∈ CycGrp)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 206  wa 395  wo 847   = wceq 1539  wcel 2107  wral 3050  wrex 3059  ∃!wreu 3361  ∃*wrmo 3362  Vcvv 3463  c0 4313  {csn 4606  cop 4612   cuni 4887   class class class wbr 5123  cmpt 5205   I cid 5557  cres 5667  ccom 5669  wf 6537  cfv 6541  (class class class)co 7413  ωcom 7869  1oc1o 8481  cen 8964  cdom 8965  csdm 8966  Fincfn 8967  1c1 11138  cz 12596  Basecbs 17229  0gc0g 17455  Grpcgrp 18920  .gcmg 19054   GrpHom cghm 19199   ~FG cefg 19692  freeGrpcfrgp 19693  varFGrpcvrgp 19694  Abelcabl 19767  CycGrpccyg 19863  ringczring 21419
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1794  ax-4 1808  ax-5 1909  ax-6 1966  ax-7 2006  ax-8 2109  ax-9 2117  ax-10 2140  ax-11 2156  ax-12 2176  ax-ext 2706  ax-rep 5259  ax-sep 5276  ax-nul 5286  ax-pow 5345  ax-pr 5412  ax-un 7737  ax-cnex 11193  ax-resscn 11194  ax-1cn 11195  ax-icn 11196  ax-addcl 11197  ax-addrcl 11198  ax-mulcl 11199  ax-mulrcl 11200  ax-mulcom 11201  ax-addass 11202  ax-mulass 11203  ax-distr 11204  ax-i2m1 11205  ax-1ne0 11206  ax-1rid 11207  ax-rnegex 11208  ax-rrecex 11209  ax-cnre 11210  ax-pre-lttri 11211  ax-pre-lttrn 11212  ax-pre-ltadd 11213  ax-pre-mulgt0 11214  ax-addf 11216
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1779  df-nf 1783  df-sb 2064  df-mo 2538  df-eu 2567  df-clab 2713  df-cleq 2726  df-clel 2808  df-nfc 2884  df-ne 2932  df-nel 3036  df-ral 3051  df-rex 3060  df-rmo 3363  df-reu 3364  df-rab 3420  df-v 3465  df-sbc 3771  df-csb 3880  df-dif 3934  df-un 3936  df-in 3938  df-ss 3948  df-pss 3951  df-nul 4314  df-if 4506  df-pw 4582  df-sn 4607  df-pr 4609  df-tp 4611  df-op 4613  df-ot 4615  df-uni 4888  df-int 4927  df-iun 4973  df-iin 4974  df-br 5124  df-opab 5186  df-mpt 5206  df-tr 5240  df-id 5558  df-eprel 5564  df-po 5572  df-so 5573  df-fr 5617  df-we 5619  df-xp 5671  df-rel 5672  df-cnv 5673  df-co 5674  df-dm 5675  df-rn 5676  df-res 5677  df-ima 5678  df-pred 6301  df-ord 6366  df-on 6367  df-lim 6368  df-suc 6369  df-iota 6494  df-fun 6543  df-fn 6544  df-f 6545  df-f1 6546  df-fo 6547  df-f1o 6548  df-fv 6549  df-riota 7370  df-ov 7416  df-oprab 7417  df-mpo 7418  df-om 7870  df-1st 7996  df-2nd 7997  df-frecs 8288  df-wrecs 8319  df-recs 8393  df-rdg 8432  df-1o 8488  df-2o 8489  df-er 8727  df-ec 8729  df-qs 8733  df-map 8850  df-en 8968  df-dom 8969  df-sdom 8970  df-fin 8971  df-sup 9464  df-inf 9465  df-card 9961  df-pnf 11279  df-mnf 11280  df-xr 11281  df-ltxr 11282  df-le 11283  df-sub 11476  df-neg 11477  df-nn 12249  df-2 12311  df-3 12312  df-4 12313  df-5 12314  df-6 12315  df-7 12316  df-8 12317  df-9 12318  df-n0 12510  df-xnn0 12583  df-z 12597  df-dec 12717  df-uz 12861  df-rp 13017  df-fz 13530  df-fzo 13677  df-seq 14025  df-hash 14352  df-word 14535  df-lsw 14583  df-concat 14591  df-s1 14616  df-substr 14661  df-pfx 14691  df-splice 14770  df-reverse 14779  df-s2 14869  df-struct 17166  df-sets 17183  df-slot 17201  df-ndx 17213  df-base 17230  df-ress 17253  df-plusg 17286  df-mulr 17287  df-starv 17288  df-sca 17289  df-vsca 17290  df-ip 17291  df-tset 17292  df-ple 17293  df-ds 17295  df-unif 17296  df-0g 17457  df-gsum 17458  df-imas 17524  df-qus 17525  df-mgm 18622  df-sgrp 18701  df-mnd 18717  df-mhm 18765  df-submnd 18766  df-frmd 18831  df-vrmd 18832  df-grp 18923  df-minusg 18924  df-mulg 19055  df-subg 19110  df-ghm 19200  df-efg 19695  df-frgp 19696  df-vrgp 19697  df-cmn 19768  df-abl 19769  df-cyg 19864  df-mgp 20106  df-rng 20118  df-ur 20147  df-ring 20200  df-cring 20201  df-subrng 20514  df-subrg 20538  df-cnfld 21327  df-zring 21420
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator