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

Theorem ngptgp 23242
Description: A normed abelian group is a topological group (with the topology induced by the metric induced by the norm). (Contributed by Mario Carneiro, 4-Oct-2015.)
Assertion
Ref Expression
ngptgp ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ TopGrp)

Proof of Theorem ngptgp
Dummy variables 𝑢 𝑟 𝑣 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 ngpgrp 23205 . . 3 (𝐺 ∈ NrmGrp → 𝐺 ∈ Grp)
21adantr 484 . 2 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ Grp)
3 ngpms 23206 . . . 4 (𝐺 ∈ NrmGrp → 𝐺 ∈ MetSp)
43adantr 484 . . 3 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ MetSp)
5 mstps 23062 . . 3 (𝐺 ∈ MetSp → 𝐺 ∈ TopSp)
64, 5syl 17 . 2 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ TopSp)
7 eqid 2798 . . . . . 6 (Base‘𝐺) = (Base‘𝐺)
8 eqid 2798 . . . . . 6 (-g𝐺) = (-g𝐺)
97, 8grpsubf 18170 . . . . 5 (𝐺 ∈ Grp → (-g𝐺):((Base‘𝐺) × (Base‘𝐺))⟶(Base‘𝐺))
102, 9syl 17 . . . 4 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (-g𝐺):((Base‘𝐺) × (Base‘𝐺))⟶(Base‘𝐺))
11 rphalfcl 12404 . . . . . . 7 (𝑧 ∈ ℝ+ → (𝑧 / 2) ∈ ℝ+)
12 simplll 774 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel))
1312, 4syl 17 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝐺 ∈ MetSp)
14 simpllr 775 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)))
1514simpld 498 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑥 ∈ (Base‘𝐺))
16 simprl 770 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑢 ∈ (Base‘𝐺))
17 eqid 2798 . . . . . . . . . . . . 13 (dist‘𝐺) = (dist‘𝐺)
187, 17mscl 23068 . . . . . . . . . . . 12 ((𝐺 ∈ MetSp ∧ 𝑥 ∈ (Base‘𝐺) ∧ 𝑢 ∈ (Base‘𝐺)) → (𝑥(dist‘𝐺)𝑢) ∈ ℝ)
1913, 15, 16, 18syl3anc 1368 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥(dist‘𝐺)𝑢) ∈ ℝ)
2014simprd 499 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑦 ∈ (Base‘𝐺))
21 simprr 772 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑣 ∈ (Base‘𝐺))
227, 17mscl 23068 . . . . . . . . . . . 12 ((𝐺 ∈ MetSp ∧ 𝑦 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺)) → (𝑦(dist‘𝐺)𝑣) ∈ ℝ)
2313, 20, 21, 22syl3anc 1368 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑦(dist‘𝐺)𝑣) ∈ ℝ)
24 rpre 12385 . . . . . . . . . . . 12 (𝑧 ∈ ℝ+𝑧 ∈ ℝ)
2524ad2antlr 726 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑧 ∈ ℝ)
26 lt2halves 11860 . . . . . . . . . . 11 (((𝑥(dist‘𝐺)𝑢) ∈ ℝ ∧ (𝑦(dist‘𝐺)𝑣) ∈ ℝ ∧ 𝑧 ∈ ℝ) → (((𝑥(dist‘𝐺)𝑢) < (𝑧 / 2) ∧ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2)) → ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧))
2719, 23, 25, 26syl3anc 1368 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥(dist‘𝐺)𝑢) < (𝑧 / 2) ∧ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2)) → ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧))
2812, 2syl 17 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝐺 ∈ Grp)
297, 8grpsubcl 18171 . . . . . . . . . . . . . 14 ((𝐺 ∈ Grp ∧ 𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)) → (𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺))
3028, 15, 20, 29syl3anc 1368 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺))
317, 8grpsubcl 18171 . . . . . . . . . . . . . 14 ((𝐺 ∈ Grp ∧ 𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺))
3228, 16, 21, 31syl3anc 1368 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺))
337, 8grpsubcl 18171 . . . . . . . . . . . . . 14 ((𝐺 ∈ Grp ∧ 𝑢 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑦) ∈ (Base‘𝐺))
3428, 16, 20, 33syl3anc 1368 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑦) ∈ (Base‘𝐺))
357, 17mstri 23076 . . . . . . . . . . . . 13 ((𝐺 ∈ MetSp ∧ ((𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺) ∧ (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺) ∧ (𝑢(-g𝐺)𝑦) ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ (((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) + ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣))))
3613, 30, 32, 34, 35syl13anc 1369 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ (((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) + ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣))))
3712simpld 498 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝐺 ∈ NrmGrp)
387, 8, 17ngpsubcan 23220 . . . . . . . . . . . . . 14 ((𝐺 ∈ NrmGrp ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑢 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) = (𝑥(dist‘𝐺)𝑢))
3937, 15, 16, 20, 38syl13anc 1369 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) = (𝑥(dist‘𝐺)𝑢))
40 eqid 2798 . . . . . . . . . . . . . . . . 17 (+g𝐺) = (+g𝐺)
41 eqid 2798 . . . . . . . . . . . . . . . . 17 (invg𝐺) = (invg𝐺)
427, 40, 41, 8grpsubval 18141 . . . . . . . . . . . . . . . 16 ((𝑢 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑦) = (𝑢(+g𝐺)((invg𝐺)‘𝑦)))
4316, 20, 42syl2anc 587 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑦) = (𝑢(+g𝐺)((invg𝐺)‘𝑦)))
447, 40, 41, 8grpsubval 18141 . . . . . . . . . . . . . . . 16 ((𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑣) = (𝑢(+g𝐺)((invg𝐺)‘𝑣)))
4544adantl 485 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑣) = (𝑢(+g𝐺)((invg𝐺)‘𝑣)))
4643, 45oveq12d 7153 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) = ((𝑢(+g𝐺)((invg𝐺)‘𝑦))(dist‘𝐺)(𝑢(+g𝐺)((invg𝐺)‘𝑣))))
477, 41grpinvcl 18143 . . . . . . . . . . . . . . . 16 ((𝐺 ∈ Grp ∧ 𝑦 ∈ (Base‘𝐺)) → ((invg𝐺)‘𝑦) ∈ (Base‘𝐺))
4828, 20, 47syl2anc 587 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((invg𝐺)‘𝑦) ∈ (Base‘𝐺))
497, 41grpinvcl 18143 . . . . . . . . . . . . . . . 16 ((𝐺 ∈ Grp ∧ 𝑣 ∈ (Base‘𝐺)) → ((invg𝐺)‘𝑣) ∈ (Base‘𝐺))
5028, 21, 49syl2anc 587 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((invg𝐺)‘𝑣) ∈ (Base‘𝐺))
517, 40, 17ngplcan 23217 . . . . . . . . . . . . . . 15 (((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (((invg𝐺)‘𝑦) ∈ (Base‘𝐺) ∧ ((invg𝐺)‘𝑣) ∈ (Base‘𝐺) ∧ 𝑢 ∈ (Base‘𝐺))) → ((𝑢(+g𝐺)((invg𝐺)‘𝑦))(dist‘𝐺)(𝑢(+g𝐺)((invg𝐺)‘𝑣))) = (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)))
5212, 48, 50, 16, 51syl13anc 1369 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑢(+g𝐺)((invg𝐺)‘𝑦))(dist‘𝐺)(𝑢(+g𝐺)((invg𝐺)‘𝑣))) = (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)))
537, 41, 17ngpinvds 23219 . . . . . . . . . . . . . . 15 (((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑦 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)) = (𝑦(dist‘𝐺)𝑣))
5412, 20, 21, 53syl12anc 835 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)) = (𝑦(dist‘𝐺)𝑣))
5546, 52, 543eqtrd 2837 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) = (𝑦(dist‘𝐺)𝑣))
5639, 55oveq12d 7153 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) + ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣))) = ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)))
5736, 56breqtrd 5056 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)))
587, 17mscl 23068 . . . . . . . . . . . . 13 ((𝐺 ∈ MetSp ∧ (𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺) ∧ (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺)) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ∈ ℝ)
5913, 30, 32, 58syl3anc 1368 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ∈ ℝ)
6019, 23readdcld 10659 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∈ ℝ)
61 lelttr 10720 . . . . . . . . . . . 12 ((((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ∈ ℝ ∧ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∈ ℝ ∧ 𝑧 ∈ ℝ) → ((((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∧ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
6259, 60, 25, 61syl3anc 1368 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∧ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
6357, 62mpand 694 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧 → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
6427, 63syld 47 . . . . . . . . 9 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥(dist‘𝐺)𝑢) < (𝑧 / 2) ∧ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2)) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
6515, 16ovresd 7295 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) = (𝑥(dist‘𝐺)𝑢))
6665breq1d 5040 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ↔ (𝑥(dist‘𝐺)𝑢) < (𝑧 / 2)))
6720, 21ovresd 7295 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) = (𝑦(dist‘𝐺)𝑣))
6867breq1d 5040 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2) ↔ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2)))
6966, 68anbi12d 633 . . . . . . . . 9 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)) ↔ ((𝑥(dist‘𝐺)𝑢) < (𝑧 / 2) ∧ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2))))
7030, 32ovresd 7295 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) = ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)))
7170breq1d 5040 . . . . . . . . 9 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧 ↔ ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
7264, 69, 713imtr4d 297 . . . . . . . 8 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
7372ralrimivva 3156 . . . . . . 7 ((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) → ∀𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
74 breq2 5034 . . . . . . . . . . 11 (𝑟 = (𝑧 / 2) → ((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ↔ (𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2)))
75 breq2 5034 . . . . . . . . . . 11 (𝑟 = (𝑧 / 2) → ((𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟 ↔ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)))
7674, 75anbi12d 633 . . . . . . . . . 10 (𝑟 = (𝑧 / 2) → (((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) ↔ ((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2))))
7776imbi1d 345 . . . . . . . . 9 (𝑟 = (𝑧 / 2) → ((((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧) ↔ (((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧)))
78772ralbidv 3164 . . . . . . . 8 (𝑟 = (𝑧 / 2) → (∀𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧) ↔ ∀𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧)))
7978rspcev 3571 . . . . . . 7 (((𝑧 / 2) ∈ ℝ+ ∧ ∀𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧)) → ∃𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
8011, 73, 79syl2an2 685 . . . . . 6 ((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) → ∃𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
8180ralrimiva 3149 . . . . 5 (((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) → ∀𝑧 ∈ ℝ+𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
8281ralrimivva 3156 . . . 4 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → ∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)∀𝑧 ∈ ℝ+𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
83 msxms 23061 . . . . . 6 (𝐺 ∈ MetSp → 𝐺 ∈ ∞MetSp)
84 eqid 2798 . . . . . . 7 ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) = ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))
857, 84xmsxmet 23063 . . . . . 6 (𝐺 ∈ ∞MetSp → ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) ∈ (∞Met‘(Base‘𝐺)))
864, 83, 853syl 18 . . . . 5 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) ∈ (∞Met‘(Base‘𝐺)))
87 eqid 2798 . . . . . 6 (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) = (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))
8887, 87, 87txmetcn 23155 . . . . 5 ((((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) ∈ (∞Met‘(Base‘𝐺)) ∧ ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) ∈ (∞Met‘(Base‘𝐺)) ∧ ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) ∈ (∞Met‘(Base‘𝐺))) → ((-g𝐺) ∈ (((MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) ×t (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))) Cn (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))) ↔ ((-g𝐺):((Base‘𝐺) × (Base‘𝐺))⟶(Base‘𝐺) ∧ ∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)∀𝑧 ∈ ℝ+𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))))
8986, 86, 86, 88syl3anc 1368 . . . 4 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → ((-g𝐺) ∈ (((MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) ×t (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))) Cn (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))) ↔ ((-g𝐺):((Base‘𝐺) × (Base‘𝐺))⟶(Base‘𝐺) ∧ ∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)∀𝑧 ∈ ℝ+𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))))
9010, 82, 89mpbir2and 712 . . 3 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (-g𝐺) ∈ (((MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) ×t (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))) Cn (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))))
91 eqid 2798 . . . . . . 7 (TopOpen‘𝐺) = (TopOpen‘𝐺)
9291, 7, 84mstopn 23059 . . . . . 6 (𝐺 ∈ MetSp → (TopOpen‘𝐺) = (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))))
934, 92syl 17 . . . . 5 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (TopOpen‘𝐺) = (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))))
9493, 93oveq12d 7153 . . . 4 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → ((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) = ((MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) ×t (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))))
9594, 93oveq12d 7153 . . 3 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) Cn (TopOpen‘𝐺)) = (((MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) ×t (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))) Cn (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))))
9690, 95eleqtrrd 2893 . 2 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (-g𝐺) ∈ (((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) Cn (TopOpen‘𝐺)))
9791, 8istgp2 22696 . 2 (𝐺 ∈ TopGrp ↔ (𝐺 ∈ Grp ∧ 𝐺 ∈ TopSp ∧ (-g𝐺) ∈ (((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) Cn (TopOpen‘𝐺))))
982, 6, 96, 97syl3anbrc 1340 1 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ TopGrp)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 399   = wceq 1538  wcel 2111  wral 3106  wrex 3107   class class class wbr 5030   × cxp 5517  cres 5521  wf 6320  cfv 6324  (class class class)co 7135  cr 10525   + caddc 10529   < clt 10664  cle 10665   / cdiv 11286  2c2 11680  +crp 12377  Basecbs 16475  +gcplusg 16557  distcds 16566  TopOpenctopn 16687  Grpcgrp 18095  invgcminusg 18096  -gcsg 18097  Abelcabl 18899  ∞Metcxmet 20076  MetOpencmopn 20081  TopSpctps 21537   Cn ccn 21829   ×t ctx 22165  TopGrpctgp 22676  ∞MetSpcxms 22924  MetSpcms 22925  NrmGrpcngp 23184
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 1911  ax-6 1970  ax-7 2015  ax-8 2113  ax-9 2121  ax-10 2142  ax-11 2158  ax-12 2175  ax-ext 2770  ax-rep 5154  ax-sep 5167  ax-nul 5174  ax-pow 5231  ax-pr 5295  ax-un 7441  ax-cnex 10582  ax-resscn 10583  ax-1cn 10584  ax-icn 10585  ax-addcl 10586  ax-addrcl 10587  ax-mulcl 10588  ax-mulrcl 10589  ax-mulcom 10590  ax-addass 10591  ax-mulass 10592  ax-distr 10593  ax-i2m1 10594  ax-1ne0 10595  ax-1rid 10596  ax-rnegex 10597  ax-rrecex 10598  ax-cnre 10599  ax-pre-lttri 10600  ax-pre-lttrn 10601  ax-pre-ltadd 10602  ax-pre-mulgt0 10603  ax-pre-sup 10604
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2598  df-eu 2629  df-clab 2777  df-cleq 2791  df-clel 2870  df-nfc 2938  df-ne 2988  df-nel 3092  df-ral 3111  df-rex 3112  df-reu 3113  df-rmo 3114  df-rab 3115  df-v 3443  df-sbc 3721  df-csb 3829  df-dif 3884  df-un 3886  df-in 3888  df-ss 3898  df-pss 3900  df-nul 4244  df-if 4426  df-pw 4499  df-sn 4526  df-pr 4528  df-tp 4530  df-op 4532  df-uni 4801  df-int 4839  df-iun 4883  df-iin 4884  df-br 5031  df-opab 5093  df-mpt 5111  df-tr 5137  df-id 5425  df-eprel 5430  df-po 5438  df-so 5439  df-fr 5478  df-se 5479  df-we 5480  df-xp 5525  df-rel 5526  df-cnv 5527  df-co 5528  df-dm 5529  df-rn 5530  df-res 5531  df-ima 5532  df-pred 6116  df-ord 6162  df-on 6163  df-lim 6164  df-suc 6165  df-iota 6283  df-fun 6326  df-fn 6327  df-f 6328  df-f1 6329  df-fo 6330  df-f1o 6331  df-fv 6332  df-isom 6333  df-riota 7093  df-ov 7138  df-oprab 7139  df-mpo 7140  df-of 7389  df-om 7561  df-1st 7671  df-2nd 7672  df-supp 7814  df-wrecs 7930  df-recs 7991  df-rdg 8029  df-1o 8085  df-2o 8086  df-oadd 8089  df-er 8272  df-map 8391  df-ixp 8445  df-en 8493  df-dom 8494  df-sdom 8495  df-fin 8496  df-fsupp 8818  df-fi 8859  df-sup 8890  df-inf 8891  df-oi 8958  df-card 9352  df-pnf 10666  df-mnf 10667  df-xr 10668  df-ltxr 10669  df-le 10670  df-sub 10861  df-neg 10862  df-div 11287  df-nn 11626  df-2 11688  df-3 11689  df-4 11690  df-5 11691  df-6 11692  df-7 11693  df-8 11694  df-9 11695  df-n0 11886  df-z 11970  df-dec 12087  df-uz 12232  df-q 12337  df-rp 12378  df-xneg 12495  df-xadd 12496  df-xmul 12497  df-icc 12733  df-fz 12886  df-fzo 13029  df-seq 13365  df-hash 13687  df-struct 16477  df-ndx 16478  df-slot 16479  df-base 16481  df-sets 16482  df-ress 16483  df-plusg 16570  df-mulr 16571  df-sca 16573  df-vsca 16574  df-ip 16575  df-tset 16576  df-ple 16577  df-ds 16579  df-hom 16581  df-cco 16582  df-rest 16688  df-topn 16689  df-0g 16707  df-gsum 16708  df-topgen 16709  df-pt 16710  df-prds 16713  df-xrs 16767  df-qtop 16772  df-imas 16773  df-xps 16775  df-mre 16849  df-mrc 16850  df-acs 16852  df-plusf 17843  df-mgm 17844  df-sgrp 17893  df-mnd 17904  df-submnd 17949  df-grp 18098  df-minusg 18099  df-sbg 18100  df-mulg 18217  df-cntz 18439  df-cmn 18900  df-abl 18901  df-psmet 20083  df-xmet 20084  df-met 20085  df-bl 20086  df-mopn 20087  df-top 21499  df-topon 21516  df-topsp 21538  df-bases 21551  df-cn 21832  df-cnp 21833  df-tx 22167  df-hmeo 22360  df-tmd 22677  df-tgp 22678  df-xms 22927  df-ms 22928  df-tms 22929  df-nm 23189  df-ngp 23190
This theorem is referenced by:  nrgtgp  23278  nlmtlm  23300
  Copyright terms: Public domain W3C validator