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

Theorem tngngp2 24971
Description: A norm turns a group into a normed group iff the generated metric is in fact a metric. (Contributed by Mario Carneiro, 4-Oct-2015.)
Hypotheses
Ref Expression
tngngp2.t 𝑇 = (𝐺 toNrmGrp 𝑁)
tngngp2.x 𝑋 = (Base‘𝐺)
tngngp2.d 𝐷 = (dist‘𝑇)
Assertion
Ref Expression
tngngp2 (𝑁:𝑋⟶ℝ → (𝑇 ∈ NrmGrp ↔ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))))

Proof of Theorem tngngp2
Dummy variables 𝑥 𝑦 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 ngpgrp 24918 . . . . 5 (𝑇 ∈ NrmGrp → 𝑇 ∈ Grp)
2 tngngp2.x . . . . . . . 8 𝑋 = (Base‘𝐺)
32fvexi 6899 . . . . . . 7 𝑋 ∈ V
4 reex 11291 . . . . . . 7 ℝ ∈ V
5 fex2 7948 . . . . . . 7 ((𝑁:𝑋⟶ℝ ∧ 𝑋 ∈ V ∧ ℝ ∈ V) → 𝑁 ∈ V)
63, 4, 5mp3an23 1482 . . . . . 6 (𝑁:𝑋⟶ℝ → 𝑁 ∈ V)
72a1i 11 . . . . . . 7 (𝑁 ∈ V → 𝑋 = (Base‘𝐺))
8 tngngp2.t . . . . . . . 8 𝑇 = (𝐺 toNrmGrp 𝑁)
98, 2tngbas 24960 . . . . . . 7 (𝑁 ∈ V → 𝑋 = (Base‘𝑇))
10 eqid 2760 . . . . . . . . 9 (+g‘𝐺) = (+g‘𝐺)
118, 10tngplusg 24961 . . . . . . . 8 (𝑁 ∈ V → (+g‘𝐺) = (+g‘𝑇))
1211oveqdr 7448 . . . . . . 7 ((𝑁 ∈ V ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → (𝑥(+g‘𝐺)𝑦) = (𝑥(+g‘𝑇)𝑦))
137, 9, 12grppropd 19162 . . . . . 6 (𝑁 ∈ V → (𝐺 ∈ Grp ↔ 𝑇 ∈ Grp))
146, 13syl 18 . . . . 5 (𝑁:𝑋⟶ℝ → (𝐺 ∈ Grp ↔ 𝑇 ∈ Grp))
151, 14imbitrrid 249 . . . 4 (𝑁:𝑋⟶ℝ → (𝑇 ∈ NrmGrp → 𝐺 ∈ Grp))
1615imp 412 . . 3 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → 𝐺 ∈ Grp)
17 ngpms 24919 . . . . . 6 (𝑇 ∈ NrmGrp → 𝑇 ∈ MetSp)
1817adantl 487 . . . . 5 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → 𝑇 ∈ MetSp)
19 eqid 2760 . . . . . 6 (Base‘𝑇) = (Base‘𝑇)
20 tngngp2.d . . . . . 6 𝐷 = (dist‘𝑇)
2119, 20msmet2 24779 . . . . 5 (𝑇 ∈ MetSp → (𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇))) ∈ (Met‘(Base‘𝑇)))
2218, 21syl 18 . . . 4 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → (𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇))) ∈ (Met‘(Base‘𝑇)))
23 eqid 2760 . . . . . . . . . 10 (-g‘𝐺) = (-g‘𝐺)
242, 23grpsubf 19229 . . . . . . . . 9 (𝐺 ∈ Grp → (-g‘𝐺):(𝑋 × 𝑋)⟶𝑋)
2516, 24syl 18 . . . . . . . 8 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → (-g‘𝐺):(𝑋 × 𝑋)⟶𝑋)
26 fco 6734 . . . . . . . 8 ((𝑁:𝑋⟶ℝ ∧ (-g‘𝐺):(𝑋 × 𝑋)⟶𝑋) → (𝑁 ∘ (-g‘𝐺)):(𝑋 × 𝑋)⟶ℝ)
2725, 26syldan 603 . . . . . . 7 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → (𝑁 ∘ (-g‘𝐺)):(𝑋 × 𝑋)⟶ℝ)
286adantr 486 . . . . . . . . . 10 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → 𝑁 ∈ V)
298, 23tngds 24967 . . . . . . . . . 10 (𝑁 ∈ V → (𝑁 ∘ (-g‘𝐺)) = (dist‘𝑇))
3028, 29syl 18 . . . . . . . . 9 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → (𝑁 ∘ (-g‘𝐺)) = (dist‘𝑇))
3120, 30eqtr4id 2814 . . . . . . . 8 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → 𝐷 = (𝑁 ∘ (-g‘𝐺)))
3231feq1d 6691 . . . . . . 7 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → (𝐷:(𝑋 × 𝑋)⟶ℝ ↔ (𝑁 ∘ (-g‘𝐺)):(𝑋 × 𝑋)⟶ℝ))
3327, 32mpbird 260 . . . . . 6 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → 𝐷:(𝑋 × 𝑋)⟶ℝ)
34 ffn 6709 . . . . . 6 (𝐷:(𝑋 × 𝑋)⟶ℝ → 𝐷 Fn (𝑋 × 𝑋))
35 fnresdm 6658 . . . . . 6 (𝐷 Fn (𝑋 × 𝑋) → (𝐷 ↾ (𝑋 × 𝑋)) = 𝐷)
3633, 34, 353syl 19 . . . . 5 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → (𝐷 ↾ (𝑋 × 𝑋)) = 𝐷)
3728, 9syl 18 . . . . . . 7 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → 𝑋 = (Base‘𝑇))
3837sqxpeqd 5682 . . . . . 6 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → (𝑋 × 𝑋) = ((Base‘𝑇) × (Base‘𝑇)))
3938reseq2d 5969 . . . . 5 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → (𝐷 ↾ (𝑋 × 𝑋)) = (𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇))))
4036, 39eqtr3d 2797 . . . 4 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → 𝐷 = (𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇))))
4137fveq2d 6889 . . . 4 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → (Met‘𝑋) = (Met‘(Base‘𝑇)))
4222, 40, 413eltr4d 2875 . . 3 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → 𝐷 ∈ (Met‘𝑋))
4316, 42jca 521 . 2 ((𝑁:𝑋⟶ℝ ∧ 𝑇 ∈ NrmGrp) → (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋)))
4414biimpa 482 . . . 4 ((𝑁:𝑋⟶ℝ ∧ 𝐺 ∈ Grp) → 𝑇 ∈ Grp)
4544adantrr 730 . . 3 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → 𝑇 ∈ Grp)
46 simprr 785 . . . . . . 7 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → 𝐷 ∈ (Met‘𝑋))
476adantr 486 . . . . . . . . 9 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → 𝑁 ∈ V)
4847, 9syl 18 . . . . . . . 8 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → 𝑋 = (Base‘𝑇))
4948fveq2d 6889 . . . . . . 7 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → (Met‘𝑋) = (Met‘(Base‘𝑇)))
5046, 49eleqtrd 2862 . . . . . 6 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → 𝐷 ∈ (Met‘(Base‘𝑇)))
51 metf 24649 . . . . . 6 (𝐷 ∈ (Met‘(Base‘𝑇)) → 𝐷:((Base‘𝑇) × (Base‘𝑇))⟶ℝ)
52 ffn 6709 . . . . . 6 (𝐷:((Base‘𝑇) × (Base‘𝑇))⟶ℝ → 𝐷 Fn ((Base‘𝑇) × (Base‘𝑇)))
53 fnresdm 6658 . . . . . 6 (𝐷 Fn ((Base‘𝑇) × (Base‘𝑇)) → (𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇))) = 𝐷)
5450, 51, 52, 534syl 20 . . . . 5 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → (𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇))) = 𝐷)
5554, 50eqeltrd 2860 . . . 4 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → (𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇))) ∈ (Met‘(Base‘𝑇)))
5654fveq2d 6889 . . . . 5 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → (MetOpen‘(𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇)))) = (MetOpen‘𝐷))
57 simprl 783 . . . . . 6 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → 𝐺 ∈ Grp)
58 eqid 2760 . . . . . . 7 (MetOpen‘𝐷) = (MetOpen‘𝐷)
598, 20, 58tngtopn 24969 . . . . . 6 ((𝐺 ∈ Grp ∧ 𝑁 ∈ V) → (MetOpen‘𝐷) = (TopOpen‘𝑇))
6057, 47, 59syl2anc 596 . . . . 5 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → (MetOpen‘𝐷) = (TopOpen‘𝑇))
6156, 60eqtr2d 2796 . . . 4 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → (TopOpen‘𝑇) = (MetOpen‘(𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇)))))
62 eqid 2760 . . . . 5 (TopOpen‘𝑇) = (TopOpen‘𝑇)
6320reseq1i 5965 . . . . 5 (𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇))) = ((dist‘𝑇) ↾ ((Base‘𝑇) × (Base‘𝑇)))
6462, 19, 63isms2 24769 . . . 4 (𝑇 ∈ MetSp ↔ ((𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇))) ∈ (Met‘(Base‘𝑇)) ∧ (TopOpen‘𝑇) = (MetOpen‘(𝐷 ↾ ((Base‘𝑇) × (Base‘𝑇))))))
6555, 61, 64sylanbrc 595 . . 3 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → 𝑇 ∈ MetSp)
66 simpl 488 . . . . . . 7 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → 𝑁:𝑋⟶ℝ)
678, 2, 4tngnm 24970 . . . . . . 7 ((𝐺 ∈ Grp ∧ 𝑁:𝑋⟶ℝ) → 𝑁 = (norm‘𝑇))
6857, 66, 67syl2anc 596 . . . . . 6 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → 𝑁 = (norm‘𝑇))
697, 9eqtr3d 2797 . . . . . . . 8 (𝑁 ∈ V → (Base‘𝐺) = (Base‘𝑇))
7069, 11grpsubpropd 19255 . . . . . . 7 (𝑁 ∈ V → (-g‘𝐺) = (-g‘𝑇))
7147, 70syl 18 . . . . . 6 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → (-g‘𝐺) = (-g‘𝑇))
7268, 71coeq12d 5841 . . . . 5 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → (𝑁 ∘ (-g‘𝐺)) = ((norm‘𝑇) ∘ (-g‘𝑇)))
7347, 29syl 18 . . . . 5 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → (𝑁 ∘ (-g‘𝐺)) = (dist‘𝑇))
7472, 73eqtr3d 2797 . . . 4 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → ((norm‘𝑇) ∘ (-g‘𝑇)) = (dist‘𝑇))
75 eqimss 3966 . . . 4 (((norm‘𝑇) ∘ (-g‘𝑇)) = (dist‘𝑇) → ((norm‘𝑇) ∘ (-g‘𝑇)) ⊆ (dist‘𝑇))
7674, 75syl 18 . . 3 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → ((norm‘𝑇) ∘ (-g‘𝑇)) ⊆ (dist‘𝑇))
77 eqid 2760 . . . 4 (norm‘𝑇) = (norm‘𝑇)
78 eqid 2760 . . . 4 (-g‘𝑇) = (-g‘𝑇)
79 eqid 2760 . . . 4 (dist‘𝑇) = (dist‘𝑇)
8077, 78, 79isngp 24915 . . 3 (𝑇 ∈ NrmGrp ↔ (𝑇 ∈ Grp ∧ 𝑇 ∈ MetSp ∧ ((norm‘𝑇) ∘ (-g‘𝑇)) ⊆ (dist‘𝑇)))
8145, 65, 76, 80syl3anbrc 1362 . 2 ((𝑁:𝑋⟶ℝ ∧ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))) → 𝑇 ∈ NrmGrp)
8243, 81impbida 813 1 (𝑁:𝑋⟶ℝ → (𝑇 ∈ NrmGrp ↔ (𝐺 ∈ Grp ∧ 𝐷 ∈ (Met‘𝑋))))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ↔ wb 209   ∧ wa 401   = wceq 1569   ∈ wcel 2144  Vcvv 3450   ⊆ wss 3895   × cxp 5648   ↾ cres 5652   ∘ ccom 5654   Fn wfn 6533  ⟶wf 6534  ‘cfv 6538  (class class class)co 7420  ℝcr 11199  Basecbs 17387  +gcplusg 17428  distcds 17437  TopOpenctopn 17592  Grpcgrp 19144  -gcsg 19146  Metcmet 21664  MetOpencmopn 21668  MetSpcms 24637  normcnm 24895  NrmGrpcngp 24896   toNrmGrp ctng 24897
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1827  ax-4 1841  ax-5 1942  ax-6 1999  ax-7 2040  ax-8 2146  ax-9 2154  ax-10 2177  ax-11 2193  ax-12 2212  ax-ext 2732  ax-rep 5231  ax-sep 5248  ax-nul 5259  ax-pow 5326  ax-pr 5390  ax-un 7751  ax-cnex 11256  ax-resscn 11257  ax-1cn 11258  ax-icn 11259  ax-addcl 11260  ax-addrcl 11261  ax-mulcl 11262  ax-mulrcl 11263  ax-mulcom 11264  ax-addass 11265  ax-mulass 11266  ax-distr 11267  ax-i2m1 11268  ax-1ne0 11269  ax-1rid 11270  ax-rnegex 11271  ax-rrecex 11272  ax-cnre 11273  ax-pre-lttri 11274  ax-pre-lttrn 11275  ax-pre-ltadd 11276  ax-pre-mulgt0 11277  ax-pre-sup 11278
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1572  df-fal 1582  df-ex 1812  df-nf 1816  df-sb 2099  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3739  df-csb 3847  df-ss 3896  df-pss 4014  df-dif 4047  df-in 4091  df-un 4151  df-nul 4279  df-if 4482  df-pw 4558  df-sn 4584  df-pr 4586  df-op 4590  df-uni 4867  df-iun 4952  df-br 5103  df-opab 5167  df-mpt 5186  df-tr 5212  df-id 5545  df-eprel 5550  df-po 5558  df-so 5559  df-fr 5603  df-we 5605  df-xp 5656  df-rel 5657  df-cnv 5658  df-co 5659  df-dm 5660  df-rn 5661  df-res 5662  df-ima 5663  df-pred 6304  df-ord 6365  df-on 6366  df-lim 6367  df-suc 6368  df-iota 6494  df-fun 6540  df-fn 6541  df-f 6542  df-f1 6543  df-fo 6544  df-f1o 6545  df-fv 6546  df-riota 7377  df-ov 7423  df-oprab 7424  df-mpo 7425  df-om 7878  df-1st 8001  df-2nd 8002  df-frecs 8299  df-wrecs 8330  df-recs 8379  df-rdg 8418  df-er 8717  df-map 8849  df-en 8974  df-dom 8975  df-sdom 8976  df-sup 9434  df-inf 9435  df-pnf 11345  df-mnf 11346  df-xr 11347  df-ltxr 11348  df-le 11349  df-sub 11543  df-neg 11544  df-div 11974  df-nn 12336  df-2 12405  df-3 12406  df-4 12407  df-5 12408  df-6 12409  df-7 12410  df-8 12411  df-9 12412  df-n0 12607  df-z 12694  df-dec 12815  df-uz 12966  df-q 13076  df-rp 13121  df-xneg 13241  df-xadd 13242  df-xmul 13243  df-sets 17342  df-slot 17360  df-ndx 17372  df-base 17388  df-plusg 17441  df-tset 17447  df-ds 17450  df-rest 17593  df-topn 17594  df-0g 17612  df-topgen 17614  df-mgm 18816  df-sgrp 18908  df-mnd 18924  df-grp 19147  df-minusg 19148  df-sbg 19149  df-psmet 21670  df-xmet 21671  df-met 21672  df-bl 21673  df-mopn 21674  df-top 23212  df-topon 23229  df-topsp 23251  df-bases 23264  df-xms 24639  df-ms 24640  df-nm 24901  df-ngp 24902  df-tng 24903
This theorem is used by:  tngngpd  24972  tngngp  24973  nrmtngnrm  24977  tngngpim  24978  tngnrg  24993
  Copyright terms: Public domain W3C validator