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

Theorem frgpcyg 21879
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 9009 . . 3 (𝐼 ≼ 1o ↔ (𝐼 ≺ 1o ∨ 𝐼 ≈ 1o))
2 sdom1 9241 . . . . 5 (𝐼 ≺ 1o ↔ 𝐼 = ∅)
3 frgpcyg.g . . . . . . 7 𝐺 = (freeGrp‘𝐼)
4 fveq2 6885 . . . . . . 7 (𝐼 = ∅ → (freeGrp‘𝐼) = (freeGrp‘∅))
53, 4eqtrid 2808 . . . . . 6 (𝐼 = ∅ → 𝐺 = (freeGrp‘∅))
6 0ex 5261 . . . . . . . 8 ∅ ∈ V
7 eqid 2761 . . . . . . . . 9 (freeGrp‘∅) = (freeGrp‘∅)
87frgpgrp 19976 . . . . . . . 8 (∅ ∈ V → (freeGrp‘∅) ∈ Grp)
96, 8ax-mp 5 . . . . . . 7 (freeGrp‘∅) ∈ Grp
10 eqid 2761 . . . . . . . 8 (Base‘(freeGrp‘∅)) = (Base‘(freeGrp‘∅))
117, 100frgp 19993 . . . . . . 7 (Base‘(freeGrp‘∅)) ≈ 1o
12100cyg 20107 . . . . . . 7 (((freeGrp‘∅) ∈ Grp ∧ (Base‘(freeGrp‘∅)) ≈ 1o) → (freeGrp‘∅) ∈ CycGrp)
139, 11, 12mp2an 705 . . . . . 6 (freeGrp‘∅) ∈ CycGrp
145, 13eqeltrdi 2869 . . . . 5 (𝐼 = ∅ → 𝐺 ∈ CycGrp)
152, 14sylbi 220 . . . 4 (𝐼 ≺ 1o → 𝐺 ∈ CycGrp)
16 eqid 2761 . . . . 5 (Base‘𝐺) = (Base‘𝐺)
17 eqid 2761 . . . . 5 (.g‘𝐺) = (.g‘𝐺)
18 relen 8978 . . . . . . 7 Rel ≈
1918brrelex1i 5707 . . . . . 6 (𝐼 ≈ 1o → 𝐼 ∈ V)
203frgpgrp 19976 . . . . . 6 (𝐼 ∈ V → 𝐺 ∈ Grp)
2119, 20syl 18 . . . . 5 (𝐼 ≈ 1o → 𝐺 ∈ Grp)
22 eqid 2761 . . . . . . . 8 ( ~FG ‘𝐼) = ( ~FG ‘𝐼)
23 eqid 2761 . . . . . . . 8 (varFGrp‘𝐼) = (varFGrp‘𝐼)
2422, 23, 3, 16vrgpf 19982 . . . . . . 7 (𝐼 ∈ V → (varFGrp‘𝐼):𝐼⟶(Base‘𝐺))
2519, 24syl 18 . . . . . 6 (𝐼 ≈ 1o → (varFGrp‘𝐼):𝐼⟶(Base‘𝐺))
26 en1uniel 9057 . . . . . 6 (𝐼 ≈ 1o → ∪ 𝐼 ∈ 𝐼)
2725, 26ffvelcdmd 7085 . . . . 5 (𝐼 ≈ 1o → ((varFGrp‘𝐼)‘∪ 𝐼) ∈ (Base‘𝐺))
28 zringgrp 21758 . . . . . . . . 9 ℤring ∈ Grp
2919uniexd 7759 . . . . . . . . . . 11 (𝐼 ≈ 1o → ∪ 𝐼 ∈ V)
30 1zzd 12727 . . . . . . . . . . 11 (𝐼 ≈ 1o → 1 ∈ ℤ)
3129, 30fsnd 6869 . . . . . . . . . 10 (𝐼 ≈ 1o → {⟨∪ 𝐼, 1⟩}:{∪ 𝐼}⟶ℤ)
32 en1b 9052 . . . . . . . . . . . 12 (𝐼 ≈ 1o ↔ 𝐼 = {∪ 𝐼})
3332biimpi 219 . . . . . . . . . . 11 (𝐼 ≈ 1o → 𝐼 = {∪ 𝐼})
3433feq2d 6693 . . . . . . . . . 10 (𝐼 ≈ 1o → ({⟨∪ 𝐼, 1⟩}:𝐼⟶ℤ ↔ {⟨∪ 𝐼, 1⟩}:{∪ 𝐼}⟶ℤ))
3531, 34mpbird 260 . . . . . . . . 9 (𝐼 ≈ 1o → {⟨∪ 𝐼, 1⟩}:𝐼⟶ℤ)
36 zringbas 21759 . . . . . . . . . 10 ℤ = (Base‘ℤring)
373, 36, 23frgpup3 19992 . . . . . . . . 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 3370 . . . . . . 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 12726 . . . . . . . . . . . 12 1 ∈ ℤ
45 fvsng 7185 . . . . . . . . . . . 12 ((∪ 𝐼 ∈ V ∧ 1 ∈ ℤ) → ({⟨∪ 𝐼, 1⟩}‘∪ 𝐼) = 1)
4629, 44, 45sylancl 598 . . . . . . . . . . 11 (𝐼 ≈ 1o → ({⟨∪ 𝐼, 1⟩}‘∪ 𝐼) = 1)
4743, 46eqeq12d 2777 . . . . . . . . . 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 19434 . . . . . . . . . . . . 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 6043 . . . . . . . . . . . . . 14 ( I ↾ (Base‘𝐺)) = (𝑥 ∈ (Base‘𝐺) ↦ 𝑥)
553, 16, 23frgpup3 19992 . . . . . . . . . . . . . . . . . 18 ((𝐺 ∈ Grp ∧ 𝐼 ∈ V ∧ (varFGrp‘𝐼):𝐼⟶(Base‘𝐺)) → ∃!𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼))
5621, 19, 25, 55syl3anc 1398 . . . . . . . . . . . . . . . . 17 (𝐼 ≈ 1o → ∃!𝑔 ∈ (𝐺 GrpHom 𝐺)(𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼))
57 reurmo 3369 . . . . . . . . . . . . . . . . 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 19445 . . . . . . . . . . . . . . . 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 2762 . . . . . . . . . . . . . . . . 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 2761 . . . . . . . . . . . . . . . . . . 19 (𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) = (𝑛 ∈ ℤ ↦ (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
7217, 71, 16mulgghm2 21782 . . . . . . . . . . . . . . . . . 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 19450 . . . . . . . . . . . . . . . . 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 2862 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∈ (𝐺 GrpHom 𝐺))
7833adantr 486 . . . . . . . . . . . . . . . . . . . 20 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → 𝐼 = {∪ 𝐼})
7978eleq2d 2847 . . . . . . . . . . . . . . . . . . 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 19291 . . . . . . . . . . . . . . . . . . . . . 22 (((varFGrp‘𝐼)‘∪ 𝐼) ∈ (Base‘𝐺) → (1(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((varFGrp‘𝐼)‘∪ 𝐼))
8370, 82syl 18 . . . . . . . . . . . . . . . . . . . . 21 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → (1(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((varFGrp‘𝐼)‘∪ 𝐼))
8481, 83eqtrd 2796 . . . . . . . . . . . . . . . . . . . 20 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ((𝑓‘((varFGrp‘𝐼)‘∪ 𝐼))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((varFGrp‘𝐼)‘∪ 𝐼))
85 elsni 4601 . . . . . . . . . . . . . . . . . . . . . . . 24 (𝑦 ∈ {∪ 𝐼} → 𝑦 = ∪ 𝐼)
8685fveq2d 6889 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑦 ∈ {∪ 𝐼} → ((varFGrp‘𝐼)‘𝑦) = ((varFGrp‘𝐼)‘∪ 𝐼))
8786fveq2d 6889 . . . . . . . . . . . . . . . . . . . . . 22 (𝑦 ∈ {∪ 𝐼} → (𝑓‘((varFGrp‘𝐼)‘𝑦)) = (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)))
8887oveq1d 7435 . . . . . . . . . . . . . . . . . . . . 21 (𝑦 ∈ {∪ 𝐼} → ((𝑓‘((varFGrp‘𝐼)‘𝑦))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)) = ((𝑓‘((varFGrp‘𝐼)‘∪ 𝐼))(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
8988, 86eqeq12d 2777 . . . . . . . . . . . . . . . . . . . 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 5198 . . . . . . . . . . . . . . . 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 2762 . . . . . . . . . . . . . . . . 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 2806 . . . . . . . . . . . . . . 15 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼))
101 coeq1 5835 . . . . . . . . . . . . . . . . 17 (𝑔 = ( I ↾ (Base‘𝐺)) → (𝑔 ∘ (varFGrp‘𝐼)) = (( I ↾ (Base‘𝐺)) ∘ (varFGrp‘𝐼)))
102101eqeq1d 2763 . . . . . . . . . . . . . . . 16 (𝑔 = ( I ↾ (Base‘𝐺)) → ((𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼) ↔ (( I ↾ (Base‘𝐺)) ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼)))
103 coeq1 5835 . . . . . . . . . . . . . . . . 17 (𝑔 = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) → (𝑔 ∘ (varFGrp‘𝐼)) = ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∘ (varFGrp‘𝐼)))
104103eqeq1d 2763 . . . . . . . . . . . . . . . 16 (𝑔 = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) → ((𝑔 ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼) ↔ ((𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ∘ (varFGrp‘𝐼)) = (varFGrp‘𝐼)))
105102, 104rmoi 3838 . . . . . . . . . . . . . . 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 2810 . . . . . . . . . . . . 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 3083 . . . . . . . . . . . . 13 ((𝑥 ∈ (Base‘𝐺) ↦ 𝑥) = (𝑥 ∈ (Base‘𝐺) ↦ ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))) ↔ ∀𝑥 ∈ (Base‘𝐺)𝑥 = ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
111107, 110sylib 221 . . . . . . . . . . . 12 ((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → ∀𝑥 ∈ (Base‘𝐺)𝑥 = ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
112111r19.21bi 3255 . . . . . . . . . . 11 (((𝐼 ≈ 1o ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) ∧ 𝑥 ∈ (Base‘𝐺)) → 𝑥 = ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
113112an32s 665 . . . . . . . . . 10 (((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) ∧ (𝑓 ∈ (𝐺 GrpHom ℤring) ∧ (𝑓‘((varFGrp‘𝐼)‘∪ 𝐼)) = 1)) → 𝑥 = ((𝑓‘𝑥)(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
11468rspceeqv 3599 . . . . . . . . . 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 3164 . . . . . 6 ((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) → (∃𝑓 ∈ (𝐺 GrpHom ℤring)(𝑓 ∘ (varFGrp‘𝐼)) = {⟨∪ 𝐼, 1⟩} → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼))))
11941, 118mpd 16 . . . . 5 ((𝐼 ≈ 1o ∧ 𝑥 ∈ (Base‘𝐺)) → ∃𝑛 ∈ ℤ 𝑥 = (𝑛(.g‘𝐺)((varFGrp‘𝐼)‘∪ 𝐼)))
12016, 17, 21, 27, 119iscygd 20101 . . . 4 (𝐼 ≈ 1o → 𝐺 ∈ CycGrp)
12115, 120jaoi 871 . . 3 ((𝐼 ≺ 1o ∨ 𝐼 ≈ 1o) → 𝐺 ∈ CycGrp)
1221, 121sylbi 220 . 2 (𝐼 ≼ 1o → 𝐺 ∈ CycGrp)
123 cygabl 20105 . . 3 (𝐺 ∈ CycGrp → 𝐺 ∈ Abel)
1243frgpnabl 20089 . . . . 5 (1o ≺ 𝐼 → ¬ 𝐺 ∈ Abel)
125124con2i 140 . . . 4 (𝐺 ∈ Abel → ¬ 1o ≺ 𝐼)
126 ablgrp 19999 . . . . . 6 (𝐺 ∈ Abel → 𝐺 ∈ Grp)
127 eqid 2761 . . . . . . 7 (0g‘𝐺) = (0g‘𝐺)
12816, 127grpidcl 19176 . . . . . 6 (𝐺 ∈ Grp → (0g‘𝐺) ∈ (Base‘𝐺))
1293, 16elbasfv 17393 . . . . . 6 ((0g‘𝐺) ∈ (Base‘𝐺) → 𝐼 ∈ V)
130126, 128, 1293syl 19 . . . . 5 (𝐺 ∈ Abel → 𝐼 ∈ V)
131 1onn 8649 . . . . . 6 1o ∈ ω
132 nnfi 9183 . . . . . 6 (1o ∈ ω → 1o ∈ Fin)
133131, 132ax-mp 5 . . . . 5 1o ∈ Fin
134 fidomtri2 10075 . . . . 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 1570   ∈ wcel 2145  ∀wral 3077  ∃wrex 3087  ∃!wreu 3364  ∃*wrmo 3365  Vcvv 3451  ∅c0 4279  {csn 4584  ⟨cop 4590  ∪ cuni 4867   class class class wbr 5103   ↦ cmpt 5186   I cid 5545   ↾ cres 5653   ∘ ccom 5655  ⟶wf 6534  ‘cfv 6538  (class class class)co 7420  ωcom 7877  1oc1o 8469   ≈ cen 8970   ≼ cdom 8971   ≺ csdm 8972  Fincfn 8973  1c1 11201  ℤcz 12693  Basecbs 17387  0gc0g 17610  Grpcgrp 19144  .gcmg 19277   GrpHom cghm 19427   ~FG cefg 19920  freeGrpcfrgp 19921  varFGrpcvrgp 19922  Abelcabl 19995  CycGrpccyg 20091  ℤringczring 21752
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2733  ax-rep 5232  ax-sep 5249  ax-nul 5260  ax-pow 5327  ax-pr 5391  ax-un 7751  ax-cnex 11256  ax-resscn 11257  ax-1cn 11258  ax-icn 11259  ax-addcl 11260  ax-addrcl 11261  ax-mulcl 11262  ax-mulrcl 11263  ax-mulcom 11264  ax-addass 11265  ax-mulass 11266  ax-distr 11267  ax-i2m1 11268  ax-1ne0 11269  ax-1rid 11270  ax-rnegex 11271  ax-rrecex 11272  ax-cnre 11273  ax-pre-lttri 11274  ax-pre-lttrn 11275  ax-pre-ltadd 11276  ax-pre-mulgt0 11277  ax-addf 11279
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2565  df-eu 2595  df-clab 2740  df-cleq 2753  df-clel 2836  df-nfc 2910  df-ne 2957  df-nel 3063  df-ral 3078  df-rex 3088  df-rmo 3366  df-reu 3367  df-rab 3414  df-v 3453  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-tp 4589  df-op 4591  df-ot 4593  df-uni 4868  df-int 4908  df-iun 4953  df-iin 4954  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5546  df-eprel 5551  df-po 5559  df-so 5560  df-fr 5604  df-we 5606  df-xp 5657  df-rel 5658  df-cnv 5659  df-co 5660  df-dm 5661  df-rn 5662  df-res 5663  df-ima 5664  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 8299  df-wrecs 8330  df-recs 8379  df-rdg 8418  df-1o 8476  df-2o 8477  df-er 8717  df-ec 8719  df-qs 8723  df-map 8849  df-en 8974  df-dom 8975  df-sdom 8976  df-fin 8977  df-sup 9434  df-inf 9435  df-card 10020  df-pnf 11345  df-mnf 11346  df-xr 11347  df-ltxr 11348  df-le 11349  df-sub 11543  df-neg 11544  df-nn 12336  df-2 12405  df-3 12406  df-4 12407  df-5 12408  df-6 12409  df-7 12410  df-8 12411  df-9 12412  df-n0 12607  df-xnn0 12680  df-z 12694  df-dec 12815  df-uz 12966  df-rp 13121  df-fz 13640  df-fzo 13789  df-seq 14145  df-hash 14475  df-word 14659  df-lsw 14708  df-concat 14716  df-s1 14743  df-substr 14789  df-pfx 14821  df-splice 14899  df-reverse 14908  df-s2 14999  df-struct 17325  df-sets 17342  df-slot 17360  df-ndx 17372  df-base 17388  df-ress 17409  df-plusg 17441  df-mulr 17442  df-starv 17443  df-sca 17444  df-vsca 17445  df-ip 17446  df-tset 17447  df-ple 17448  df-ds 17450  df-unif 17451  df-0g 17612  df-gsum 17613  df-imas 17680  df-qus 17681  df-mgm 18816  df-sgrp 18908  df-mnd 18924  df-mhm 18978  df-submnd 18979  df-frmd 19045  df-vrmd 19046  df-grp 19147  df-minusg 19148  df-mulg 19278  df-subg 19333  df-ghm 19428  df-efg 19923  df-frgp 19924  df-vrgp 19925  df-cmn 19996  df-abl 19997  df-cyg 20092  df-mgp 20361  df-rng 20375  df-ur 20408  df-ring 20461  df-cring 20462  df-subrng 20798  df-subrg 20822  df-cnfld 21679  df-zring 21753
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator