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

Theorem pi1xfr 25044
Description: Given a path 𝐹 and its inverse 𝐼 between two basepoints, there is an induced group homomorphism on the fundamental groups. (Contributed by Mario Carneiro, 12-Feb-2015.)
Hypotheses
Ref Expression
pi1xfr.p 𝑃 = (𝐽 π1 (𝐹‘0))
pi1xfr.q 𝑄 = (𝐽 π1 (𝐹‘1))
pi1xfr.b 𝐵 = (Base‘𝑃)
pi1xfr.g 𝐺 = ran (𝑔 𝐵 ↦ ⟨[𝑔]( ≃ph𝐽), [(𝐼(*𝑝𝐽)(𝑔(*𝑝𝐽)𝐹))]( ≃ph𝐽)⟩)
pi1xfr.j (𝜑𝐽 ∈ (TopOn‘𝑋))
pi1xfr.f (𝜑𝐹 ∈ (II Cn 𝐽))
pi1xfr.i 𝐼 = (𝑥 ∈ (0[,]1) ↦ (𝐹‘(1 − 𝑥)))
Assertion
Ref Expression
pi1xfr (𝜑𝐺 ∈ (𝑃 GrpHom 𝑄))
Distinct variable groups:   𝑥,𝑔,𝐵   𝑔,𝐹,𝑥   𝑔,𝐼,𝑥   𝜑,𝑔,𝑥   𝑔,𝐽,𝑥   𝑃,𝑔,𝑥   𝑄,𝑔,𝑥
Allowed substitution hints:   𝐺(𝑥,𝑔)   𝑋(𝑥,𝑔)

