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

Theorem frgpcyg 21880
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 9010 . . 3 (𝐼 ≼ 1o ↔ (𝐼 ≺ 1o ∨ 𝐼 ≈ 1o))
2 sdom1 9242 . . . . 5 (𝐼 ≺ 1o ↔ 𝐼 = ∅)
3 frgpcyg.g . . . . . . 7 𝐺 = (freeGrp‘𝐼)
4 fveq2 6885 . . . . . . 7 (𝐼 = ∅ → (freeGrp‘𝐼) = (freeGrp‘∅))
53, 4eqtrid 2807 . . . . . 6 (𝐼 = ∅ → 𝐺 = (freeGrp‘∅))
6 0ex 5260 . . . . . . . 8 ∅ ∈ V
7 eqid 2760 . . . . . . . . 9 (freeGrp‘∅) = (freeGrp‘∅)
87frgpgrp 19977 . . . . . . . 8 (∅ ∈ V → (freeGrp‘∅) ∈ Grp)
96, 8ax-mp 5 . . . . . . 7 (freeGrp‘∅) ∈ Grp
10 eqid 2760 . . . . . . . 8 (Base‘(freeGrp‘∅)) = (Base‘(freeGrp‘∅))
117, 100frgp 19994 . . . . . . 7 (Base‘(freeGrp‘∅)) ≈ 1o
12100cyg 20108 . . . . . . 7 (((freeGrp‘∅) ∈ Grp ∧ (Base‘(freeGrp‘∅)) ≈ 1o) → (freeGrp‘∅) ∈ CycGrp)
139, 11, 12mp2an 705 . . . . . 6 (freeGrp‘∅) ∈ CycGrp
145, 13eqeltrdi 2868 . . . . 5 (𝐼 = ∅ → 𝐺 ∈ CycGrp)
152, 14sylbi 220 . . . 4 (𝐼 ≺ 1o → 𝐺 ∈ CycGrp)
16 eqid 2760 . . . . 5 (Base‘𝐺) = (Base‘𝐺)
17 eqid 2760 . . . . 5 (.g‘𝐺) = (.g‘𝐺)
18 relen 8979 . . . . . . 7 Rel ≈
1918brrelex1i 5706 . . . . . 6 (𝐼 ≈ 1o → 𝐼 ∈ V)
203frgpgrp 19977 . . . . . 6 (𝐼 ∈ V → 𝐺 ∈ Grp)
2119, 20syl 18 . . . . 5 (𝐼 ≈ 1o → 𝐺 ∈ Grp)
22 eqid 2760 . . . . . . . 8 ( ~FG ‘𝐼) = ( ~FG ‘𝐼)
23 eqid 2760 . . . . . . . 8 (varFGrp‘𝐼) = (varFGrp‘𝐼)
2422, 23, 3, 16vrgpf 19983 . . . . . . 7 (𝐼 ∈ V → (varFGrp‘𝐼):𝐼⟶(Base‘𝐺))
2519, 24syl 18 . . . . . 6 (𝐼 ≈ 1o → (varFGrp‘𝐼):𝐼⟶(Base‘𝐺))
26 en1uniel 9058 . . . . . 6 (𝐼 ≈ 1o → ∪ 𝐼 ∈ 𝐼)
2725, 26ffvelcdmd 7085 . . . . 5 (𝐼 ≈ 1o → ((varFGrp‘𝐼)‘∪ 𝐼) ∈ (Base‘𝐺))
28 zringgrp 21759 . . . . . . . . 9 ℤring ∈ Grp
2919uniexd 7759 . . . . . . . . . . 11 (𝐼 ≈ 1o → ∪ 𝐼 ∈ V)
30 1zzd 12728 . . . . . . . . . . 11 (𝐼 ≈ 1o → 1 ∈ ℤ)
3129, 30fsnd 6869 . . . . . . . . . 10 (𝐼 ≈ 1o → {⟨∪ 𝐼, 1⟩}:{∪ 𝐼}⟶ℤ)
32 en1b 9053 . . . . . . . . . . . 12 (𝐼 ≈ 1o ↔ 𝐼 = {∪ 𝐼})
3332biimpi 219 . . . . . . . . . . 11 (𝐼 ≈ 1o → 𝐼 = {∪ 𝐼})
3433feq2d 6693 . . . . . . . . . 10 (𝐼 ≈ 1o → ({⟨∪ 𝐼, 1⟩}:𝐼⟶ℤ ↔ {⟨∪ 𝐼, 1⟩}:{∪ 𝐼}⟶ℤ))
3531, 34mpbird 260 . . . . . . . . 9 (𝐼 ≈ 1o → {⟨∪ 𝐼, 1⟩}:𝐼⟶ℤ)
36 zringbas 21760 . . . . . . . . . 10 ℤ = (Base‘ℤring)
373, 36, 23frgpup3 19993 . . . . . . . . 9 ((ℤring ∈ Grp ∧ 𝐼 ∈ V ∧ {⟨∪ 𝐼, 1⟩}:𝐼⟶ℤ) → ∃!𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩})
3828, 19, 35, 37mp3an2i 1495 . . . . . . . 8 (𝐼 ≈ 1o → ∃!𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩})
3938adantr 486 . . . . . . 7 ((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) → ∃!𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩})
40 reurex 3369 . . . . . . 7 (∃!𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩} → ∃𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩})
4139, 40syl 18 . . . . . 6 ((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) → ∃𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩})
42 fveq1 6884 . . . . . . . . . 10 ((𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩} → ((𝑓 ∘ (varFGrp‘𝐼))‘∪ 𝐼) = ({⟨∪ 𝐼, 1⟩}‘∪ 𝐼))
4325, 26fvco3d 6986 . . . . . . . . . . 11 (𝐼 ≈ 1o → ((𝑓 ∘ (varFGrp‘𝐼))‘∪ 𝐼) = (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)))
44 1z 12727 . . . . . . . . . . . 12 1 ∈ ℤ
45 fvsng 7185 . . . . . . . . . . . 12 ((∪ 𝐼 ∈ V ∧ 1 ∈ ℤ) → ({⟨∪ 𝐼, 1⟩}‘∪ 𝐼) = 1)
4629, 44, 45sylancl 598 . . . . . . . . . . 11 (𝐼 ≈ 1o → ({⟨∪ 𝐼, 1⟩}‘∪ 𝐼) = 1)
4743, 46eqeq12d 2776 . . . . . . . . . 10 (𝐼 ≈ 1o → (((𝑓 ∘ (varFGrp‘𝐼))‘∪ 𝐼) = ({⟨∪ 𝐼, 1⟩}‘∪ 𝐼) ↔ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1))
4842, 47imbitrid 247 . . . . . . . . 9 (𝐼 ≈ 1o → ((𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩} → (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1))
4948ad2antrr 739 . . . . . . . 8 (((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) ∧ 𝑓 ∈ (𝐺 GrpHom ℤring)) → ((𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩} → (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1))
5016, 36ghmf 19435 . . . . . . . . . . . . 13 (𝑓 ∈ (𝐺 GrpHom ℤring) → 𝑓:(Base‘𝐺)⟶ℤ)
5150ad2antrl 741 . . . . . . . . . . . 12 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → 𝑓:(Base‘𝐺)⟶ℤ)
5251ffvelcdmda 7084 . . . . . . . . . . 11 (((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) ∧ 𝑥 ∈ (Base‘𝐺)) → (𝑓‘𝑥) ∈ ℤ)
5352an32s 665 . . . . . . . . . 10 (((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑓‘𝑥) ∈ ℤ)
54 mptresid 6042 . . . . . . . . . . . . . 14 ( I ↾ (Base‘𝐺)) = (𝑥 ∈ (Base‘𝐺) ↦ 𝑥)
553, 16, 23frgpup3 19993 . . . . . . . . . . . . . . . . . 18 ((𝐺 ∈ Grp ∧ 𝐼 ∈ V ∧ (varFGrp‘𝐼):𝐼⟶(Base‘𝐺)) → ∃!𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼))
5621, 19, 25, 55syl3anc 1398 . . . . . . . . . . . . . . . . 17 (𝐼 ≈ 1o → ∃!𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼))
57 reurmo 3368 . . . . . . . . . . . . . . . . 17 (∃!𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼) → ∃*𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼))
5856, 57syl 18 . . . . . . . . . . . . . . . 16 (𝐼 ≈ 1o → ∃*𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼))
5958adantr 486 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ∃*𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼))
6021adantr 486 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → 𝐺 ∈ Grp)
6116idghm 19446 . . . . . . . . . . . . . . . 16 (𝐺 ∈ Grp → ( I ↾ (Base‘𝐺)) ∈ (𝐺 GrpHom 𝐺))
6260, 61syl 18 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ( I ↾ (Base‘𝐺)) ∈ (𝐺 GrpHom 𝐺))
6325adantr 486 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (varFGrp‘𝐼):𝐼⟶(Base‘𝐺))
64 fcoi2 6757 . . . . . . . . . . . . . . . 16 ((varFGrp‘𝐼):𝐼⟶(Base‘𝐺) → (( I ↾ (Base‘𝐺)) ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼))
6563, 64syl 18 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (( I ↾ (Base‘𝐺)) ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼))
6651feqmptd 6953 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → 𝑓 = (𝑥 ∈ (Base‘𝐺) ↦ (𝑓‘𝑥)))
67 eqidd 2761 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) = (𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))))
68 oveq1 7427 . . . . . . . . . . . . . . . . 17 (𝑛 = (𝑓‘𝑥) → (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
6952, 66, 67, 68fmptco 7130 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ((𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∘ 𝑓) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))))
7027adantr 486 . . . . . . . . . . . . . . . . . 18 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ((varFGrp‘𝐼)‘∪ 𝐼) ∈ (Base‘𝐺))
71 eqid 2760 . . . . . . . . . . . . . . . . . . 19 (𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) = (𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
7217, 71, 16mulgghm2 21783 . . . . . . . . . . . . . . . . . 18 ((𝐺 ∈ Grp ∧ ((varFGrp‘𝐼)‘∪ 𝐼) ∈ (Base‘𝐺)) → (𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∈ (ℤring GrpHom 𝐺))
7360, 70, 72syl2anc 596 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∈ (ℤring GrpHom 𝐺))
74 simprl 783 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → 𝑓 ∈ (𝐺 GrpHom ℤring))
75 ghmco 19451 . . . . . . . . . . . . . . . . 17 (((𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∈ (ℤring GrpHom 𝐺) ∧ 𝑓 ∈ (𝐺 GrpHom ℤring)) → ((𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∘ 𝑓) ∈ (𝐺 GrpHom 𝐺))
7673, 74, 75syl2anc 596 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ((𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∘ 𝑓) ∈ (𝐺 GrpHom 𝐺))
7769, 76eqeltrrd 2861 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∈ (𝐺 GrpHom 𝐺))
7833adantr 486 . . . . . . . . . . . . . . . . . . . 20 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → 𝐼 = {∪ 𝐼})
7978eleq2d 2846 . . . . . . . . . . . . . . . . . . 19 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑦 ∈ 𝐼 ↔ 𝑦 ∈ {∪ 𝐼}))
80 simprr 785 . . . . . . . . . . . . . . . . . . . . . 22 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)
8180oveq1d 7435 . . . . . . . . . . . . . . . . . . . . 21 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ((𝑓‘((varFGrp‘𝐼)‘∪ 𝐼))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = (1(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
8216, 17mulg1 19292 . . . . . . . . . . . . . . . . . . . . . 22 (((varFGrp‘𝐼)‘∪ 𝐼) ∈ (Base‘𝐺) → (1(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((varFGrp‘𝐼)‘∪ 𝐼))
8370, 82syl 18 . . . . . . . . . . . . . . . . . . . . 21 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (1(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((varFGrp‘𝐼)‘∪ 𝐼))
8481, 83eqtrd 2795 . . . . . . . . . . . . . . . . . . . 20 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ((𝑓‘((varFGrp‘𝐼)‘∪ 𝐼))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((varFGrp‘𝐼)‘∪ 𝐼))
85 elsni 4600 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑦 ∈ {∪ 𝐼} → 𝑦 = ∪ 𝐼)
8685fveq2d 6889 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑦 ∈ {∪ 𝐼} → ((varFGrp‘𝐼)‘𝑦) = ((varFGrp‘𝐼)‘∪ 𝐼))
8786fveq2d 6889 . . . . . . . . . . . . . . . . . . . . . 22 (𝑦 ∈ {∪ 𝐼} → (𝑓‘((varFGrp‘𝐼)‘𝑦)) = (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)))
8887oveq1d 7435 . . . . . . . . . . . . . . . . . . . . 21 (𝑦 ∈ {∪ 𝐼} → ((𝑓‘((varFGrp‘𝐼)‘𝑦))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((𝑓‘((varFGrp‘𝐼)‘∪ 𝐼))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
8988, 86eqeq12d 2776 . . . . . . . . . . . . . . . . . . . 20 (𝑦 ∈ {∪ 𝐼} → (((𝑓‘((varFGrp‘𝐼)‘𝑦))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((varFGrp‘𝐼)‘𝑦) ↔ ((𝑓‘((varFGrp‘𝐼)‘∪ 𝐼))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((varFGrp‘𝐼)‘∪ 𝐼)))
9084, 89syl5ibrcom 250 . . . . . . . . . . . . . . . . . . 19 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑦 ∈ {∪ 𝐼} → ((𝑓‘((varFGrp‘𝐼)‘𝑦))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((varFGrp‘𝐼)‘𝑦)))
9179, 90sylbid 243 . . . . . . . . . . . . . . . . . 18 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑦 ∈ 𝐼 → ((𝑓‘((varFGrp‘𝐼)‘𝑦))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((varFGrp‘𝐼)‘𝑦)))
9291imp 412 . . . . . . . . . . . . . . . . 17 (((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) ∧ 𝑦 ∈ 𝐼) → ((𝑓‘((varFGrp‘𝐼)‘𝑦))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((varFGrp‘𝐼)‘𝑦))
9392mpteq2dva 5197 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑦 ∈ 𝐼 ↦ ((𝑓‘((varFGrp‘𝐼)‘𝑦))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) = (𝑦 ∈ 𝐼 ↦ ((varFGrp‘𝐼)‘𝑦)))
9463ffvelcdmda 7084 . . . . . . . . . . . . . . . . 17 (((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) ∧ 𝑦 ∈ 𝐼) → ((varFGrp‘𝐼)‘𝑦) ∈ (Base‘𝐺))
9563feqmptd 6953 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (varFGrp‘𝐼) = (𝑦 ∈ 𝐼 ↦ ((varFGrp‘𝐼)‘𝑦)))
96 eqidd 2761 . . . . . . . . . . . . . . . . 17 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))))
97 fveq2 6885 . . . . . . . . . . . . . . . . . 18 (𝑥 = ((varFGrp‘𝐼)‘𝑦) → (𝑓‘𝑥) = (𝑓‘((varFGrp‘𝐼)‘𝑦)))
9897oveq1d 7435 . . . . . . . . . . . . . . . . 17 (𝑥 = ((varFGrp‘𝐼)‘𝑦) → ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((𝑓‘((varFGrp‘𝐼)‘𝑦))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
9994, 95, 96, 98fmptco 7130 . . . . . . . . . . . . . . . 16 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∘ (varFGrp‘𝐼)) = (𝑦 ∈ 𝐼 ↦ ((𝑓‘((varFGrp‘𝐼)‘𝑦))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))))
10093, 99, 953eqtr4d 2805 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼))
101 coeq1 5834 . . . . . . . . . . . . . . . . 17 (𝑔 = ( I ↾ (Base‘𝐺)) → (𝑔 ∘ (varFGrp‘𝐼)) = (( I ↾ (Base‘𝐺)) ∘ (varFGrp‘𝐼)))
102101eqeq1d 2762 . . . . . . . . . . . . . . . 16 (𝑔 = ( I ↾ (Base‘𝐺)) → ((𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼) ↔ (( I ↾ (Base‘𝐺)) ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼)))
103 coeq1 5834 . . . . . . . . . . . . . . . . 17 (𝑔 = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) → (𝑔 ∘ (varFGrp‘𝐼)) = ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∘ (varFGrp‘𝐼)))
104103eqeq1d 2762 . . . . . . . . . . . . . . . 16 (𝑔 = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) → ((𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼) ↔ ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼)))
105102, 104rmoi 3837 . . . . . . . . . . . . . . 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 1406 . . . . . . . . . . . . . 14 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ( I ↾ (Base‘𝐺)) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))))
10754, 106eqtr3id 2809 . . . . . . . . . . . . 13 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑥 ∈ (Base‘𝐺) ↦ 𝑥) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))))
108 mpteqb 7013 . . . . . . . . . . . . . 14 (∀𝑥 ∈ (Base‘𝐺)𝑥 ∈ (Base‘𝐺) → ((𝑥 ∈ (Base‘𝐺) ↦ 𝑥) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ↔ ∀𝑥 ∈ (Base‘𝐺)𝑥 = ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))))
109 id 23 . . . . . . . . . . . . . 14 (𝑥 ∈ (Base‘𝐺) → 𝑥 ∈ (Base‘𝐺))
110108, 109mprg 3082 . . . . . . . . . . . . 13 ((𝑥 ∈ (Base‘𝐺) ↦ 𝑥) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ↔ ∀𝑥 ∈ (Base‘𝐺)𝑥 = ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
111107, 110sylib 221 . . . . . . . . . . . 12 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ∀𝑥 ∈ (Base‘𝐺)𝑥 = ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
112111r19.21bi 3254 . . . . . . . . . . 11 (((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) ∧ 𝑥 ∈ (Base‘𝐺)) → 𝑥 = ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
113112an32s 665 . . . . . . . . . 10 (((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → 𝑥 = ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
11468rspceeqv 3598 . . . . . . . . . 10 (((𝑓‘𝑥) ∈ ℤ ∧ 𝑥 = ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
11553, 113, 114syl2anc 596 . . . . . . . . 9 (((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
116115expr 462 . . . . . . . 8 (((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) ∧ 𝑓 ∈ (𝐺 GrpHom ℤring)) → ((𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1 → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))))
11749, 116syld 48 . . . . . . 7 (((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) ∧ 𝑓 ∈ (𝐺 GrpHom ℤring)) → ((𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩} → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))))
118117rexlimdva 3163 . . . . . 6 ((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) → (∃𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩} → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))))
11941, 118mpd 16 . . . . 5 ((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
12016, 17, 21, 27, 119iscygd 20102 . . . 4 (𝐼 ≈ 1o → 𝐺 ∈ CycGrp)
12115, 120jaoi 871 . . 3 ((𝐼 ≺ 1o ∨ 𝐼 ≈ 1o) → 𝐺 ∈ CycGrp)
1221, 121sylbi 220 . 2 (𝐼 ≼ 1o → 𝐺 ∈ CycGrp)
123 cygabl 20106 . . 3 (𝐺 ∈ CycGrp → 𝐺 ∈ Abel)
1243frgpnabl 20090 . . . . 5 (1o ≺ 𝐼 → ¬ 𝐺 ∈ Abel)
125124con2i 140 . . . 4 (𝐺 ∈ Abel → ¬ 1o ≺ 𝐼)
126 ablgrp 20000 . . . . . 6 (𝐺 ∈ Abel → 𝐺 ∈ Grp)
127 eqid 2760 . . . . . . 7 (0g‘𝐺) = (0g‘𝐺)
12816, 127grpidcl 19177 . . . . . 6 (𝐺 ∈ Grp → (0g‘𝐺) ∈ (Base‘𝐺))
1293, 16elbasfv 17394 . . . . . 6 ((0g‘𝐺) ∈ (Base‘𝐺) → 𝐼 ∈ V)
130126, 128, 1293syl 19 . . . . 5 (𝐺 ∈ Abel → 𝐼 ∈ V)
131 1onn 8650 . . . . . 6 1o ∈ ω
132 nnfi 9184 . . . . . 6 (1o ∈ ω → 1o ∈ Fin)
133131, 132ax-mp 5 . . . . 5 1o ∈ Fin
134 fidomtri2 10076 . . . . 5 ((𝐼 ∈ V ∧ 1o ∈ Fin) → (𝐼 ≼ 1o ↔ ¬ 1o ≺ 𝐼))
135130, 133, 134sylancl 598 . . . 4 (𝐺 ∈ Abel → (𝐼 ≼ 1o ↔ ¬ 1o ≺ 𝐼))
136125, 135mpbird 260 . . 3 (𝐺 ∈ Abel → 𝐼 ≼ 1o)
137123, 136syl 18 . 2 (𝐺 ∈ CycGrp → 𝐼 ≼ 1o)
138122, 137impbii 212 1 (𝐼 ≼ 1o ↔ 𝐺 ∈ CycGrp)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  ¬ wn 3   → wi 4   ↔ wb 209   ∧ wa 401   ∨ wo 861   = wceq 1569   ∈ wcel 2144  ∀wral 3076  ∃wrex 3086  ∃!wreu 3363  ∃*wrmo 3364  Vcvv 3450  ∅c0 4278  {csn 4583  ⟨cop 4589  ∪ cuni 4866   class class class wbr 5102   ↦ cmpt 5185   I cid 5544   ↾ cres 5652   ∘ ccom 5654  ⟶wf 6534  ‘cfv 6538  (class class class)co 7420  ωcom 7877  1oc1o 8470   ≈ cen 8971   ≼ cdom 8972   ≺ csdm 8973  Fincfn 8974  1c1 11202  ℤcz 12694  Basecbs 17388  0gc0g 17611  Grpcgrp 19145  .gcmg 19278   GrpHom cghm 19428   ~FG cefg 19921  freeGrpcfrgp 19922  varFGrpcvrgp 19923  Abelcabl 19996  CycGrpccyg 20092  ℤringczring 21753
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2212  ax-ext 2732  ax-rep 5231  ax-sep 5248  ax-nul 5259  ax-pow 5326  ax-pr 5390  ax-un 7751  ax-cnex 11257  ax-resscn 11258  ax-1cn 11259  ax-icn 11260  ax-addcl 11261  ax-addrcl 11262  ax-mulcl 11263  ax-mulrcl 11264  ax-mulcom 11265  ax-addass 11266  ax-mulass 11267  ax-distr 11268  ax-i2m1 11269  ax-1ne0 11270  ax-1rid 11271  ax-rnegex 11272  ax-rrecex 11273  ax-cnre 11274  ax-pre-lttri 11275  ax-pre-lttrn 11276  ax-pre-ltadd 11277  ax-pre-mulgt0 11278  ax-addf 11280
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2099  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-ss 3896  df-pss 4014  df-dif 4047  df-in 4091  df-un 4151  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4584  df-pr 4586  df-tp 4588  df-op 4590  df-ot 4592  df-uni 4867  df-int 4907  df-iun 4952  df-iin 4953  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5545  df-eprel 5550  df-po 5558  df-so 5559  df-fr 5603  df-we 5605  df-xp 5656  df-rel 5657  df-cnv 5658  df-co 5659  df-dm 5660  df-rn 5661  df-res 5662  df-ima 5663  df-pred 6304  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-f1 6543  df-fo 6544  df-f1o 6545  df-fv 6546  df-riota 7377  df-ov 7423  df-oprab 7424  df-mpo 7425  df-om 7878  df-1st 8001  df-2nd 8002  df-frecs 8300  df-wrecs 8331  df-recs 8380  df-rdg 8419  df-1o 8477  df-2o 8478  df-er 8718  df-ec 8720  df-qs 8724  df-map 8850  df-en 8975  df-dom 8976  df-sdom 8977  df-fin 8978  df-sup 9435  df-inf 9436  df-card 10021  df-pnf 11346  df-mnf 11347  df-xr 11348  df-ltxr 11349  df-le 11350  df-sub 11544  df-neg 11545  df-nn 12337  df-2 12406  df-3 12407  df-4 12408  df-5 12409  df-6 12410  df-7 12411  df-8 12412  df-9 12413  df-n0 12608  df-xnn0 12681  df-z 12695  df-dec 12816  df-uz 12967  df-rp 13122  df-fz 13641  df-fzo 13790  df-seq 14146  df-hash 14476  df-word 14660  df-lsw 14709  df-concat 14717  df-s1 14744  df-substr 14790  df-pfx 14822  df-splice 14900  df-reverse 14909  df-s2 15000  df-struct 17326  df-sets 17343  df-slot 17361  df-ndx 17373  df-base 17389  df-ress 17410  df-plusg 17442  df-mulr 17443  df-starv 17444  df-sca 17445  df-vsca 17446  df-ip 17447  df-tset 17448  df-ple 17449  df-ds 17451  df-unif 17452  df-0g 17613  df-gsum 17614  df-imas 17681  df-qus 17682  df-mgm 18817  df-sgrp 18909  df-mnd 18925  df-mhm 18979  df-submnd 18980  df-frmd 19046  df-vrmd 19047  df-grp 19148  df-minusg 19149  df-mulg 19279  df-subg 19334  df-ghm 19429  df-efg 19924  df-frgp 19925  df-vrgp 19926  df-cmn 19997  df-abl 19998  df-cyg 20093  df-mgp 20362  df-rng 20376  df-ur 20409  df-ring 20462  df-cring 20463  df-subrng 20799  df-subrg 20823  df-cnfld 21680  df-zring 21754
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator