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

Theorem pi1xfr 25101
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 24918 . . . . 5 II ∈ (TopOn‘(0[,]1))
3 pi1xfr.f . . . . 5 (𝜑𝐹 ∈ (II Cn 𝐽))
4 cnf2 23272 . . . . 5 ((II ∈ (TopOn‘(0[,]1)) ∧ 𝐽 ∈ (TopOn‘𝑋) ∧ 𝐹 ∈ (II Cn 𝐽)) → 𝐹:(0[,]1)⟶𝑋)
52, 1, 3, 4mp3an2i 1465 . . . 4 (𝜑𝐹:(0[,]1)⟶𝑋)
6 0elunit 13505 . . . 4 0 ∈ (0[,]1)
7 ffvelcdm 7100 . . . 4 ((𝐹:(0[,]1)⟶𝑋 ∧ 0 ∈ (0[,]1)) → (𝐹‘0) ∈ 𝑋)
85, 6, 7sylancl 586 . . 3 (𝜑 → (𝐹‘0) ∈ 𝑋)
9 pi1xfr.p . . . 4 𝑃 = (𝐽 π1 (𝐹‘0))
109pi1grp 25096 . . 3 ((𝐽 ∈ (TopOn‘𝑋) ∧ (𝐹‘0) ∈ 𝑋) → 𝑃 ∈ Grp)
111, 8, 10syl2anc 584 . 2 (𝜑𝑃 ∈ Grp)
12 1elunit 13506 . . . 4 1 ∈ (0[,]1)
13 ffvelcdm 7100 . . . 4 ((𝐹:(0[,]1)⟶𝑋 ∧ 1 ∈ (0[,]1)) → (𝐹‘1) ∈ 𝑋)
145, 12, 13sylancl 586 . . 3 (𝜑 → (𝐹‘1) ∈ 𝑋)
15 pi1xfr.q . . . 4 𝑄 = (𝐽 π1 (𝐹‘1))
1615pi1grp 25096 . . 3 ((𝐽 ∈ (TopOn‘𝑋) ∧ (𝐹‘1) ∈ 𝑋) → 𝑄 ∈ Grp)
171, 14, 16syl2anc 584 . 2 (𝜑𝑄 ∈ Grp)
18 pi1xfr.b . . . 4 𝐵 = (Base‘𝑃)
19 pi1xfr.g . . . 4 𝐺 = ran (𝑔 𝐵 ↦ ⟨[𝑔]( ≃ph𝐽), [(𝐼(*𝑝𝐽)(𝑔(*𝑝𝐽)𝐹))]( ≃ph𝐽)⟩)
20 pi1xfr.i . . . . . . 7 𝐼 = (𝑥 ∈ (0[,]1) ↦ (𝐹‘(1 − 𝑥)))
2120pcorevcl 25071 . . . . . 6 (𝐹 ∈ (II Cn 𝐽) → (𝐼 ∈ (II Cn 𝐽) ∧ (𝐼‘0) = (𝐹‘1) ∧ (𝐼‘1) = (𝐹‘0)))
223, 21syl 17 . . . . 5 (𝜑 → (𝐼 ∈ (II Cn 𝐽) ∧ (𝐼‘0) = (𝐹‘1) ∧ (𝐼‘1) = (𝐹‘0)))
2322simp1d 1141 . . . 4 (𝜑𝐼 ∈ (II Cn 𝐽))
2422simp2d 1142 . . . . 5 (𝜑 → (𝐼‘0) = (𝐹‘1))
2524eqcomd 2740 . . . 4 (𝜑 → (𝐹‘1) = (𝐼‘0))
2622simp3d 1143 . . . 4 (𝜑 → (𝐼‘1) = (𝐹‘0))
279, 15, 18, 19, 1, 3, 23, 25, 26pi1xfrf 25099 . . 3 (𝜑𝐺:𝐵⟶(Base‘𝑄))
2818a1i 11 . . . . . . . 8 (𝜑𝐵 = (Base‘𝑃))
299, 1, 8, 28pi1bas2 25087 . . . . . . 7 (𝜑𝐵 = ( 𝐵 / ( ≃ph𝐽)))
3029eleq2d 2824 . . . . . 6 (𝜑 → (𝑦𝐵𝑦 ∈ ( 𝐵 / ( ≃ph𝐽))))
3130biimpa 476 . . . . 5 ((𝜑𝑦𝐵) → 𝑦 ∈ ( 𝐵 / ( ≃ph𝐽)))
32 eqid 2734 . . . . . 6 ( 𝐵 / ( ≃ph𝐽)) = ( 𝐵 / ( ≃ph𝐽))
33 fvoveq1 7453 . . . . . . . 8 ([𝑓]( ≃ph𝐽) = 𝑦 → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = (𝐺‘(𝑦(+g𝑃)𝑧)))
34 fveq2 6906 . . . . . . . . 9 ([𝑓]( ≃ph𝐽) = 𝑦 → (𝐺‘[𝑓]( ≃ph𝐽)) = (𝐺𝑦))
3534oveq1d 7445 . . . . . . . 8 ([𝑓]( ≃ph𝐽) = 𝑦 → ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
3633, 35eqeq12d 2750 . . . . . . 7 ([𝑓]( ≃ph𝐽) = 𝑦 → ((𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)) ↔ (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧))))
3736ralbidv 3175 . . . . . 6 ([𝑓]( ≃ph𝐽) = 𝑦 → (∀𝑧𝐵 (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)) ↔ ∀𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧))))
3829eleq2d 2824 . . . . . . . . . 10 (𝜑 → (𝑧𝐵𝑧 ∈ ( 𝐵 / ( ≃ph𝐽))))
3938biimpa 476 . . . . . . . . 9 ((𝜑𝑧𝐵) → 𝑧 ∈ ( 𝐵 / ( ≃ph𝐽)))
4039adantlr 715 . . . . . . . 8 (((𝜑𝑓 𝐵) ∧ 𝑧𝐵) → 𝑧 ∈ ( 𝐵 / ( ≃ph𝐽)))
41 oveq2 7438 . . . . . . . . . . 11 ([]( ≃ph𝐽) = 𝑧 → ([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽)) = ([𝑓]( ≃ph𝐽)(+g𝑃)𝑧))
4241fveq2d 6910 . . . . . . . . . 10 ([]( ≃ph𝐽) = 𝑧 → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)))
43 fveq2 6906 . . . . . . . . . . 11 ([]( ≃ph𝐽) = 𝑧 → (𝐺‘[]( ≃ph𝐽)) = (𝐺𝑧))
4443oveq2d 7446 . . . . . . . . . 10 ([]( ≃ph𝐽) = 𝑧 → ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
4542, 44eqeq12d 2750 . . . . . . . . 9 ([]( ≃ph𝐽) = 𝑧 → ((𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))) ↔ (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧))))
46 phtpcer 25040 . . . . . . . . . . . . . 14 ( ≃ph𝐽) Er (II Cn 𝐽)
4746a1i 11 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → ( ≃ph𝐽) Er (II Cn 𝐽))
489, 1, 8, 28pi1eluni 25088 . . . . . . . . . . . . . . . . . . . . 21 (𝜑 → (𝑓 𝐵 ↔ (𝑓 ∈ (II Cn 𝐽) ∧ (𝑓‘0) = (𝐹‘0) ∧ (𝑓‘1) = (𝐹‘0))))
4948biimpa 476 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵) → (𝑓 ∈ (II Cn 𝐽) ∧ (𝑓‘0) = (𝐹‘0) ∧ (𝑓‘1) = (𝐹‘0)))
5049simp1d 1141 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵) → 𝑓 ∈ (II Cn 𝐽))
51503adant3 1131 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → 𝑓 ∈ (II Cn 𝐽))
529, 1, 8, 28pi1eluni 25088 . . . . . . . . . . . . . . . . . . . . 21 (𝜑 → ( 𝐵 ↔ ( ∈ (II Cn 𝐽) ∧ (‘0) = (𝐹‘0) ∧ (‘1) = (𝐹‘0))))
5352adantr 480 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵) → ( 𝐵 ↔ ( ∈ (II Cn 𝐽) ∧ (‘0) = (𝐹‘0) ∧ (‘1) = (𝐹‘0))))
5453biimp3a 1468 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ( ∈ (II Cn 𝐽) ∧ (‘0) = (𝐹‘0) ∧ (‘1) = (𝐹‘0)))
5554simp1d 1141 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → ∈ (II Cn 𝐽))
5651, 55pco0 25060 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘0) = (𝑓‘0))
5749simp2d 1142 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵) → (𝑓‘0) = (𝐹‘0))
58573adant3 1131 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘0) = (𝐹‘0))
5956, 58eqtrd 2774 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘0) = (𝐹‘0))
6049simp3d 1143 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵) → (𝑓‘1) = (𝐹‘0))
61603adant3 1131 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘1) = (𝐹‘0))
6254simp2d 1142 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → (‘0) = (𝐹‘0))
6361, 62eqtr4d 2777 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘1) = (‘0))
6451, 55, 63pcocn 25063 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)) ∈ (II Cn 𝐽))
6533ad2ant1 1132 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → 𝐹 ∈ (II Cn 𝐽))
6664, 65pco0 25060 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → (((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)‘0) = ((𝑓(*𝑝𝐽))‘0))
67263ad2ant1 1132 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = (𝐹‘0))
6859, 66, 673eqtr4rd 2785 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = (((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)‘0))
69233ad2ant1 1132 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → 𝐼 ∈ (II Cn 𝐽))
7047, 69erref 8763 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → 𝐼( ≃ph𝐽)𝐼)
7154simp3d 1143 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (‘1) = (𝐹‘0))
72 eqid 2734 . . . . . . . . . . . . . . . . 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 25070 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)( ≃ph𝐽)(𝑓(*𝑝𝐽)((*𝑝𝐽)𝐹)))
7455, 65pco0 25060 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → (((*𝑝𝐽)𝐹)‘0) = (‘0))
7563, 74eqtr4d 2777 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘1) = (((*𝑝𝐽)𝐹)‘0))
7647, 51erref 8763 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → 𝑓( ≃ph𝐽)𝑓)
7765, 69pco1 25061 . . . . . . . . . . . . . . . . . . . . . 22 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)‘1) = (𝐼‘1))
7862, 74, 673eqtr4rd 2785 . . . . . . . . . . . . . . . . . . . . . 22 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = (((*𝑝𝐽)𝐹)‘0))
7977, 78eqtrd 2774 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)‘1) = (((*𝑝𝐽)𝐹)‘0))
80 eqid 2734 . . . . . . . . . . . . . . . . . . . . . . 23 ((0[,]1) × {(𝐹‘0)}) = ((0[,]1) × {(𝐹‘0)})
8120, 80pcorev2 25074 . . . . . . . . . . . . . . . . . . . . . 22 (𝐹 ∈ (II Cn 𝐽) → (𝐹(*𝑝𝐽)𝐼)( ≃ph𝐽)((0[,]1) × {(𝐹‘0)}))
8265, 81syl 17 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → (𝐹(*𝑝𝐽)𝐼)( ≃ph𝐽)((0[,]1) × {(𝐹‘0)}))
8355, 65, 71pcocn 25063 . . . . . . . . . . . . . . . . . . . . . 22 ((𝜑𝑓 𝐵 𝐵) → ((*𝑝𝐽)𝐹) ∈ (II Cn 𝐽))
8447, 83erref 8763 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → ((*𝑝𝐽)𝐹)( ≃ph𝐽)((*𝑝𝐽)𝐹))
8579, 82, 84pcohtpy 25066 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)(((0[,]1) × {(𝐹‘0)})(*𝑝𝐽)((*𝑝𝐽)𝐹)))
8674, 62eqtrd 2774 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → (((*𝑝𝐽)𝐹)‘0) = (𝐹‘0))
8780pcopt 25068 . . . . . . . . . . . . . . . . . . . . 21 ((((*𝑝𝐽)𝐹) ∈ (II Cn 𝐽) ∧ (((*𝑝𝐽)𝐹)‘0) = (𝐹‘0)) → (((0[,]1) × {(𝐹‘0)})(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((*𝑝𝐽)𝐹))
8883, 86, 87syl2anc 584 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → (((0[,]1) × {(𝐹‘0)})(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((*𝑝𝐽)𝐹))
8947, 85, 88ertrd 8759 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((*𝑝𝐽)𝐹))
90243ad2ant1 1132 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘0) = (𝐹‘1))
9190eqcomd 2740 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘1) = (𝐼‘0))
9265, 69, 83, 91, 78, 72pcoass 25070 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
9347, 89, 92ertr3d 8761 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → ((*𝑝𝐽)𝐹)( ≃ph𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
9475, 76, 93pcohtpy 25066 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)(𝑓(*𝑝𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
9569, 83, 78pcocn 25063 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽))
9669, 83pco0 25060 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0) = (𝐼‘0))
9796, 90eqtrd 2774 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0) = (𝐹‘1))
9897eqcomd 2740 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘1) = ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0))
9951, 65, 95, 61, 98, 72pcoass 25070 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))( ≃ph𝐽)(𝑓(*𝑝𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
10047, 94, 99ertr4d 8762 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
10147, 73, 100ertrd 8759 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)( ≃ph𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
10268, 70, 101pcohtpy 25066 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))( ≃ph𝐽)(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
1033adantr 480 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵) → 𝐹 ∈ (II Cn 𝐽))
10450, 103, 60pcocn 25063 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → (𝑓(*𝑝𝐽)𝐹) ∈ (II Cn 𝐽))
1051043adant3 1131 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)𝐹) ∈ (II Cn 𝐽))
10650, 103pco0 25060 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘0) = (𝑓‘0))
10726adantr 480 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵) → (𝐼‘1) = (𝐹‘0))
10857, 106, 1073eqtr4rd 2785 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → (𝐼‘1) = ((𝑓(*𝑝𝐽)𝐹)‘0))
1091083adant3 1131 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = ((𝑓(*𝑝𝐽)𝐹)‘0))
11051, 65pco1 25061 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘1) = (𝐹‘1))
111110, 97eqtr4d 2777 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘1) = ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0))
11269, 105, 95, 109, 111, 72pcoass 25070 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))( ≃ph𝐽)(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
11347, 102, 112ertr4d 8762 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))( ≃ph𝐽)((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
11447, 113erthi 8796 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → [(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))]( ≃ph𝐽) = [((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))]( ≃ph𝐽))
11513ad2ant1 1132 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → 𝐽 ∈ (TopOn‘𝑋))
11651, 55pco1 25061 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘1) = (‘1))
117116, 71eqtrd 2774 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘1) = (𝐹‘0))
1189, 1, 8, 28pi1eluni 25088 . . . . . . . . . . . . . . 15 (𝜑 → ((𝑓(*𝑝𝐽)) ∈ 𝐵 ↔ ((𝑓(*𝑝𝐽)) ∈ (II Cn 𝐽) ∧ ((𝑓(*𝑝𝐽))‘0) = (𝐹‘0) ∧ ((𝑓(*𝑝𝐽))‘1) = (𝐹‘0))))
1191183ad2ant1 1132 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)) ∈ 𝐵 ↔ ((𝑓(*𝑝𝐽)) ∈ (II Cn 𝐽) ∧ ((𝑓(*𝑝𝐽))‘0) = (𝐹‘0) ∧ ((𝑓(*𝑝𝐽))‘1) = (𝐹‘0))))
12064, 59, 117, 119mpbir3and 1341 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)) ∈ 𝐵)
1219, 15, 18, 19, 115, 65, 69, 91, 67, 120pi1xfrval 25100 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[(𝑓(*𝑝𝐽))]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))]( ≃ph𝐽))
122 eqid 2734 . . . . . . . . . . . . 13 (Base‘𝑄) = (Base‘𝑄)
123143ad2ant1 1132 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘1) ∈ 𝑋)
124 eqid 2734 . . . . . . . . . . . . 13 (+g𝑄) = (+g𝑄)
12523adantr 480 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → 𝐼 ∈ (II Cn 𝐽))
126125, 104, 108pcocn 25063 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵) → (𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽))
1271263adant3 1131 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽))
128125, 104pco0 25060 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐼‘0))
12924adantr 480 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → (𝐼‘0) = (𝐹‘1))
130128, 129eqtrd 2774 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐹‘1))
1311303adant3 1131 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐹‘1))
132125, 104pco1 25061 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = ((𝑓(*𝑝𝐽)𝐹)‘1))
13350, 103pco1 25061 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘1) = (𝐹‘1))
134132, 133eqtrd 2774 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = (𝐹‘1))
1351343adant3 1131 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = (𝐹‘1))
136 eqidd 2735 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (Base‘𝑄) = (Base‘𝑄))
13715, 115, 123, 136pi1eluni 25088 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (Base‘𝑄) ↔ ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽) ∧ ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐹‘1) ∧ ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = (𝐹‘1))))
138127, 131, 135, 137mpbir3and 1341 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (Base‘𝑄))
13969, 83pco1 25061 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘1) = (((*𝑝𝐽)𝐹)‘1))
14055, 65pco1 25061 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (((*𝑝𝐽)𝐹)‘1) = (𝐹‘1))
141139, 140eqtrd 2774 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘1) = (𝐹‘1))
14215, 115, 123, 136pi1eluni 25088 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (Base‘𝑄) ↔ ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽) ∧ ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0) = (𝐹‘1) ∧ ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘1) = (𝐹‘1))))
14395, 97, 141, 142mpbir3and 1341 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (Base‘𝑄))
14415, 122, 115, 123, 124, 138, 143pi1addval 25094 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → ([(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽)(+g𝑄)[(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽)) = [((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))]( ≃ph𝐽))
145114, 121, 1443eqtr4d 2784 . . . . . . . . . . 11 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[(𝑓(*𝑝𝐽))]( ≃ph𝐽)) = ([(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽)(+g𝑄)[(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽)))
14683ad2ant1 1132 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘0) ∈ 𝑋)
147 eqid 2734 . . . . . . . . . . . . 13 (+g𝑃) = (+g𝑃)
148 simp2 1136 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → 𝑓 𝐵)
149 simp3 1137 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → 𝐵)
1509, 18, 115, 146, 147, 148, 149pi1addval 25094 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → ([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽)) = [(𝑓(*𝑝𝐽))]( ≃ph𝐽))
151150fveq2d 6910 . . . . . . . . . . 11 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = (𝐺‘[(𝑓(*𝑝𝐽))]( ≃ph𝐽)))
1521adantr 480 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵) → 𝐽 ∈ (TopOn‘𝑋))
15325adantr 480 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵) → (𝐹‘1) = (𝐼‘0))
154 simpr 484 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵) → 𝑓 𝐵)
1559, 15, 18, 19, 152, 103, 125, 153, 107, 154pi1xfrval 25100 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵) → (𝐺‘[𝑓]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽))
1561553adant3 1131 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[𝑓]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽))
1579, 15, 18, 19, 115, 65, 69, 91, 67, 149pi1xfrval 25100 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽))
158156, 157oveq12d 7448 . . . . . . . . . . 11 ((𝜑𝑓 𝐵 𝐵) → ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))) = ([(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽)(+g𝑄)[(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽)))
159145, 151, 1583eqtr4d 2784 . . . . . . . . . 10 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))))
1601593expa 1117 . . . . . . . . 9 (((𝜑𝑓 𝐵) ∧ 𝐵) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))))
16132, 45, 160ectocld 8822 . . . . . . . 8 (((𝜑𝑓 𝐵) ∧ 𝑧 ∈ ( 𝐵 / ( ≃ph𝐽))) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
16240, 161syldan 591 . . . . . . 7 (((𝜑𝑓 𝐵) ∧ 𝑧𝐵) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
163162ralrimiva 3143 . . . . . 6 ((𝜑𝑓 𝐵) → ∀𝑧𝐵 (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
16432, 37, 163ectocld 8822 . . . . 5 ((𝜑𝑦 ∈ ( 𝐵 / ( ≃ph𝐽))) → ∀𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
16531, 164syldan 591 . . . 4 ((𝜑𝑦𝐵) → ∀𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
166165ralrimiva 3143 . . 3 (𝜑 → ∀𝑦𝐵𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
16727, 166jca 511 . 2 (𝜑 → (𝐺:𝐵⟶(Base‘𝑄) ∧ ∀𝑦𝐵𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧))))
16818, 122, 147, 124isghm 19245 . 2 (𝐺 ∈ (𝑃 GrpHom 𝑄) ↔ ((𝑃 ∈ Grp ∧ 𝑄 ∈ Grp) ∧ (𝐺:𝐵⟶(Base‘𝑄) ∧ ∀𝑦𝐵𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))))
16911, 17, 167, 168syl21anbrc 1343 1 (𝜑𝐺 ∈ (𝑃 GrpHom 𝑄))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1086   = wceq 1536  wcel 2105  wral 3058  ifcif 4530  {csn 4630  cop 4636   cuni 4911   class class class wbr 5147  cmpt 5230   × cxp 5686  ran crn 5689  wf 6558  cfv 6562  (class class class)co 7430   Er wer 8740  [cec 8741   / cqs 8742  0cc0 11152  1c1 11153   + caddc 11155   · cmul 11157  cle 11293  cmin 11489   / cdiv 11917  2c2 12318  4c4 12320  [,]cicc 13386  Basecbs 17244  +gcplusg 17297  Grpcgrp 18963   GrpHom cghm 19242  TopOnctopon 22931   Cn ccn 23247  IIcii 24914  phcphtpc 25014  *𝑝cpco 25046   π1 cpi1 25049
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1791  ax-4 1805  ax-5 1907  ax-6 1964  ax-7 2004  ax-8 2107  ax-9 2115  ax-10 2138  ax-11 2154  ax-12 2174  ax-ext 2705  ax-rep 5284  ax-sep 5301  ax-nul 5311  ax-pow 5370  ax-pr 5437  ax-un 7753  ax-cnex 11208  ax-resscn 11209  ax-1cn 11210  ax-icn 11211  ax-addcl 11212  ax-addrcl 11213  ax-mulcl 11214  ax-mulrcl 11215  ax-mulcom 11216  ax-addass 11217  ax-mulass 11218  ax-distr 11219  ax-i2m1 11220  ax-1ne0 11221  ax-1rid 11222  ax-rnegex 11223  ax-rrecex 11224  ax-cnre 11225  ax-pre-lttri 11226  ax-pre-lttrn 11227  ax-pre-ltadd 11228  ax-pre-mulgt0 11229  ax-pre-sup 11230  ax-addf 11231
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3or 1087  df-3an 1088  df-tru 1539  df-fal 1549  df-ex 1776  df-nf 1780  df-sb 2062  df-mo 2537  df-eu 2566  df-clab 2712  df-cleq 2726  df-clel 2813  df-nfc 2889  df-ne 2938  df-nel 3044  df-ral 3059  df-rex 3068  df-rmo 3377  df-reu 3378  df-rab 3433  df-v 3479  df-sbc 3791  df-csb 3908  df-dif 3965  df-un 3967  df-in 3969  df-ss 3979  df-pss 3982  df-nul 4339  df-if 4531  df-pw 4606  df-sn 4631  df-pr 4633  df-tp 4635  df-op 4637  df-uni 4912  df-int 4951  df-iun 4997  df-iin 4998  df-br 5148  df-opab 5210  df-mpt 5231  df-tr 5265  df-id 5582  df-eprel 5588  df-po 5596  df-so 5597  df-fr 5640  df-se 5641  df-we 5642  df-xp 5694  df-rel 5695  df-cnv 5696  df-co 5697  df-dm 5698  df-rn 5699  df-res 5700  df-ima 5701  df-pred 6322  df-ord 6388  df-on 6389  df-lim 6390  df-suc 6391  df-iota 6515  df-fun 6564  df-fn 6565  df-f 6566  df-f1 6567  df-fo 6568  df-f1o 6569  df-fv 6570  df-isom 6571  df-riota 7387  df-ov 7433  df-oprab 7434  df-mpo 7435  df-of 7696  df-om 7887  df-1st 8012  df-2nd 8013  df-supp 8184  df-frecs 8304  df-wrecs 8335  df-recs 8409  df-rdg 8448  df-1o 8504  df-2o 8505  df-er 8743  df-ec 8745  df-qs 8749  df-map 8866  df-ixp 8936  df-en 8984  df-dom 8985  df-sdom 8986  df-fin 8987  df-fsupp 9399  df-fi 9448  df-sup 9479  df-inf 9480  df-oi 9547  df-card 9976  df-pnf 11294  df-mnf 11295  df-xr 11296  df-ltxr 11297  df-le 11298  df-sub 11491  df-neg 11492  df-div 11918  df-nn 12264  df-2 12326  df-3 12327  df-4 12328  df-5 12329  df-6 12330  df-7 12331  df-8 12332  df-9 12333  df-n0 12524  df-z 12611  df-dec 12731  df-uz 12876  df-q 12988  df-rp 13032  df-xneg 13151  df-xadd 13152  df-xmul 13153  df-ioo 13387  df-icc 13390  df-fz 13544  df-fzo 13691  df-seq 14039  df-exp 14099  df-hash 14366  df-cj 15134  df-re 15135  df-im 15136  df-sqrt 15270  df-abs 15271  df-struct 17180  df-sets 17197  df-slot 17215  df-ndx 17227  df-base 17245  df-ress 17274  df-plusg 17310  df-mulr 17311  df-starv 17312  df-sca 17313  df-vsca 17314  df-ip 17315  df-tset 17316  df-ple 17317  df-ds 17319  df-unif 17320  df-hom 17321  df-cco 17322  df-rest 17468  df-topn 17469  df-0g 17487  df-gsum 17488  df-topgen 17489  df-pt 17490  df-prds 17493  df-xrs 17548  df-qtop 17553  df-imas 17554  df-qus 17555  df-xps 17556  df-mre 17630  df-mrc 17631  df-acs 17633  df-mgm 18665  df-sgrp 18744  df-mnd 18760  df-submnd 18809  df-grp 18966  df-mulg 19098  df-ghm 19243  df-cntz 19347  df-cmn 19814  df-psmet 21373  df-xmet 21374  df-met 21375  df-bl 21376  df-mopn 21377  df-cnfld 21382  df-top 22915  df-topon 22932  df-topsp 22954  df-bases 22968  df-cld 23042  df-cn 23250  df-cnp 23251  df-tx 23585  df-hmeo 23778  df-xms 24345  df-ms 24346  df-tms 24347  df-ii 24916  df-htpy 25015  df-phtpy 25016  df-phtpc 25037  df-pco 25051  df-om1 25052  df-pi1 25054
This theorem is referenced by:  pi1xfrcnv  25103  pi1xfrgim  25104
  Copyright terms: Public domain W3C validator