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

Theorem pi1xfr 25015
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 24832 . . . . 5 II ∈ (TopOn‘(0[,]1))
3 pi1xfr.f . . . . 5 (𝜑𝐹 ∈ (II Cn 𝐽))
4 cnf2 23197 . . . . 5 ((II ∈ (TopOn‘(0[,]1)) ∧ 𝐽 ∈ (TopOn‘𝑋) ∧ 𝐹 ∈ (II Cn 𝐽)) → 𝐹:(0[,]1)⟶𝑋)
52, 1, 3, 4mp3an2i 1469 . . . 4 (𝜑𝐹:(0[,]1)⟶𝑋)
6 0elunit 13389 . . . 4 0 ∈ (0[,]1)
7 ffvelcdm 7028 . . . 4 ((𝐹:(0[,]1)⟶𝑋 ∧ 0 ∈ (0[,]1)) → (𝐹‘0) ∈ 𝑋)
85, 6, 7sylancl 587 . . 3 (𝜑 → (𝐹‘0) ∈ 𝑋)
9 pi1xfr.p . . . 4 𝑃 = (𝐽 π1 (𝐹‘0))
109pi1grp 25010 . . 3 ((𝐽 ∈ (TopOn‘𝑋) ∧ (𝐹‘0) ∈ 𝑋) → 𝑃 ∈ Grp)
111, 8, 10syl2anc 585 . 2 (𝜑𝑃 ∈ Grp)
12 1elunit 13390 . . . 4 1 ∈ (0[,]1)
13 ffvelcdm 7028 . . . 4 ((𝐹:(0[,]1)⟶𝑋 ∧ 1 ∈ (0[,]1)) → (𝐹‘1) ∈ 𝑋)
145, 12, 13sylancl 587 . . 3 (𝜑 → (𝐹‘1) ∈ 𝑋)
15 pi1xfr.q . . . 4 𝑄 = (𝐽 π1 (𝐹‘1))
1615pi1grp 25010 . . 3 ((𝐽 ∈ (TopOn‘𝑋) ∧ (𝐹‘1) ∈ 𝑋) → 𝑄 ∈ Grp)
171, 14, 16syl2anc 585 . 2 (𝜑𝑄 ∈ Grp)
18 pi1xfr.b . . . 4 𝐵 = (Base‘𝑃)
19 pi1xfr.g . . . 4 𝐺 = ran (𝑔 𝐵 ↦ ⟨[𝑔]( ≃ph𝐽), [(𝐼(*𝑝𝐽)(𝑔(*𝑝𝐽)𝐹))]( ≃ph𝐽)⟩)
20 pi1xfr.i . . . . . . 7 𝐼 = (𝑥 ∈ (0[,]1) ↦ (𝐹‘(1 − 𝑥)))
2120pcorevcl 24985 . . . . . 6 (𝐹 ∈ (II Cn 𝐽) → (𝐼 ∈ (II Cn 𝐽) ∧ (𝐼‘0) = (𝐹‘1) ∧ (𝐼‘1) = (𝐹‘0)))
223, 21syl 17 . . . . 5 (𝜑 → (𝐼 ∈ (II Cn 𝐽) ∧ (𝐼‘0) = (𝐹‘1) ∧ (𝐼‘1) = (𝐹‘0)))
2322simp1d 1143 . . . 4 (𝜑𝐼 ∈ (II Cn 𝐽))
2422simp2d 1144 . . . . 5 (𝜑 → (𝐼‘0) = (𝐹‘1))
2524eqcomd 2743 . . . 4 (𝜑 → (𝐹‘1) = (𝐼‘0))
2622simp3d 1145 . . . 4 (𝜑 → (𝐼‘1) = (𝐹‘0))
279, 15, 18, 19, 1, 3, 23, 25, 26pi1xfrf 25013 . . 3 (𝜑𝐺:𝐵⟶(Base‘𝑄))
2818a1i 11 . . . . . . . 8 (𝜑𝐵 = (Base‘𝑃))
299, 1, 8, 28pi1bas2 25001 . . . . . . 7 (𝜑𝐵 = ( 𝐵 / ( ≃ph𝐽)))
3029eleq2d 2823 . . . . . 6 (𝜑 → (𝑦𝐵𝑦 ∈ ( 𝐵 / ( ≃ph𝐽))))
3130biimpa 476 . . . . 5 ((𝜑𝑦𝐵) → 𝑦 ∈ ( 𝐵 / ( ≃ph𝐽)))
32 eqid 2737 . . . . . 6 ( 𝐵 / ( ≃ph𝐽)) = ( 𝐵 / ( ≃ph𝐽))
33 fvoveq1 7383 . . . . . . . 8 ([𝑓]( ≃ph𝐽) = 𝑦 → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = (𝐺‘(𝑦(+g𝑃)𝑧)))
34 fveq2 6835 . . . . . . . . 9 ([𝑓]( ≃ph𝐽) = 𝑦 → (𝐺‘[𝑓]( ≃ph𝐽)) = (𝐺𝑦))
3534oveq1d 7375 . . . . . . . 8 ([𝑓]( ≃ph𝐽) = 𝑦 → ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
3633, 35eqeq12d 2753 . . . . . . 7 ([𝑓]( ≃ph𝐽) = 𝑦 → ((𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)) ↔ (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧))))
3736ralbidv 3160 . . . . . 6 ([𝑓]( ≃ph𝐽) = 𝑦 → (∀𝑧𝐵 (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)) ↔ ∀𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧))))
3829eleq2d 2823 . . . . . . . . . 10 (𝜑 → (𝑧𝐵𝑧 ∈ ( 𝐵 / ( ≃ph𝐽))))
3938biimpa 476 . . . . . . . . 9 ((𝜑𝑧𝐵) → 𝑧 ∈ ( 𝐵 / ( ≃ph𝐽)))
4039adantlr 716 . . . . . . . 8 (((𝜑𝑓 𝐵) ∧ 𝑧𝐵) → 𝑧 ∈ ( 𝐵 / ( ≃ph𝐽)))
41 oveq2 7368 . . . . . . . . . . 11 ([]( ≃ph𝐽) = 𝑧 → ([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽)) = ([𝑓]( ≃ph𝐽)(+g𝑃)𝑧))
4241fveq2d 6839 . . . . . . . . . 10 ([]( ≃ph𝐽) = 𝑧 → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)))
43 fveq2 6835 . . . . . . . . . . 11 ([]( ≃ph𝐽) = 𝑧 → (𝐺‘[]( ≃ph𝐽)) = (𝐺𝑧))
4443oveq2d 7376 . . . . . . . . . 10 ([]( ≃ph𝐽) = 𝑧 → ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
4542, 44eqeq12d 2753 . . . . . . . . 9 ([]( ≃ph𝐽) = 𝑧 → ((𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))) ↔ (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧))))
46 phtpcer 24954 . . . . . . . . . . . . . 14 ( ≃ph𝐽) Er (II Cn 𝐽)
4746a1i 11 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → ( ≃ph𝐽) Er (II Cn 𝐽))
489, 1, 8, 28pi1eluni 25002 . . . . . . . . . . . . . . . . . . . . 21 (𝜑 → (𝑓 𝐵 ↔ (𝑓 ∈ (II Cn 𝐽) ∧ (𝑓‘0) = (𝐹‘0) ∧ (𝑓‘1) = (𝐹‘0))))
4948biimpa 476 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵) → (𝑓 ∈ (II Cn 𝐽) ∧ (𝑓‘0) = (𝐹‘0) ∧ (𝑓‘1) = (𝐹‘0)))
5049simp1d 1143 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵) → 𝑓 ∈ (II Cn 𝐽))
51503adant3 1133 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → 𝑓 ∈ (II Cn 𝐽))
529, 1, 8, 28pi1eluni 25002 . . . . . . . . . . . . . . . . . . . . 21 (𝜑 → ( 𝐵 ↔ ( ∈ (II Cn 𝐽) ∧ (‘0) = (𝐹‘0) ∧ (‘1) = (𝐹‘0))))
5352adantr 480 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵) → ( 𝐵 ↔ ( ∈ (II Cn 𝐽) ∧ (‘0) = (𝐹‘0) ∧ (‘1) = (𝐹‘0))))
5453biimp3a 1472 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ( ∈ (II Cn 𝐽) ∧ (‘0) = (𝐹‘0) ∧ (‘1) = (𝐹‘0)))
5554simp1d 1143 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → ∈ (II Cn 𝐽))
5651, 55pco0 24974 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘0) = (𝑓‘0))
5749simp2d 1144 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵) → (𝑓‘0) = (𝐹‘0))
58573adant3 1133 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘0) = (𝐹‘0))
5956, 58eqtrd 2772 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘0) = (𝐹‘0))
6049simp3d 1145 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵) → (𝑓‘1) = (𝐹‘0))
61603adant3 1133 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘1) = (𝐹‘0))
6254simp2d 1144 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → (‘0) = (𝐹‘0))
6361, 62eqtr4d 2775 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘1) = (‘0))
6451, 55, 63pcocn 24977 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)) ∈ (II Cn 𝐽))
6533ad2ant1 1134 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → 𝐹 ∈ (II Cn 𝐽))
6664, 65pco0 24974 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → (((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)‘0) = ((𝑓(*𝑝𝐽))‘0))
67263ad2ant1 1134 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = (𝐹‘0))
6859, 66, 673eqtr4rd 2783 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = (((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)‘0))
69233ad2ant1 1134 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → 𝐼 ∈ (II Cn 𝐽))
7047, 69erref 8658 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → 𝐼( ≃ph𝐽)𝐼)
7154simp3d 1145 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (‘1) = (𝐹‘0))
72 eqid 2737 . . . . . . . . . . . . . . . . 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 24984 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)( ≃ph𝐽)(𝑓(*𝑝𝐽)((*𝑝𝐽)𝐹)))
7455, 65pco0 24974 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → (((*𝑝𝐽)𝐹)‘0) = (‘0))
7563, 74eqtr4d 2775 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝑓‘1) = (((*𝑝𝐽)𝐹)‘0))
7647, 51erref 8658 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → 𝑓( ≃ph𝐽)𝑓)
7765, 69pco1 24975 . . . . . . . . . . . . . . . . . . . . . 22 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)‘1) = (𝐼‘1))
7862, 74, 673eqtr4rd 2783 . . . . . . . . . . . . . . . . . . . . . 22 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = (((*𝑝𝐽)𝐹)‘0))
7977, 78eqtrd 2772 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)‘1) = (((*𝑝𝐽)𝐹)‘0))
80 eqid 2737 . . . . . . . . . . . . . . . . . . . . . . 23 ((0[,]1) × {(𝐹‘0)}) = ((0[,]1) × {(𝐹‘0)})
8120, 80pcorev2 24988 . . . . . . . . . . . . . . . . . . . . . 22 (𝐹 ∈ (II Cn 𝐽) → (𝐹(*𝑝𝐽)𝐼)( ≃ph𝐽)((0[,]1) × {(𝐹‘0)}))
8265, 81syl 17 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → (𝐹(*𝑝𝐽)𝐼)( ≃ph𝐽)((0[,]1) × {(𝐹‘0)}))
8355, 65, 71pcocn 24977 . . . . . . . . . . . . . . . . . . . . . 22 ((𝜑𝑓 𝐵 𝐵) → ((*𝑝𝐽)𝐹) ∈ (II Cn 𝐽))
8447, 83erref 8658 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → ((*𝑝𝐽)𝐹)( ≃ph𝐽)((*𝑝𝐽)𝐹))
8579, 82, 84pcohtpy 24980 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)(((0[,]1) × {(𝐹‘0)})(*𝑝𝐽)((*𝑝𝐽)𝐹)))
8674, 62eqtrd 2772 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → (((*𝑝𝐽)𝐹)‘0) = (𝐹‘0))
8780pcopt 24982 . . . . . . . . . . . . . . . . . . . . 21 ((((*𝑝𝐽)𝐹) ∈ (II Cn 𝐽) ∧ (((*𝑝𝐽)𝐹)‘0) = (𝐹‘0)) → (((0[,]1) × {(𝐹‘0)})(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((*𝑝𝐽)𝐹))
8883, 86, 87syl2anc 585 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → (((0[,]1) × {(𝐹‘0)})(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((*𝑝𝐽)𝐹))
8947, 85, 88ertrd 8654 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((*𝑝𝐽)𝐹))
90243ad2ant1 1134 . . . . . . . . . . . . . . . . . . . . 21 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘0) = (𝐹‘1))
9190eqcomd 2743 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘1) = (𝐼‘0))
9265, 69, 83, 91, 78, 72pcoass 24984 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ((𝐹(*𝑝𝐽)𝐼)(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
9347, 89, 92ertr3d 8656 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → ((*𝑝𝐽)𝐹)( ≃ph𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
9475, 76, 93pcohtpy 24980 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)(𝑓(*𝑝𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
9569, 83, 78pcocn 24977 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽))
9669, 83pco0 24974 . . . . . . . . . . . . . . . . . . . 20 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0) = (𝐼‘0))
9796, 90eqtrd 2772 . . . . . . . . . . . . . . . . . . 19 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0) = (𝐹‘1))
9897eqcomd 2743 . . . . . . . . . . . . . . . . . 18 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘1) = ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0))
9951, 65, 95, 61, 98, 72pcoass 24984 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))( ≃ph𝐽)(𝑓(*𝑝𝐽)(𝐹(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
10047, 94, 99ertr4d 8657 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)((*𝑝𝐽)𝐹))( ≃ph𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
10147, 73, 100ertrd 8654 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹)( ≃ph𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
10268, 70, 101pcohtpy 24980 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))( ≃ph𝐽)(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
1033adantr 480 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵) → 𝐹 ∈ (II Cn 𝐽))
10450, 103, 60pcocn 24977 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → (𝑓(*𝑝𝐽)𝐹) ∈ (II Cn 𝐽))
1051043adant3 1133 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)𝐹) ∈ (II Cn 𝐽))
10650, 103pco0 24974 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘0) = (𝑓‘0))
10726adantr 480 . . . . . . . . . . . . . . . . 17 ((𝜑𝑓 𝐵) → (𝐼‘1) = (𝐹‘0))
10857, 106, 1073eqtr4rd 2783 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → (𝐼‘1) = ((𝑓(*𝑝𝐽)𝐹)‘0))
1091083adant3 1133 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (𝐼‘1) = ((𝑓(*𝑝𝐽)𝐹)‘0))
11051, 65pco1 24975 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘1) = (𝐹‘1))
111110, 97eqtr4d 2775 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘1) = ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0))
11269, 105, 95, 109, 111, 72pcoass 24984 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))( ≃ph𝐽)(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽)𝐹)(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))))
11347, 102, 112ertr4d 8657 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))( ≃ph𝐽)((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))))
11447, 113erthi 8694 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → [(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))]( ≃ph𝐽) = [((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))]( ≃ph𝐽))
11513ad2ant1 1134 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → 𝐽 ∈ (TopOn‘𝑋))
11651, 55pco1 24975 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘1) = (‘1))
117116, 71eqtrd 2772 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽))‘1) = (𝐹‘0))
1189, 1, 8, 28pi1eluni 25002 . . . . . . . . . . . . . . 15 (𝜑 → ((𝑓(*𝑝𝐽)) ∈ 𝐵 ↔ ((𝑓(*𝑝𝐽)) ∈ (II Cn 𝐽) ∧ ((𝑓(*𝑝𝐽))‘0) = (𝐹‘0) ∧ ((𝑓(*𝑝𝐽))‘1) = (𝐹‘0))))
1191183ad2ant1 1134 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝑓(*𝑝𝐽)) ∈ 𝐵 ↔ ((𝑓(*𝑝𝐽)) ∈ (II Cn 𝐽) ∧ ((𝑓(*𝑝𝐽))‘0) = (𝐹‘0) ∧ ((𝑓(*𝑝𝐽))‘1) = (𝐹‘0))))
12064, 59, 117, 119mpbir3and 1344 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝑓(*𝑝𝐽)) ∈ 𝐵)
1219, 15, 18, 19, 115, 65, 69, 91, 67, 120pi1xfrval 25014 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[(𝑓(*𝑝𝐽))]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)((𝑓(*𝑝𝐽))(*𝑝𝐽)𝐹))]( ≃ph𝐽))
122 eqid 2737 . . . . . . . . . . . . 13 (Base‘𝑄) = (Base‘𝑄)
123143ad2ant1 1134 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘1) ∈ 𝑋)
124 eqid 2737 . . . . . . . . . . . . 13 (+g𝑄) = (+g𝑄)
12523adantr 480 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → 𝐼 ∈ (II Cn 𝐽))
126125, 104, 108pcocn 24977 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵) → (𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽))
1271263adant3 1133 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽))
128125, 104pco0 24974 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐼‘0))
12924adantr 480 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → (𝐼‘0) = (𝐹‘1))
130128, 129eqtrd 2772 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐹‘1))
1311303adant3 1133 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐹‘1))
132125, 104pco1 24975 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = ((𝑓(*𝑝𝐽)𝐹)‘1))
13350, 103pco1 24975 . . . . . . . . . . . . . . . 16 ((𝜑𝑓 𝐵) → ((𝑓(*𝑝𝐽)𝐹)‘1) = (𝐹‘1))
134132, 133eqtrd 2772 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = (𝐹‘1))
1351343adant3 1133 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = (𝐹‘1))
136 eqidd 2738 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (Base‘𝑄) = (Base‘𝑄))
13715, 115, 123, 136pi1eluni 25002 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (Base‘𝑄) ↔ ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽) ∧ ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘0) = (𝐹‘1) ∧ ((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))‘1) = (𝐹‘1))))
138127, 131, 135, 137mpbir3and 1344 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹)) ∈ (Base‘𝑄))
13969, 83pco1 24975 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘1) = (((*𝑝𝐽)𝐹)‘1))
14055, 65pco1 24975 . . . . . . . . . . . . . . 15 ((𝜑𝑓 𝐵 𝐵) → (((*𝑝𝐽)𝐹)‘1) = (𝐹‘1))
141139, 140eqtrd 2772 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘1) = (𝐹‘1))
14215, 115, 123, 136pi1eluni 25002 . . . . . . . . . . . . . 14 ((𝜑𝑓 𝐵 𝐵) → ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (Base‘𝑄) ↔ ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (II Cn 𝐽) ∧ ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘0) = (𝐹‘1) ∧ ((𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))‘1) = (𝐹‘1))))
14395, 97, 141, 142mpbir3and 1344 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)) ∈ (Base‘𝑄))
14415, 122, 115, 123, 124, 138, 143pi1addval 25008 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → ([(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽)(+g𝑄)[(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽)) = [((𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))(*𝑝𝐽)(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹)))]( ≃ph𝐽))
145114, 121, 1443eqtr4d 2782 . . . . . . . . . . 11 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[(𝑓(*𝑝𝐽))]( ≃ph𝐽)) = ([(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽)(+g𝑄)[(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽)))
14683ad2ant1 1134 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → (𝐹‘0) ∈ 𝑋)
147 eqid 2737 . . . . . . . . . . . . 13 (+g𝑃) = (+g𝑃)
148 simp2 1138 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → 𝑓 𝐵)
149 simp3 1139 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵 𝐵) → 𝐵)
1509, 18, 115, 146, 147, 148, 149pi1addval 25008 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → ([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽)) = [(𝑓(*𝑝𝐽))]( ≃ph𝐽))
151150fveq2d 6839 . . . . . . . . . . 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 25014 . . . . . . . . . . . . 13 ((𝜑𝑓 𝐵) → (𝐺‘[𝑓]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽))
1561553adant3 1133 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[𝑓]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽))
1579, 15, 18, 19, 115, 65, 69, 91, 67, 149pi1xfrval 25014 . . . . . . . . . . . 12 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘[]( ≃ph𝐽)) = [(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽))
158156, 157oveq12d 7378 . . . . . . . . . . 11 ((𝜑𝑓 𝐵 𝐵) → ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))) = ([(𝐼(*𝑝𝐽)(𝑓(*𝑝𝐽)𝐹))]( ≃ph𝐽)(+g𝑄)[(𝐼(*𝑝𝐽)((*𝑝𝐽)𝐹))]( ≃ph𝐽)))
159145, 151, 1583eqtr4d 2782 . . . . . . . . . 10 ((𝜑𝑓 𝐵 𝐵) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))))
1601593expa 1119 . . . . . . . . 9 (((𝜑𝑓 𝐵) ∧ 𝐵) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)[]( ≃ph𝐽))) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺‘[]( ≃ph𝐽))))
16132, 45, 160ectocld 8723 . . . . . . . 8 (((𝜑𝑓 𝐵) ∧ 𝑧 ∈ ( 𝐵 / ( ≃ph𝐽))) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
16240, 161syldan 592 . . . . . . 7 (((𝜑𝑓 𝐵) ∧ 𝑧𝐵) → (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
163162ralrimiva 3129 . . . . . 6 ((𝜑𝑓 𝐵) → ∀𝑧𝐵 (𝐺‘([𝑓]( ≃ph𝐽)(+g𝑃)𝑧)) = ((𝐺‘[𝑓]( ≃ph𝐽))(+g𝑄)(𝐺𝑧)))
16432, 37, 163ectocld 8723 . . . . 5 ((𝜑𝑦 ∈ ( 𝐵 / ( ≃ph𝐽))) → ∀𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
16531, 164syldan 592 . . . 4 ((𝜑𝑦𝐵) → ∀𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
166165ralrimiva 3129 . . 3 (𝜑 → ∀𝑦𝐵𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))
16727, 166jca 511 . 2 (𝜑 → (𝐺:𝐵⟶(Base‘𝑄) ∧ ∀𝑦𝐵𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧))))
16818, 122, 147, 124isghm 19148 . 2 (𝐺 ∈ (𝑃 GrpHom 𝑄) ↔ ((𝑃 ∈ Grp ∧ 𝑄 ∈ Grp) ∧ (𝐺:𝐵⟶(Base‘𝑄) ∧ ∀𝑦𝐵𝑧𝐵 (𝐺‘(𝑦(+g𝑃)𝑧)) = ((𝐺𝑦)(+g𝑄)(𝐺𝑧)))))
16911, 17, 167, 168syl21anbrc 1346 1 (𝜑𝐺 ∈ (𝑃 GrpHom 𝑄))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  w3a 1087   = wceq 1542  wcel 2114  wral 3052  ifcif 4480  {csn 4581  cop 4587   cuni 4864   class class class wbr 5099  cmpt 5180   × cxp 5623  ran crn 5626  wf 6489  cfv 6493  (class class class)co 7360   Er wer 8634  [cec 8635   / cqs 8636  0cc0 11030  1c1 11031   + caddc 11033   · cmul 11035  cle 11171  cmin 11368   / cdiv 11798  2c2 12204  4c4 12206  [,]cicc 13268  Basecbs 17140  +gcplusg 17181  Grpcgrp 18867   GrpHom cghm 19145  TopOnctopon 22858   Cn ccn 23172  IIcii 24828  phcphtpc 24928  *𝑝cpco 24960   π1 cpi1 24963
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2185  ax-ext 2709  ax-rep 5225  ax-sep 5242  ax-nul 5252  ax-pow 5311  ax-pr 5378  ax-un 7682  ax-cnex 11086  ax-resscn 11087  ax-1cn 11088  ax-icn 11089  ax-addcl 11090  ax-addrcl 11091  ax-mulcl 11092  ax-mulrcl 11093  ax-mulcom 11094  ax-addass 11095  ax-mulass 11096  ax-distr 11097  ax-i2m1 11098  ax-1ne0 11099  ax-1rid 11100  ax-rnegex 11101  ax-rrecex 11102  ax-cnre 11103  ax-pre-lttri 11104  ax-pre-lttrn 11105  ax-pre-ltadd 11106  ax-pre-mulgt0 11107  ax-pre-sup 11108  ax-addf 11109
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3or 1088  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-nel 3038  df-ral 3053  df-rex 3062  df-rmo 3351  df-reu 3352  df-rab 3401  df-v 3443  df-sbc 3742  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4287  df-if 4481  df-pw 4557  df-sn 4582  df-pr 4584  df-tp 4586  df-op 4588  df-uni 4865  df-int 4904  df-iun 4949  df-iin 4950  df-br 5100  df-opab 5162  df-mpt 5181  df-tr 5207  df-id 5520  df-eprel 5525  df-po 5533  df-so 5534  df-fr 5578  df-se 5579  df-we 5580  df-xp 5631  df-rel 5632  df-cnv 5633  df-co 5634  df-dm 5635  df-rn 5636  df-res 5637  df-ima 5638  df-pred 6260  df-ord 6321  df-on 6322  df-lim 6323  df-suc 6324  df-iota 6449  df-fun 6495  df-fn 6496  df-f 6497  df-f1 6498  df-fo 6499  df-f1o 6500  df-fv 6501  df-isom 6502  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 9855  df-pnf 11172  df-mnf 11173  df-xr 11174  df-ltxr 11175  df-le 11176  df-sub 11370  df-neg 11371  df-div 11799  df-nn 12150  df-2 12212  df-3 12213  df-4 12214  df-5 12215  df-6 12216  df-7 12217  df-8 12218  df-9 12219  df-n0 12406  df-z 12493  df-dec 12612  df-uz 12756  df-q 12866  df-rp 12910  df-xneg 13030  df-xadd 13031  df-xmul 13032  df-ioo 13269  df-icc 13272  df-fz 13428  df-fzo 13575  df-seq 13929  df-exp 13989  df-hash 14258  df-cj 15026  df-re 15027  df-im 15028  df-sqrt 15162  df-abs 15163  df-struct 17078  df-sets 17095  df-slot 17113  df-ndx 17125  df-base 17141  df-ress 17162  df-plusg 17194  df-mulr 17195  df-starv 17196  df-sca 17197  df-vsca 17198  df-ip 17199  df-tset 17200  df-ple 17201  df-ds 17203  df-unif 17204  df-hom 17205  df-cco 17206  df-rest 17346  df-topn 17347  df-0g 17365  df-gsum 17366  df-topgen 17367  df-pt 17368  df-prds 17371  df-xrs 17427  df-qtop 17432  df-imas 17433  df-qus 17434  df-xps 17435  df-mre 17509  df-mrc 17510  df-acs 17512  df-mgm 18569  df-sgrp 18648  df-mnd 18664  df-submnd 18713  df-grp 18870  df-mulg 19002  df-ghm 19146  df-cntz 19250  df-cmn 19715  df-psmet 21305  df-xmet 21306  df-met 21307  df-bl 21308  df-mopn 21309  df-cnfld 21314  df-top 22842  df-topon 22859  df-topsp 22881  df-bases 22894  df-cld 22967  df-cn 23175  df-cnp 23176  df-tx 23510  df-hmeo 23703  df-xms 24268  df-ms 24269  df-tms 24270  df-ii 24830  df-htpy 24929  df-phtpy 24930  df-phtpc 24951  df-pco 24965  df-om1 24966  df-pi1 24968
This theorem is referenced by:  pi1xfrcnv  25017  pi1xfrgim  25018
  Copyright terms: Public domain W3C validator