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

Theorem ngptgp 24649
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 24612 . . 3 (𝐺 ∈ NrmGrp → 𝐺 ∈ Grp)
21adantr 480 . 2 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ Grp)
3 ngpms 24613 . . . 4 (𝐺 ∈ NrmGrp → 𝐺 ∈ MetSp)
43adantr 480 . . 3 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ MetSp)
5 mstps 24465 . . 3 (𝐺 ∈ MetSp → 𝐺 ∈ TopSp)
64, 5syl 17 . 2 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ TopSp)
7 eqid 2737 . . . . . 6 (Base‘𝐺) = (Base‘𝐺)
8 eqid 2737 . . . . . 6 (-g𝐺) = (-g𝐺)
97, 8grpsubf 19037 . . . . 5 (𝐺 ∈ Grp → (-g𝐺):((Base‘𝐺) × (Base‘𝐺))⟶(Base‘𝐺))
102, 9syl 17 . . . 4 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (-g𝐺):((Base‘𝐺) × (Base‘𝐺))⟶(Base‘𝐺))
11 rphalfcl 13062 . . . . . . 7 (𝑧 ∈ ℝ+ → (𝑧 / 2) ∈ ℝ+)
12 simplll 775 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel))
1312, 4syl 17 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝐺 ∈ MetSp)
14 simpllr 776 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)))
1514simpld 494 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑥 ∈ (Base‘𝐺))
16 simprl 771 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑢 ∈ (Base‘𝐺))
17 eqid 2737 . . . . . . . . . . . . 13 (dist‘𝐺) = (dist‘𝐺)
187, 17mscl 24471 . . . . . . . . . . . 12 ((𝐺 ∈ MetSp ∧ 𝑥 ∈ (Base‘𝐺) ∧ 𝑢 ∈ (Base‘𝐺)) → (𝑥(dist‘𝐺)𝑢) ∈ ℝ)
1913, 15, 16, 18syl3anc 1373 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥(dist‘𝐺)𝑢) ∈ ℝ)
2014simprd 495 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑦 ∈ (Base‘𝐺))
21 simprr 773 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑣 ∈ (Base‘𝐺))
227, 17mscl 24471 . . . . . . . . . . . 12 ((𝐺 ∈ MetSp ∧ 𝑦 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺)) → (𝑦(dist‘𝐺)𝑣) ∈ ℝ)
2313, 20, 21, 22syl3anc 1373 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑦(dist‘𝐺)𝑣) ∈ ℝ)
24 rpre 13043 . . . . . . . . . . . 12 (𝑧 ∈ ℝ+𝑧 ∈ ℝ)
2524ad2antlr 727 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝑧 ∈ ℝ)
26 lt2halves 12501 . . . . . . . . . . 11 (((𝑥(dist‘𝐺)𝑢) ∈ ℝ ∧ (𝑦(dist‘𝐺)𝑣) ∈ ℝ ∧ 𝑧 ∈ ℝ) → (((𝑥(dist‘𝐺)𝑢) < (𝑧 / 2) ∧ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2)) → ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧))
2719, 23, 25, 26syl3anc 1373 . . . . . . . . . 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 19038 . . . . . . . . . . . . . 14 ((𝐺 ∈ Grp ∧ 𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)) → (𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺))
3028, 15, 20, 29syl3anc 1373 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺))
317, 8grpsubcl 19038 . . . . . . . . . . . . . 14 ((𝐺 ∈ Grp ∧ 𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺))
3228, 16, 21, 31syl3anc 1373 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺))
337, 8grpsubcl 19038 . . . . . . . . . . . . . 14 ((𝐺 ∈ Grp ∧ 𝑢 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑦) ∈ (Base‘𝐺))
3428, 16, 20, 33syl3anc 1373 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑦) ∈ (Base‘𝐺))
357, 17mstri 24479 . . . . . . . . . . . . 13 ((𝐺 ∈ MetSp ∧ ((𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺) ∧ (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺) ∧ (𝑢(-g𝐺)𝑦) ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ (((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) + ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣))))
3613, 30, 32, 34, 35syl13anc 1374 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ (((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) + ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣))))
3712simpld 494 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → 𝐺 ∈ NrmGrp)
387, 8, 17ngpsubcan 24627 . . . . . . . . . . . . . 14 ((𝐺 ∈ NrmGrp ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑢 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) = (𝑥(dist‘𝐺)𝑢))
3937, 15, 16, 20, 38syl13anc 1374 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) = (𝑥(dist‘𝐺)𝑢))
40 eqid 2737 . . . . . . . . . . . . . . . . 17 (+g𝐺) = (+g𝐺)
41 eqid 2737 . . . . . . . . . . . . . . . . 17 (invg𝐺) = (invg𝐺)
427, 40, 41, 8grpsubval 19003 . . . . . . . . . . . . . . . 16 ((𝑢 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑦) = (𝑢(+g𝐺)((invg𝐺)‘𝑦)))
4316, 20, 42syl2anc 584 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑦) = (𝑢(+g𝐺)((invg𝐺)‘𝑦)))
447, 40, 41, 8grpsubval 19003 . . . . . . . . . . . . . . . 16 ((𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺)) → (𝑢(-g𝐺)𝑣) = (𝑢(+g𝐺)((invg𝐺)‘𝑣)))
4544adantl 481 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑢(-g𝐺)𝑣) = (𝑢(+g𝐺)((invg𝐺)‘𝑣)))
4643, 45oveq12d 7449 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) = ((𝑢(+g𝐺)((invg𝐺)‘𝑦))(dist‘𝐺)(𝑢(+g𝐺)((invg𝐺)‘𝑣))))
477, 41grpinvcl 19005 . . . . . . . . . . . . . . . 16 ((𝐺 ∈ Grp ∧ 𝑦 ∈ (Base‘𝐺)) → ((invg𝐺)‘𝑦) ∈ (Base‘𝐺))
4828, 20, 47syl2anc 584 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((invg𝐺)‘𝑦) ∈ (Base‘𝐺))
497, 41grpinvcl 19005 . . . . . . . . . . . . . . . 16 ((𝐺 ∈ Grp ∧ 𝑣 ∈ (Base‘𝐺)) → ((invg𝐺)‘𝑣) ∈ (Base‘𝐺))
5028, 21, 49syl2anc 584 . . . . . . . . . . . . . . 15 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((invg𝐺)‘𝑣) ∈ (Base‘𝐺))
517, 40, 17ngplcan 24624 . . . . . . . . . . . . . . 15 (((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (((invg𝐺)‘𝑦) ∈ (Base‘𝐺) ∧ ((invg𝐺)‘𝑣) ∈ (Base‘𝐺) ∧ 𝑢 ∈ (Base‘𝐺))) → ((𝑢(+g𝐺)((invg𝐺)‘𝑦))(dist‘𝐺)(𝑢(+g𝐺)((invg𝐺)‘𝑣))) = (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)))
5212, 48, 50, 16, 51syl13anc 1374 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑢(+g𝐺)((invg𝐺)‘𝑦))(dist‘𝐺)(𝑢(+g𝐺)((invg𝐺)‘𝑣))) = (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)))
537, 41, 17ngpinvds 24626 . . . . . . . . . . . . . . 15 (((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑦 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)) = (𝑦(dist‘𝐺)𝑣))
5412, 20, 21, 53syl12anc 837 . . . . . . . . . . . . . 14 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((invg𝐺)‘𝑦)(dist‘𝐺)((invg𝐺)‘𝑣)) = (𝑦(dist‘𝐺)𝑣))
5546, 52, 543eqtrd 2781 . . . . . . . . . . . . 13 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) = (𝑦(dist‘𝐺)𝑣))
5639, 55oveq12d 7449 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑦)) + ((𝑢(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣))) = ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)))
5736, 56breqtrd 5169 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)))
587, 17mscl 24471 . . . . . . . . . . . . 13 ((𝐺 ∈ MetSp ∧ (𝑥(-g𝐺)𝑦) ∈ (Base‘𝐺) ∧ (𝑢(-g𝐺)𝑣) ∈ (Base‘𝐺)) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ∈ ℝ)
5913, 30, 32, 58syl3anc 1373 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ∈ ℝ)
6019, 23readdcld 11290 . . . . . . . . . . . 12 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∈ ℝ)
61 lelttr 11351 . . . . . . . . . . . 12 ((((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ∈ ℝ ∧ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∈ ℝ ∧ 𝑧 ∈ ℝ) → ((((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∧ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
6259, 60, 25, 61syl3anc 1373 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) ≤ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) ∧ ((𝑥(dist‘𝐺)𝑢) + (𝑦(dist‘𝐺)𝑣)) < 𝑧) → ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
6357, 62mpand 695 . . . . . . . . . 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 7600 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) = (𝑥(dist‘𝐺)𝑢))
6665breq1d 5153 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ↔ (𝑥(dist‘𝐺)𝑢) < (𝑧 / 2)))
6720, 21ovresd 7600 . . . . . . . . . . 11 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) = (𝑦(dist‘𝐺)𝑣))
6867breq1d 5153 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2) ↔ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2)))
6966, 68anbi12d 632 . . . . . . . . 9 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)) ↔ ((𝑥(dist‘𝐺)𝑢) < (𝑧 / 2) ∧ (𝑦(dist‘𝐺)𝑣) < (𝑧 / 2))))
7030, 32ovresd 7600 . . . . . . . . . 10 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) = ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)))
7170breq1d 5153 . . . . . . . . 9 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧 ↔ ((𝑥(-g𝐺)𝑦)(dist‘𝐺)(𝑢(-g𝐺)𝑣)) < 𝑧))
7264, 69, 713imtr4d 294 . . . . . . . 8 (((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) ∧ (𝑢 ∈ (Base‘𝐺) ∧ 𝑣 ∈ (Base‘𝐺))) → (((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
7372ralrimivva 3202 . . . . . . 7 ((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) → ∀𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
74 breq2 5147 . . . . . . . . . . 11 (𝑟 = (𝑧 / 2) → ((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ↔ (𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2)))
75 breq2 5147 . . . . . . . . . . 11 (𝑟 = (𝑧 / 2) → ((𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟 ↔ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2)))
7674, 75anbi12d 632 . . . . . . . . . 10 (𝑟 = (𝑧 / 2) → (((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) ↔ ((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < (𝑧 / 2) ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < (𝑧 / 2))))
7776imbi1d 341 . . . . . . . . 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 3221 . . . . . . . 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 3622 . . . . . . 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 686 . . . . . 6 ((((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) ∧ 𝑧 ∈ ℝ+) → ∃𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
8180ralrimiva 3146 . . . . 5 (((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) ∧ (𝑥 ∈ (Base‘𝐺) ∧ 𝑦 ∈ (Base‘𝐺))) → ∀𝑧 ∈ ℝ+𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
8281ralrimivva 3202 . . . 4 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → ∀𝑥 ∈ (Base‘𝐺)∀𝑦 ∈ (Base‘𝐺)∀𝑧 ∈ ℝ+𝑟 ∈ ℝ+𝑢 ∈ (Base‘𝐺)∀𝑣 ∈ (Base‘𝐺)(((𝑥((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑢) < 𝑟 ∧ (𝑦((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))𝑣) < 𝑟) → ((𝑥(-g𝐺)𝑦)((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))(𝑢(-g𝐺)𝑣)) < 𝑧))
83 msxms 24464 . . . . . 6 (𝐺 ∈ MetSp → 𝐺 ∈ ∞MetSp)
84 eqid 2737 . . . . . . 7 ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) = ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))
857, 84xmsxmet 24466 . . . . . 6 (𝐺 ∈ ∞MetSp → ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) ∈ (∞Met‘(Base‘𝐺)))
864, 83, 853syl 18 . . . . 5 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → ((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))) ∈ (∞Met‘(Base‘𝐺)))
87 eqid 2737 . . . . . 6 (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) = (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))
8887, 87, 87txmetcn 24561 . . . . 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 1373 . . . 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 713 . . 3 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (-g𝐺) ∈ (((MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) ×t (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))) Cn (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))))
91 eqid 2737 . . . . . . 7 (TopOpen‘𝐺) = (TopOpen‘𝐺)
9291, 7, 84mstopn 24462 . . . . . 6 (𝐺 ∈ MetSp → (TopOpen‘𝐺) = (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))))
934, 92syl 17 . . . . 5 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (TopOpen‘𝐺) = (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))))
9493, 93oveq12d 7449 . . . 4 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → ((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) = ((MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) ×t (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))))
9594, 93oveq12d 7449 . . 3 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) Cn (TopOpen‘𝐺)) = (((MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺)))) ×t (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))) Cn (MetOpen‘((dist‘𝐺) ↾ ((Base‘𝐺) × (Base‘𝐺))))))
9690, 95eleqtrrd 2844 . 2 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → (-g𝐺) ∈ (((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) Cn (TopOpen‘𝐺)))
9791, 8istgp2 24099 . 2 (𝐺 ∈ TopGrp ↔ (𝐺 ∈ Grp ∧ 𝐺 ∈ TopSp ∧ (-g𝐺) ∈ (((TopOpen‘𝐺) ×t (TopOpen‘𝐺)) Cn (TopOpen‘𝐺))))
982, 6, 96, 97syl3anbrc 1344 1 ((𝐺 ∈ NrmGrp ∧ 𝐺 ∈ Abel) → 𝐺 ∈ TopGrp)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395   = wceq 1540  wcel 2108  wral 3061  wrex 3070   class class class wbr 5143   × cxp 5683  cres 5687  wf 6557  cfv 6561  (class class class)co 7431  cr 11154   + caddc 11158   < clt 11295  cle 11296   / cdiv 11920  2c2 12321  +crp 13034  Basecbs 17247  +gcplusg 17297  distcds 17306  TopOpenctopn 17466  Grpcgrp 18951  invgcminusg 18952  -gcsg 18953  Abelcabl 19799  ∞Metcxmet 21349  MetOpencmopn 21354  TopSpctps 22938   Cn ccn 23232   ×t ctx 23568  TopGrpctgp 24079  ∞MetSpcxms 24327  MetSpcms 24328  NrmGrpcngp 24590
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1795  ax-4 1809  ax-5 1910  ax-6 1967  ax-7 2007  ax-8 2110  ax-9 2118  ax-10 2141  ax-11 2157  ax-12 2177  ax-ext 2708  ax-rep 5279  ax-sep 5296  ax-nul 5306  ax-pow 5365  ax-pr 5432  ax-un 7755  ax-cnex 11211  ax-resscn 11212  ax-1cn 11213  ax-icn 11214  ax-addcl 11215  ax-addrcl 11216  ax-mulcl 11217  ax-mulrcl 11218  ax-mulcom 11219  ax-addass 11220  ax-mulass 11221  ax-distr 11222  ax-i2m1 11223  ax-1ne0 11224  ax-1rid 11225  ax-rnegex 11226  ax-rrecex 11227  ax-cnre 11228  ax-pre-lttri 11229  ax-pre-lttrn 11230  ax-pre-ltadd 11231  ax-pre-mulgt0 11232  ax-pre-sup 11233
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3or 1088  df-3an 1089  df-tru 1543  df-fal 1553  df-ex 1780  df-nf 1784  df-sb 2065  df-mo 2540  df-eu 2569  df-clab 2715  df-cleq 2729  df-clel 2816  df-nfc 2892  df-ne 2941  df-nel 3047  df-ral 3062  df-rex 3071  df-rmo 3380  df-reu 3381  df-rab 3437  df-v 3482  df-sbc 3789  df-csb 3900  df-dif 3954  df-un 3956  df-in 3958  df-ss 3968  df-pss 3971  df-nul 4334  df-if 4526  df-pw 4602  df-sn 4627  df-pr 4629  df-tp 4631  df-op 4633  df-uni 4908  df-int 4947  df-iun 4993  df-iin 4994  df-br 5144  df-opab 5206  df-mpt 5226  df-tr 5260  df-id 5578  df-eprel 5584  df-po 5592  df-so 5593  df-fr 5637  df-se 5638  df-we 5639  df-xp 5691  df-rel 5692  df-cnv 5693  df-co 5694  df-dm 5695  df-rn 5696  df-res 5697  df-ima 5698  df-pred 6321  df-ord 6387  df-on 6388  df-lim 6389  df-suc 6390  df-iota 6514  df-fun 6563  df-fn 6564  df-f 6565  df-f1 6566  df-fo 6567  df-f1o 6568  df-fv 6569  df-isom 6570  df-riota 7388  df-ov 7434  df-oprab 7435  df-mpo 7436  df-of 7697  df-om 7888  df-1st 8014  df-2nd 8015  df-supp 8186  df-frecs 8306  df-wrecs 8337  df-recs 8411  df-rdg 8450  df-1o 8506  df-2o 8507  df-er 8745  df-map 8868  df-ixp 8938  df-en 8986  df-dom 8987  df-sdom 8988  df-fin 8989  df-fsupp 9402  df-fi 9451  df-sup 9482  df-inf 9483  df-oi 9550  df-card 9979  df-pnf 11297  df-mnf 11298  df-xr 11299  df-ltxr 11300  df-le 11301  df-sub 11494  df-neg 11495  df-div 11921  df-nn 12267  df-2 12329  df-3 12330  df-4 12331  df-5 12332  df-6 12333  df-7 12334  df-8 12335  df-9 12336  df-n0 12527  df-z 12614  df-dec 12734  df-uz 12879  df-q 12991  df-rp 13035  df-xneg 13154  df-xadd 13155  df-xmul 13156  df-icc 13394  df-fz 13548  df-fzo 13695  df-seq 14043  df-hash 14370  df-struct 17184  df-sets 17201  df-slot 17219  df-ndx 17231  df-base 17248  df-ress 17275  df-plusg 17310  df-mulr 17311  df-sca 17313  df-vsca 17314  df-ip 17315  df-tset 17316  df-ple 17317  df-ds 17319  df-hom 17321  df-cco 17322  df-rest 17467  df-topn 17468  df-0g 17486  df-gsum 17487  df-topgen 17488  df-pt 17489  df-prds 17492  df-xrs 17547  df-qtop 17552  df-imas 17553  df-xps 17555  df-mre 17629  df-mrc 17630  df-acs 17632  df-plusf 18652  df-mgm 18653  df-sgrp 18732  df-mnd 18748  df-submnd 18797  df-grp 18954  df-minusg 18955  df-sbg 18956  df-mulg 19086  df-cntz 19335  df-cmn 19800  df-abl 19801  df-psmet 21356  df-xmet 21357  df-met 21358  df-bl 21359  df-mopn 21360  df-top 22900  df-topon 22917  df-topsp 22939  df-bases 22953  df-cn 23235  df-cnp 23236  df-tx 23570  df-hmeo 23763  df-tmd 24080  df-tgp 24081  df-xms 24330  df-ms 24331  df-tms 24332  df-nm 24595  df-ngp 24596
This theorem is referenced by:  nrgtgp  24693  nlmtlm  24715
  Copyright terms: Public domain W3C validator