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

Theorem ngptgp 24761
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 24724 . . 3 (𝐺 ∈ NrmGrp → 𝐺 ∈ Grp)
21adantr 485 . 2 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ Grp)
3 ngpms 24725 . . . 4 (𝐺 ∈ NrmGrp → 𝐺 ∈ MetSp)
43adantr 485 . . 3 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ MetSp)
5 mstps 24580 . . 3 (𝐺 ∈ MetSp → 𝐺 ∈ TopSp)
64, 5syl 18 . 2 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ TopSp)
7 eqid 2769 . . . . . 6 (Base‘𝐺) = (Base‘𝐺)
8 eqid 2769 . . . . . 6 (-g𝐺) = (-g𝐺)
97, 8grpsubf 19084 . . . . 5 (𝐺 ∈ Grp → (-g𝐺):((Base‘𝐺) × (Base‘𝐺))⟶(Base‘𝐺))
102, 9syl 18 . . . 4 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (-g𝐺):((Base‘𝐺) × (Base‘𝐺))⟶(Base‘𝐺))
11 rphalfcl 13044 . . . . . . 7 (𝑧 ∈ ℝ+ → (𝑧 / 2) ∈ ℝ+)
12 simplll 786 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel))
1312, 4syl 18 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝐺 ∈ MetSp)
14 simpllr 787 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)))
1514simpld 499 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑥 ∈ (Base‘𝐺))
16 simprl 782 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑢 ∈ (Base‘𝐺))
17 eqid 2769 . . . . . . . . . . . . 13 (dist‘𝐺) = (dist‘𝐺)
187, 17mscl 24586 . . . . . . . . . . . 12 ((𝐺 ∈ MetSp ∧ 𝑥 ∈ (Base‘𝐺) ∧ 𝑢 ∈ (Base‘𝐺)) → (𝑥(dist‘𝐺)𝑢) ∈ ℝ)
1913, 15, 16, 18syl3anc 1396 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥(dist‘𝐺)𝑢) ∈ ℝ)
2014simprd 500 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑦 ∈ (Base‘𝐺))
21 simprr 784 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑣 ∈ (Base‘𝐺))
227, 17mscl 24586 . . . . . . . . . . . 12 ((𝐺 ∈ MetSp ∧ 𝑦 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺)) → (𝑦(dist‘𝐺)𝑣) ∈ ℝ)
2313, 20, 21, 22syl3anc 1396 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑦(dist‘𝐺)𝑣) ∈ ℝ)
24 rpre 13024 . . . . . . . . . . . 12 (𝑧 ∈ ℝ+𝑧 ∈ ℝ)
2524ad2antlr 739 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑧 ∈ ℝ)
26 lt2halves 12478 . . . . . . . . . . 11 (((𝑥(dist‘𝐺)𝑢) ∈ ℝ ∧ (𝑦(dist‘𝐺)𝑣) ∈ ℝ ∧ 𝑧 ∈ ℝ) → (((𝑥(dist‘𝐺)𝑢) < (𝑧 / 2) ∧ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2)) → ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧))
2719, 23, 25, 26syl3anc 1396 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥(dist‘𝐺)𝑢) < (𝑧 / 2) ∧ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2)) → ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧))
2812, 2syl 18 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝐺 ∈ Grp)
297, 8grpsubcl 19085 . . . . . . . . . . . . . 14 ((𝐺 ∈ Grp ∧ 𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)) → (𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺))
3028, 15, 20, 29syl3anc 1396 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺))
317, 8grpsubcl 19085 . . . . . . . . . . . . . 14 ((𝐺 ∈ Grp ∧ 𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺))
3228, 16, 21, 31syl3anc 1396 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺))
337, 8grpsubcl 19085 . . . . . . . . . . . . . 14 ((𝐺 ∈ Grp ∧ 𝑢 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑦) ∈ (Base‘𝐺))
3428, 16, 20, 33syl3anc 1396 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑦) ∈ (Base‘𝐺))
357, 17mstri 24594 . . . . . . . . . . . . 13 ((𝐺 ∈ MetSp ∧ ((𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺) ∧ (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺) ∧ (𝑢(-g𝐺)𝑦) ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ (((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) + ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣))))
3613, 30, 32, 34, 35syl13anc 1397 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ (((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) + ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣))))
3712simpld 499 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝐺 ∈ NrmGrp)
387, 8, 17ngpsubcan 24739 . . . . . . . . . . . . . 14 ((𝐺 ∈ NrmGrp ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑢 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) = (𝑥(dist‘𝐺)𝑢))
3937, 15, 16, 20, 38syl13anc 1397 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) = (𝑥(dist‘𝐺)𝑢))
40 eqid 2769 . . . . . . . . . . . . . . . . 17 (+g𝐺) = (+g𝐺)
41 eqid 2769 . . . . . . . . . . . . . . . . 17 (invg𝐺) = (invg𝐺)
427, 40, 41, 8grpsubval 19051 . . . . . . . . . . . . . . . 16 ((𝑢 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑦) = (𝑢(+g𝐺)((invg𝐺)‘𝑦)))
4316, 20, 42syl2anc 595 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑦) = (𝑢(+g𝐺)((invg𝐺)‘𝑦)))
447, 40, 41, 8grpsubval 19051 . . . . . . . . . . . . . . . 16 ((𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑣) = (𝑢(+g𝐺)((invg𝐺)‘𝑣)))
4544adantl 486 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑣) = (𝑢(+g𝐺)((invg𝐺)‘𝑣)))
4643, 45oveq12d 7429 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) = ((𝑢(+g𝐺)((invg𝐺)‘𝑦))(dist‘𝐺)(𝑢(+g𝐺)((invg𝐺)‘𝑣))))
477, 41grpinvcl 19053 . . . . . . . . . . . . . . . 16 ((𝐺 ∈ Grp ∧ 𝑦 ∈ (Base‘𝐺)) → ((invg𝐺)‘𝑦) ∈ (Base‘𝐺))
4828, 20, 47syl2anc 595 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((invg𝐺)‘𝑦) ∈ (Base‘𝐺))
497, 41grpinvcl 19053 . . . . . . . . . . . . . . . 16 ((𝐺 ∈ Grp ∧ 𝑣 ∈ (Base‘𝐺)) → ((invg𝐺)‘𝑣) ∈ (Base‘𝐺))
5028, 21, 49syl2anc 595 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((invg𝐺)‘𝑣) ∈ (Base‘𝐺))
517, 40, 17ngplcan 24736 . . . . . . . . . . . . . . 15 (((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (((invg𝐺)‘𝑦) ∈ (Base‘𝐺) ∧ ((invg𝐺)‘𝑣) ∈ (Base‘𝐺) ∧ 𝑢 ∈ (Base‘𝐺))) → ((𝑢(+g𝐺)((invg𝐺)‘𝑦))(dist‘𝐺)(𝑢(+g𝐺)((invg𝐺)‘𝑣))) = (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)))
5212, 48, 50, 16, 51syl13anc 1397 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑢(+g𝐺)((invg𝐺)‘𝑦))(dist‘𝐺)(𝑢(+g𝐺)((invg𝐺)‘𝑣))) = (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)))
537, 41, 17ngpinvds 24738 . . . . . . . . . . . . . . 15 (((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑦 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)) = (𝑦(dist‘𝐺)𝑣))
5412, 20, 21, 53syl12anc 849 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)) = (𝑦(dist‘𝐺)𝑣))
5546, 52, 543eqtrd 2808 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) = (𝑦(dist‘𝐺)𝑣))
5639, 55oveq12d 7429 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) + ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣))) = ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)))
5736, 56breqtrd 5141 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)))
587, 17mscl 24586 . . . . . . . . . . . . 13 ((𝐺 ∈ MetSp ∧ (𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺) ∧ (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺)) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ∈ ℝ)
5913, 30, 32, 58syl3anc 1396 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ∈ ℝ)
6019, 23readdcld 11237 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∈ ℝ)
61 lelttr 11299 . . . . . . . . . . . 12 ((((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ∈ ℝ ∧ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∈ ℝ ∧ 𝑧 ∈ ℝ) → ((((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∧ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
6259, 60, 25, 61syl3anc 1396 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∧ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
6357, 62mpand 707 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧 → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
6427, 63syld 48 . . . . . . . . 9 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥(dist‘𝐺)𝑢) < (𝑧 / 2) ∧ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2)) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
6515, 16ovresd 7578 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) = (𝑥(dist‘𝐺)𝑢))
6665breq1d 5123 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ↔ (𝑥(dist‘𝐺)𝑢) < (𝑧 / 2)))
6720, 21ovresd 7578 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) = (𝑦(dist‘𝐺)𝑣))
6867breq1d 5123 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2) ↔ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2)))
6966, 68anbi12d 643 . . . . . . . . 9 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)) ↔ ((𝑥(dist‘𝐺)𝑢) < (𝑧 / 2) ∧ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2))))
7030, 32ovresd 7578 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) = ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)))
7170breq1d 5123 . . . . . . . . 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 3214 . . . . . . 7 ((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) → ∀𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
74 breq2 5117 . . . . . . . . . . 11 (𝑟 = (𝑧 / 2) → ((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ↔ (𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2)))
75 breq2 5117 . . . . . . . . . . 11 (𝑟 = (𝑧 / 2) → ((𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟 ↔ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)))
7674, 75anbi12d 643 . . . . . . . . . 10 (𝑟 = (𝑧 / 2) → (((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) ↔ ((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2))))
7776imbi1d 344 . . . . . . . . 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 3235 . . . . . . . 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 3590 . . . . . . 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 698 . . . . . 6 ((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) → ∃𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
8180ralrimiva 3163 . . . . 5 (((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) → ∀𝑧 ∈ ℝ+𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
8281ralrimivva 3214 . . . 4 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → ∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)∀𝑧 ∈ ℝ+𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
83 msxms 24579 . . . . . 6 (𝐺 ∈ MetSp → 𝐺 ∈ ∞MetSp)
84 eqid 2769 . . . . . . 7 ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) = ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))
857, 84xmsxmet 24581 . . . . . 6 (𝐺 ∈ ∞MetSp → ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) ∈ (∞Met‘(Base‘𝐺)))
864, 83, 853syl 19 . . . . 5 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) ∈ (∞Met‘(Base‘𝐺)))
87 eqid 2769 . . . . . 6 (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) = (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))
8887, 87, 87txmetcn 24673 . . . . 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 1396 . . . 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 725 . . 3 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (-g𝐺) ∈ (((MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) ×t (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))) Cn (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))))
91 eqid 2769 . . . . . . 7 (TopOpen‘𝐺) = (TopOpen‘𝐺)
9291, 7, 84mstopn 24577 . . . . . 6 (𝐺 ∈ MetSp → (TopOpen‘𝐺) = (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))))
934, 92syl 18 . . . . 5 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (TopOpen‘𝐺) = (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))))
9493, 93oveq12d 7429 . . . 4 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → ((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) = ((MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) ×t (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))))
9594, 93oveq12d 7429 . . 3 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) Cn (TopOpen‘𝐺)) = (((MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) ×t (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))) Cn (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))))
9690, 95eleqtrrd 2872 . 2 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (-g𝐺) ∈ (((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) Cn (TopOpen‘𝐺)))
9791, 8istgp2 24216 . 2 (𝐺 ∈ TopGrp ↔ (𝐺 ∈ Grp ∧ 𝐺 ∈ TopSp ∧ (-g𝐺) ∈ (((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) Cn (TopOpen‘𝐺))))
982, 6, 96, 97syl3anbrc 1360 1 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ TopGrp)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 400   = wceq 1567  wcel 2149  wral 3085  wrex 3095   class class class wbr 5113   × cxp 5660  cres 5664  wf 6533  cfv 6537  (class class class)co 7411  cr 11098   + caddc 11102   < clt 11242  cle 11243   / cdiv 11870  2c2 12294  +crp 13015  Basecbs 17268  +gcplusg 17309  distcds 17318  TopOpenctopn 17473  Grpcgrp 18999  invgcminusg 19000  -gcsg 19001  Abelcabl 19850  ∞Metcxmet 21475  MetOpencmopn 21480  TopSpctps 23057   Cn ccn 23349   ×t ctx 23685  TopGrpctgp 24196  ∞MetSpcxms 24442  MetSpcms 24443  NrmGrpcngp 24702
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1822  ax-4 1836  ax-5 1937  ax-6 1994  ax-7 2035  ax-8 2151  ax-9 2159  ax-10 2182  ax-11 2198  ax-12 2219  ax-ext 2741  ax-rep 5242  ax-sep 5261  ax-nul 5271  ax-pow 5337  ax-pr 5405  ax-un 7733  ax-cnex 11155  ax-resscn 11156  ax-1cn 11157  ax-icn 11158  ax-addcl 11159  ax-addrcl 11160  ax-mulcl 11161  ax-mulrcl 11162  ax-mulcom 11163  ax-addass 11164  ax-mulass 11165  ax-distr 11166  ax-i2m1 11167  ax-1ne0 11168  ax-1rid 11169  ax-rnegex 11170  ax-rrecex 11171  ax-cnre 11172  ax-pre-lttri 11173  ax-pre-lttrn 11174  ax-pre-ltadd 11175  ax-pre-mulgt0 11176  ax-pre-sup 11177
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3or 1102  df-3an 1103  df-tru 1570  df-fal 1580  df-ex 1807  df-nf 1811  df-sb 2098  df-mo 2573  df-eu 2603  df-clab 2748  df-cleq 2761  df-clel 2844  df-nfc 2918  df-ne 2965  df-nel 3071  df-ral 3086  df-rex 3096  df-rmo 3376  df-reu 3377  df-rab 3424  df-v 3465  df-sbc 3754  df-csb 3862  df-dif 3916  df-un 3918  df-in 3920  df-ss 3930  df-pss 3933  df-nul 4295  df-if 4493  df-pw 4569  df-sn 4595  df-pr 4597  df-tp 4599  df-op 4601  df-uni 4877  df-int 4917  df-iun 4962  df-iin 4963  df-br 5114  df-opab 5178  df-mpt 5197  df-tr 5223  df-id 5557  df-eprel 5562  df-po 5570  df-so 5571  df-fr 5615  df-se 5616  df-we 5617  df-xp 5668  df-rel 5669  df-cnv 5670  df-co 5671  df-dm 5672  df-rn 5673  df-res 5674  df-ima 5675  df-pred 6303  df-ord 6364  df-on 6365  df-lim 6366  df-suc 6367  df-iota 6493  df-fun 6539  df-fn 6540  df-f 6541  df-f1 6542  df-fo 6543  df-f1o 6544  df-fv 6545  df-isom 6546  df-riota 7368  df-ov 7414  df-oprab 7415  df-mpo 7416  df-of 7675  df-om 7862  df-1st 7985  df-2nd 7986  df-supp 8156  df-frecs 8277  df-wrecs 8308  df-recs 8357  df-rdg 8396  df-1o 8452  df-2o 8453  df-er 8693  df-map 8825  df-ixp 8895  df-en 8943  df-dom 8944  df-sdom 8945  df-fin 8946  df-fsupp 9321  df-fi 9370  df-sup 9401  df-inf 9402  df-oi 9471  df-card 9924  df-pnf 11244  df-mnf 11245  df-xr 11246  df-ltxr 11247  df-le 11248  df-sub 11442  df-neg 11443  df-div 11871  df-nn 12233  df-2 12302  df-3 12303  df-4 12304  df-5 12305  df-6 12306  df-7 12307  df-8 12308  df-9 12309  df-n0 12504  df-z 12591  df-dec 12711  df-uz 12862  df-q 12972  df-rp 13016  df-xneg 13136  df-xadd 13137  df-xmul 13138  df-icc 13378  df-fz 13535  df-fzo 13682  df-seq 14037  df-hash 14366  df-struct 17206  df-sets 17223  df-slot 17241  df-ndx 17253  df-base 17269  df-ress 17290  df-plusg 17322  df-mulr 17323  df-sca 17325  df-vsca 17326  df-ip 17327  df-tset 17328  df-ple 17329  df-ds 17331  df-hom 17333  df-cco 17334  df-rest 17474  df-topn 17475  df-0g 17493  df-gsum 17494  df-topgen 17495  df-pt 17496  df-prds 17499  df-xrs 17555  df-qtop 17560  df-imas 17561  df-xps 17563  df-mre 17637  df-mrc 17638  df-acs 17640  df-plusf 18696  df-mgm 18697  df-sgrp 18776  df-mnd 18792  df-submnd 18841  df-grp 19002  df-minusg 19003  df-sbg 19004  df-mulg 19133  df-cntz 19386  df-cmn 19851  df-abl 19852  df-psmet 21482  df-xmet 21483  df-met 21484  df-bl 21485  df-mopn 21486  df-top 23019  df-topon 23036  df-topsp 23058  df-bases 23071  df-cn 23352  df-cnp 23353  df-tx 23687  df-hmeo 23880  df-tmd 24197  df-tgp 24198  df-xms 24445  df-ms 24446  df-tms 24447  df-nm 24707  df-ngp 24708
This theorem is referenced by:  nrgtgp  24797  nlmtlm  24819
  Copyright terms: Public domain W3C validator