Proof of Theorem pi1xfr
Dummy variables 𝑓 𝑢 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 pi1xfr.j . . 3 (𝜑𝐽 ∈ (TopOn‘𝑋))
2 iitopon 24868 . . . . 5 II ∈ (TopOn‘(0[,]1))
3 pi1xfr.f . . . . 5 (𝜑𝐹 ∈ (II Cn 𝐽))
4 cnf2 23236 . . . . 5 ((II ∈ (TopOn‘(0[,]1)) ∧ 𝐽 ∈ (TopOn‘𝑋) ∧ 𝐹 ∈ (II Cn 𝐽)) → 𝐹:(0[,]1)⟶𝑋)
52, 1, 3, 4mp3an2i 1475 . . . 4 (𝜑𝐹:(0[,]1)⟶𝑋)
6 0elunit 13417 . . . 4 0 ∈ (0[,]1)
7 ffvelcdm 7026 . . . 4 ((𝐹:(0[,]1)⟶𝑋 ∧ 0 ∈ (0[,]1)) → (𝐹‘0) ∈ 𝑋)
85, 6, 7sylancl 593 . . 3 (𝜑 → (𝐹‘0) ∈ 𝑋)
9 pi1xfr.p . . . 4 𝑃 = (𝐽 π1 (𝐹‘0))
109pi1grp 25039 . . 3 ((𝐽 ∈ (TopOn‘𝑋) ∧ (𝐹‘0) ∈ 𝑋) → 𝑃 ∈ Grp)
111, 8, 10syl2anc 591 . 2 (𝜑𝑃 ∈ Grp)
12 1elunit 13418 . . . 4 1 ∈ (0[,]1)
13 ffvelcdm 7026 . . . 4 ((𝐹:(0[,]1)⟶𝑋 ∧ 1 ∈ (0[,]1)) → (𝐹‘1) ∈ 𝑋)
145, 12, 13sylancl 593 . . 3 (𝜑 → (𝐹‘1) ∈ 𝑋)
15 pi1xfr.q . . . 4 𝑄 = (𝐽 π1 (𝐹‘1))
1615pi1grp 25039 . . 3 ((𝐽 ∈ (TopOn‘𝑋) ∧ (𝐹‘1) ∈ 𝑋) → 𝑄 ∈ Grp)
171, 14, 16syl2anc 591 . 2 (𝜑𝑄 ∈ Grp)
18 pi1xfr.b . . . 4 𝐵 = (Base‘𝑃)
19 pi1xfr.g . . . 4 𝐺 = ran (𝑔 𝐵 ↦ ⟨[𝑔]( ≃ph𝐽), [(𝐼(*𝑝𝐽)(𝑔(*𝑝𝐽)𝐹))]( ≃ph𝐽)⟩)
20 pi1xfr.i . . . . . . 7 𝐼 = (𝑥 ∈ (0[,]1) ↦ (𝐹‘(1 − 𝑥)))
2120pcorevcl 25014 . . . . . 6 (𝐹 ∈ (II Cn 𝐽) → (𝐼 ∈ (II Cn 𝐽) ∧ (𝐼‘0) = (𝐹‘1) ∧ (𝐼‘1) = (𝐹‘0)))
223, 21syl 17 . . . . 5 (𝜑 → (𝐼 ∈ (II Cn 𝐽) ∧ (𝐼‘0) = (𝐹‘1) ∧ (𝐼‘1) = (𝐹‘0)))
2322simp1d 1149 . . . 4 (𝜑𝐼 ∈ (II Cn 𝐽))
2422simp2d 1150 . . . . 5 (𝜑 → (𝐼‘0) = (𝐹‘1))
2524eqcomd 2747 . . . 4 (𝜑 → (𝐹‘1) = (𝐼‘0))
2622simp3d 1151 . . . 4 (𝜑 → (𝐼‘1) = (𝐹‘0))
279, 15, 18, 19, 1, 3, 23, 25, 26pi1xfrf 25042 . . 3 (𝜑𝐺:𝐵⟶(Base‘𝑄))
2818a1i 11 . . . . . . . 8 (𝜑𝐵 = (Base‘𝑃))
299, 1, 8, 28pi1bas2 25030 . . . . . . 7 (𝜑𝐵 = ( 𝐵 / ( ≃ph𝐽)))
3029eleq2d 2827 . . . . . 6 (𝜑 → (𝑦𝐵𝑦 ∈ ( 𝐵 / ( ≃ph𝐽))))
3130biimpa 478 . . . . 5 ((𝜑𝑦𝐵) → 𝑦 ∈ ( 𝐵 / ( ≃ph𝐽)))
32 eqid 2741 . . . . . 6 ( 𝐵 / ( ≃ph𝐽)) = ( 𝐵 / ( ≃ph𝐽))
33 fvoveq1 7383 . . . . . . . 8 ([𝑓]( ≃ph𝐽) = 𝑦 → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = (𝐺‘(𝑦(+g𝑃)𝑧)))
34 fveq2 6831 . . . . . . . . 9 ([𝑓]( ≃ph𝐽) = 𝑦 → (𝐺‘[𝑓]( ≃ph𝐽)) = (𝐺𝑦))
3534oveq1d 7375 . . . . . . . 8 ([𝑓]( ≃ph𝐽) = 𝑦 → ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
3633, 35eqeq12d 2757 . . . . . . 7 ([𝑓]( ≃ph𝐽) = 𝑦 → ((𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)) ↔ (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧))))
3736ralbidv 3164 . . . . . 6 ([𝑓]( ≃ph𝐽) = 𝑦 → (∀𝑧𝐵 (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)) ↔ ∀𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧))))
3829eleq2d 2827 . . . . . . . . . 10 (𝜑 → (𝑧𝐵𝑧 ∈ ( 𝐵 / ( ≃ph𝐽))))
3938biimpa 478 . . . . . . . . 9 ((𝜑𝑧𝐵) → 𝑧 ∈ ( 𝐵 / ( ≃ph𝐽)))
4039adantlr 722 . . . . . . . 8 (((𝜑𝑓 𝐵) ∧ 𝑧𝐵) → 𝑧 ∈ ( 𝐵 / ( ≃ph𝐽)))
41 oveq2 7368 . . . . . . . . . . 11 ([]( ≃ph𝐽) = 𝑧 → ([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽)) = ([𝑓]( ≃ph𝐽)(+g𝑃)𝑧))
4241fveq2d 6835 . . . . . . . . . 10 ([]( ≃ph𝐽) = 𝑧 → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)))
43 fveq2 6831 . . . . . . . . . . 11 ([]( ≃ph𝐽) = 𝑧 → (𝐺‘[]( ≃ph𝐽)) = (𝐺𝑧))
4443oveq2d 7376 . . . . . . . . . 10 ([]( ≃ph𝐽) = 𝑧 → ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
4542, 44eqeq12d 2757 . . . . . . . . 9 ([]( ≃ph𝐽) = 𝑧 → ((𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))) ↔ (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧))))
46 phtpcer 24984 . . . . . . . . . . . . . 14 ( ≃ph𝐽) Er (II Cn 𝐽)
4746a1i 11 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → ( ≃ph𝐽) Er (II Cn 𝐽))
489, 1, 8, 28pi1eluni 25031 . . . . . . . . . . . . . . . . . . . . 21 (𝜑 → (𝑓 𝐵 ↔ (𝑓 ∈ (II Cn 𝐽) ∧ (𝑓‘0) = (𝐹‘0) ∧ (𝑓‘1) = (𝐹‘0))))
4948biimpa 478 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵) → (𝑓 ∈ (II Cn 𝐽) ∧ (𝑓‘0) = (𝐹‘0) ∧ (𝑓‘1) = (𝐹‘0)))
5049simp1d 1149 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵) → 𝑓 ∈ (II Cn 𝐽))
51503adant3 1139 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → 𝑓 ∈ (II Cn 𝐽))
529, 1, 8, 28pi1eluni 25031 . . . . . . . . . . . . . . . . . . . . 21 (𝜑 → ( 𝐵 ↔ ( ∈ (II Cn 𝐽) ∧ (‘0) = (𝐹‘0) ∧ (‘1) = (𝐹‘0))))
5352adantr 482 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵) → ( 𝐵 ↔ ( ∈ (II Cn 𝐽) ∧ (‘0) = (𝐹‘0) ∧ (‘1) = (𝐹‘0))))
5453biimp3a 1478 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ( ∈ (II Cn 𝐽) ∧ (‘0) = (𝐹‘0) ∧ (‘1) = (𝐹‘0)))
5554simp1d 1149 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → ∈ (II Cn 𝐽))
5651, 55pco0 25003 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘0) = (𝑓‘0))
5749simp2d 1150 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵) → (𝑓‘0) = (𝐹‘0))
58573adant3 1139 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘0) = (𝐹‘0))
5956, 58eqtrd 2776 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘0) = (𝐹‘0))
6049simp3d 1151 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵) → (𝑓‘1) = (𝐹‘0))
61603adant3 1139 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘1) = (𝐹‘0))
6254simp2d 1150 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → (‘0) = (𝐹‘0))
6361, 62eqtr4d 2779 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘1) = (‘0))
6451, 55, 63pcocn 25006 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)) ∈ (II Cn 𝐽))
6533ad2ant1 1140 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → 𝐹 ∈ (II Cn 𝐽))
6664, 65pco0 25003 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → (((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)‘0) = ((𝑓(*𝑝𝐽))‘0))
67263ad2ant1 1140 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = (𝐹‘0))
6859, 66, 673eqtr4rd 2787 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = (((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)‘0))
69233ad2ant1 1140 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → 𝐼 ∈ (II Cn 𝐽))
7047, 69erref 8658 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → 𝐼( ≃ph𝐽)𝐼)
7154simp3d 1151 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (‘1) = (𝐹‘0))
72 eqid 2741 . . . . . . . . . . . . . . . . 17 (𝑢 ∈ (0[,]1) ↦ if(𝑢 ≤ (1 / 2), if(𝑢 ≤ (1 / 4), (2 · 𝑢), (𝑢 + (1 / 4))), ((𝑢 / 2) + (1 / 2)))) = (𝑢 ∈ (0[,]1) ↦ if(𝑢 ≤ (1 / 2), if(𝑢 ≤ (1 / 4), (2 · 𝑢), (𝑢 + (1 / 4))), ((𝑢 / 2) + (1 / 2))))
7351, 55, 65, 63, 71, 72pcoass 25013 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)( ≃ph𝐽)(𝑓(*𝑝𝐽)((*𝑝𝐽)𝐹)))
7455, 65pco0 25003 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → (((*𝑝𝐽)𝐹)‘0) = (‘0))
7563, 74eqtr4d 2779 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘1) = (((*𝑝𝐽)𝐹)‘0))
7647, 51erref 8658 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → 𝑓( ≃ph𝐽)𝑓)
7765, 69pco1 25004 . . . . . . . . . . . . . . . . . . . . . 22 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)‘1) = (𝐼‘1))
7862, 74, 673eqtr4rd 2787 . . . . . . . . . . . . . . . . . . . . . 22 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = (((*𝑝𝐽)𝐹)‘0))
7977, 78eqtrd 2776 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)‘1) = (((*𝑝𝐽)𝐹)‘0))
80 eqid 2741 . . . . . . . . . . . . . . . . . . . . . . 23 ((0[,]1) × {(𝐹‘0)}) = ((0[,]1) × {(𝐹‘0)})
8120, 80pcorev2 25017 . . . . . . . . . . . . . . . . . . . . . 22 (𝐹 ∈ (II Cn 𝐽) → (𝐹(*𝑝𝐽)𝐼)( ≃ph𝐽)((0[,]1) × {(𝐹‘0)}))
8265, 81syl 17 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → (𝐹(*𝑝𝐽)𝐼)( ≃ph𝐽)((0[,]1) × {(𝐹‘0)}))
8355, 65, 71pcocn 25006 . . . . . . . . . . . . . . . . . . . . . 22 ((𝜑𝑓 𝐵 𝐵) → ((*𝑝𝐽)𝐹) ∈ (II Cn 𝐽))
8447, 83erref 8658 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → ((*𝑝𝐽)𝐹)( ≃ph𝐽)((*𝑝𝐽)𝐹))
8579, 82, 84pcohtpy 25009 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)(((0[,]1) × {(𝐹‘0)})(*𝑝𝐽)((*𝑝𝐽)𝐹)))
8674, 62eqtrd 2776 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → (((*𝑝𝐽)𝐹)‘0) = (𝐹‘0))
8780pcopt 25011 . . . . . . . . . . . . . . . . . . . . 21 ((((*𝑝𝐽)𝐹) ∈ (II Cn 𝐽) ∧ (((*𝑝𝐽)𝐹)‘0) = (𝐹‘0)) → (((0[,]1) × {(𝐹‘0)})(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((*𝑝𝐽)𝐹))
8883, 86, 87syl2anc 591 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → (((0[,]1) × {(𝐹‘0)})(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((*𝑝𝐽)𝐹))
8947, 85, 88ertrd 8654 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((*𝑝𝐽)𝐹))
90243ad2ant1 1140 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘0) = (𝐹‘1))
9190eqcomd 2747 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘1) = (𝐼‘0))
9265, 69, 83, 91, 78, 72pcoass 25013 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
9347, 89, 92ertr3d 8656 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → ((*𝑝𝐽)𝐹)( ≃ph𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
9475, 76, 93pcohtpy 25009 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)(𝑓(*𝑝𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
9569, 83, 78pcocn 25006 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽))
9669, 83pco0 25003 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0) = (𝐼‘0))
9796, 90eqtrd 2776 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0) = (𝐹‘1))
9897eqcomd 2747 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘1) = ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0))
9951, 65, 95, 61, 98, 72pcoass 25013 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))( ≃ph𝐽)(𝑓(*𝑝𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
10047, 94, 99ertr4d 8657 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
10147, 73, 100ertrd 8654 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)( ≃ph𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
10268, 70, 101pcohtpy 25009 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))( ≃ph𝐽)(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
1033adantr 482 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵) → 𝐹 ∈ (II Cn 𝐽))
10450, 103, 60pcocn 25006 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → (𝑓(*𝑝𝐽)𝐹) ∈ (II Cn 𝐽))
1051043adant3 1139 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)𝐹) ∈ (II Cn 𝐽))
10650, 103pco0 25003 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘0) = (𝑓‘0))
10726adantr 482 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵) → (𝐼‘1) = (𝐹‘0))
10857, 106, 1073eqtr4rd 2787 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → (𝐼‘1) = ((𝑓(*𝑝𝐽)𝐹)‘0))
1091083adant3 1139 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = ((𝑓(*𝑝𝐽)𝐹)‘0))
11051, 65pco1 25004 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘1) = (𝐹‘1))
111110, 97eqtr4d 2779 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘1) = ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0))
11269, 105, 95, 109, 111, 72pcoass 25013 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))( ≃ph𝐽)(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
11347, 102, 112ertr4d 8657 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))( ≃ph𝐽)((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
11447, 113erthi 8694 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → [(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))]( ≃ph𝐽) = [((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))]( ≃ph𝐽))
11513ad2ant1 1140 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → 𝐽 ∈ (TopOn‘𝑋))
11651, 55pco1 25004 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘1) = (‘1))
117116, 71eqtrd 2776 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘1) = (𝐹‘0))
1189, 1, 8, 28pi1eluni 25031 . . . . . . . . . . . . . . 15 (𝜑 → ((𝑓(*𝑝𝐽)) ∈ 𝐵 ↔ ((𝑓(*𝑝𝐽)) ∈ (II Cn 𝐽) ∧ ((𝑓(*𝑝𝐽))‘0) = (𝐹‘0) ∧ ((𝑓(*𝑝𝐽))‘1) = (𝐹‘0))))
1191183ad2ant1 1140 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)) ∈ 𝐵 ↔ ((𝑓(*𝑝𝐽)) ∈ (II Cn 𝐽) ∧ ((𝑓(*𝑝𝐽))‘0) = (𝐹‘0) ∧ ((𝑓(*𝑝𝐽))‘1) = (𝐹‘0))))
12064, 59, 117, 119mpbir3and 1350 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)) ∈ 𝐵)
1219, 15, 18, 19, 115, 65, 69, 91, 67, 120pi1xfrval 25043 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[(𝑓(*𝑝𝐽))]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))]( ≃ph𝐽))
122 eqid 2741 . . . . . . . . . . . . 13 (Base‘𝑄) = (Base‘𝑄)
123143ad2ant1 1140 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘1) ∈ 𝑋)
124 eqid 2741 . . . . . . . . . . . . 13 (+g𝑄) = (+g𝑄)
12523adantr 482 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → 𝐼 ∈ (II Cn 𝐽))
126125, 104, 108pcocn 25006 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵) → (𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽))
1271263adant3 1139 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽))
128125, 104pco0 25003 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐼‘0))
12924adantr 482 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → (𝐼‘0) = (𝐹‘1))
130128, 129eqtrd 2776 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐹‘1))
1311303adant3 1139 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐹‘1))
132125, 104pco1 25004 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = ((𝑓(*𝑝𝐽)𝐹)‘1))
13350, 103pco1 25004 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘1) = (𝐹‘1))
134132, 133eqtrd 2776 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = (𝐹‘1))
1351343adant3 1139 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = (𝐹‘1))
136 eqidd 2742 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (Base‘𝑄) = (Base‘𝑄))
13715, 115, 123, 136pi1eluni 25031 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (Base‘𝑄) ↔ ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽) ∧ ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐹‘1) ∧ ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = (𝐹‘1))))
138127, 131, 135, 137mpbir3and 1350 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (Base‘𝑄))
13969, 83pco1 25004 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘1) = (((*𝑝𝐽)𝐹)‘1))
14055, 65pco1 25004 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (((*𝑝𝐽)𝐹)‘1) = (𝐹‘1))
141139, 140eqtrd 2776 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘1) = (𝐹‘1))
14215, 115, 123, 136pi1eluni 25031 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (Base‘𝑄) ↔ ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽) ∧ ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0) = (𝐹‘1) ∧ ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘1) = (𝐹‘1))))
14395, 97, 141, 142mpbir3and 1350 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (Base‘𝑄))
14415, 122, 115, 123, 124, 138, 143pi1addval 25037 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → ([(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽)(+g𝑄)[(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽)) = [((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))]( ≃ph𝐽))
145114, 121, 1443eqtr4d 2786 . . . . . . . . . . 11 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[(𝑓(*𝑝𝐽))]( ≃ph𝐽)) = ([(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽)(+g𝑄)[(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽)))
14683ad2ant1 1140 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘0) ∈ 𝑋)
147 eqid 2741 . . . . . . . . . . . . 13 (+g𝑃) = (+g𝑃)
148 simp2 1144 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → 𝑓 𝐵)
149 simp3 1145 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → 𝐵)
1509, 18, 115, 146, 147, 148, 149pi1addval 25037 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → ([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽)) = [(𝑓(*𝑝𝐽))]( ≃ph𝐽))
151150fveq2d 6835 . . . . . . . . . . 11 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = (𝐺‘[(𝑓(*𝑝𝐽))]( ≃ph𝐽)))
1521adantr 482 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵) → 𝐽 ∈ (TopOn‘𝑋))
15325adantr 482 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵) → (𝐹‘1) = (𝐼‘0))
154 simpr 486 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵) → 𝑓 𝐵)
1559, 15, 18, 19, 152, 103, 125, 153, 107, 154pi1xfrval 25043 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵) → (𝐺‘[𝑓]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽))
1561553adant3 1139 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[𝑓]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽))
1579, 15, 18, 19, 115, 65, 69, 91, 67, 149pi1xfrval 25043 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽))
158156, 157oveq12d 7378 . . . . . . . . . . 11 ((𝜑𝑓 𝐵 𝐵) → ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))) = ([(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽)(+g𝑄)[(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽)))
159145, 151, 1583eqtr4d 2786 . . . . . . . . . 10 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))))
1601593expa 1125 . . . . . . . . 9 (((𝜑𝑓 𝐵) ∧ 𝐵) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))))
16132, 45, 160ectocld 8723 . . . . . . . 8 (((𝜑𝑓 𝐵) ∧ 𝑧 ∈ ( 𝐵 / ( ≃ph𝐽))) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
16240, 161syldan 598 . . . . . . 7 (((𝜑𝑓 𝐵) ∧ 𝑧𝐵) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
163162ralrimiva 3133 . . . . . 6 ((𝜑𝑓 𝐵) → ∀𝑧𝐵 (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
16432, 37, 163ectocld 8723 . . . . 5 ((𝜑𝑦 ∈ ( 𝐵 / ( ≃ph𝐽))) → ∀𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
16531, 164syldan 598 . . . 4 ((𝜑𝑦𝐵) → ∀𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
166165ralrimiva 3133 . . 3 (𝜑 → ∀𝑦𝐵𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
16727, 166jca 517 . 2 (𝜑 → (𝐺:𝐵⟶(Base‘𝑄) ∧ ∀𝑦𝐵𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧))))
16818, 122, 147, 124isghm 19185 . 2 (𝐺 ∈ (𝑃 GrpHom 𝑄) ↔ ((𝑃 ∈ Grp ∧ 𝑄 ∈ Grp) ∧ (𝐺:𝐵⟶(Base‘𝑄) ∧ ∀𝑦𝐵𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))))
16911, 17, 167, 168syl21anbrc 1352 1 (𝜑𝐺 ∈ (𝑃 GrpHom 𝑄))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 208  wa 397  w3a 1093   = wceq 1548  wcel 2121  wral 3055  ifcif 4457  {csn 4558  cop 4564   cuni 4841   class class class wbr 5075  cmpt 5156   × cxp 5619  ran crn 5622  wf 6485  cfv 6489  (class class class)co 7360   Er wer 8634  [cec 8635   / cqs 8636  0cc0 11033  1c1 11034   + caddc 11036   · cmul 11038  cle 11175  cmin 11372   / cdiv 11802  2c2 12231  4c4 12233  [,]cicc 13296  Basecbs 17174  +gcplusg 17215  Grpcgrp 18904   GrpHom cghm 19182  TopOnctopon 22897   Cn ccn 23211  IIcii 24864  phcphtpc 24958  *𝑝cpco 24989   π1 cpi1 24992
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1803  ax-4 1817  ax-5 1918  ax-6 1975  ax-7 2016  ax-8 2123  ax-9 2131  ax-10 2154  ax-11 2170  ax-12 2191  ax-ext 2713  ax-rep 5202  ax-sep 5221  ax-nul 5231  ax-pow 5297  ax-pr 5365  ax-un 7682  ax-cnex 11089  ax-resscn 11090  ax-1cn 11091  ax-icn 11092  ax-addcl 11093  ax-addrcl 11094  ax-mulcl 11095  ax-mulrcl 11096  ax-mulcom 11097  ax-addass 11098  ax-mulass 11099  ax-distr 11100  ax-i2m1 11101  ax-1ne0 11102  ax-1rid 11103  ax-rnegex 11104  ax-rrecex 11105  ax-cnre 11106  ax-pre-lttri 11107  ax-pre-lttrn 11108  ax-pre-ltadd 11109  ax-pre-mulgt0 11110  ax-pre-sup 11111  ax-addf 11112
This theorem depends on definitions:  df-bi 209  df-an 398  df-or 855  df-3or 1094  df-3an 1095  df-tru 1551  df-fal 1561  df-ex 1788  df-nf 1792  df-sb 2075  df-mo 2545  df-eu 2575  df-clab 2720  df-cleq 2733  df-clel 2816  df-nfc 2890  df-ne 2937  df-nel 3041  df-ral 3056  df-rex 3066  df-rmo 3346  df-reu 3347  df-rab 3394  df-v 3435  df-sbc 3726  df-csb 3834  df-dif 3888  df-un 3890  df-in 3892  df-ss 3902  df-pss 3905  df-nul 4265  df-if 4458  df-pw 4534  df-sn 4559  df-pr 4561  df-tp 4563  df-op 4565  df-uni 4842  df-int 4881  df-iun 4926  df-iin 4927  df-br 5076  df-opab 5138  df-mpt 5157  df-tr 5183  df-id 5516  df-eprel 5521  df-po 5529  df-so 5530  df-fr 5574  df-se 5575  df-we 5576  df-xp 5627  df-rel 5628  df-cnv 5629  df-co 5630  df-dm 5631  df-rn 5632  df-res 5633  df-ima 5634  df-pred 6256  df-ord 6317  df-on 6318  df-lim 6319  df-suc 6320  df-iota 6445  df-fun 6491  df-fn 6492  df-f 6493  df-f1 6494  df-fo 6495  df-f1o 6496  df-fv 6497  df-isom 6498  df-riota 7317  df-ov 7363  df-oprab 7364  df-mpo 7365  df-of 7624  df-om 7811  df-1st 7935  df-2nd 7936  df-supp 8105  df-frecs 8225  df-wrecs 8256  df-recs 8305  df-rdg 8343  df-1o 8399  df-2o 8400  df-er 8637  df-ec 8639  df-qs 8643  df-map 8769  df-ixp 8840  df-en 8888  df-dom 8889  df-sdom 8890  df-fin 8891  df-fsupp 9269  df-fi 9318  df-sup 9349  df-inf 9350  df-oi 9419  df-card 9858  df-pnf 11176  df-mnf 11177  df-xr 11178  df-ltxr 11179  df-le 11180  df-sub 11374  df-neg 11375  df-div 11803  df-nn 12170  df-2 12239  df-3 12240  df-4 12241  df-5 12242  df-6 12243  df-7 12244  df-8 12245  df-9 12246  df-n0 12433  df-z 12520  df-dec 12640  df-uz 12784  df-q 12894  df-rp 12938  df-xneg 13058  df-xadd 13059  df-xmul 13060  df-ioo 13297  df-icc 13300  df-fz 13457  df-fzo 13604  df-seq 13959  df-exp 14019  df-hash 14288  df-cj 15056  df-re 15057  df-im 15058  df-sqrt 15192  df-abs 15193  df-struct 17112  df-sets 17129  df-slot 17147  df-ndx 17159  df-base 17175  df-ress 17196  df-plusg 17228  df-mulr 17229  df-starv 17230  df-sca 17231  df-vsca 17232  df-ip 17233  df-tset 17234  df-ple 17235  df-ds 17237  df-unif 17238  df-hom 17239  df-cco 17240  df-rest 17380  df-topn 17381  df-0g 17399  df-gsum 17400  df-topgen 17401  df-pt 17402  df-prds 17405  df-xrs 17461  df-qtop 17466  df-imas 17467  df-qus 17468  df-xps 17469  df-mre 17543  df-mrc 17544  df-acs 17546  df-mgm 18603  df-sgrp 18682  df-mnd 18698  df-submnd 18747  df-grp 18907  df-mulg 19039  df-ghm 19183  df-cntz 19287  df-cmn 19752  df-psmet 21343  df-xmet 21344  df-met 21345  df-bl 21346  df-mopn 21347  df-cnfld 21352  df-top 22881  df-topon 22898  df-topsp 22920  df-bases 22933  df-cld 23006  df-cn 23214  df-cnp 23215  df-tx 23549  df-hmeo 23742  df-xms 24307  df-ms 24308  df-tms 24309  df-ii 24866  df-htpy 24959  df-phtpy 24960  df-phtpc 24981  df-pco 24994  df-om1 24995  df-pi1 24997
This theorem is referenced by:  pi1xfrcnv  25046  pi1xfrgim  25047
  Copyright terms: Public domain W3C validator