MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  cmetcusp Structured version   Unicode version

Theorem cmetcusp 22214
Description: The uniform space generated by a complete metric is a complete uniform space. (Contributed by Thierry Arnoux, 5-Dec-2017.)
Assertion
Ref Expression
cmetcusp  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (toUnifSp `  (metUnif `  D )
)  e. CUnifSp )

Proof of Theorem cmetcusp
Dummy variables  x  c  y are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 cmetmet 22149 . . . . 5  |-  ( D  e.  ( CMet `  X
)  ->  D  e.  ( Met `  X ) )
2 metxmet 21280 . . . . 5  |-  ( D  e.  ( Met `  X
)  ->  D  e.  ( *Met `  X
) )
3 xmetpsmet 21294 . . . . 5  |-  ( D  e.  ( *Met `  X )  ->  D  e.  (PsMet `  X )
)
41, 2, 33syl 18 . . . 4  |-  ( D  e.  ( CMet `  X
)  ->  D  e.  (PsMet `  X ) )
54anim2i 571 . . 3  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  ( X  =/=  (/)  /\  D  e.  (PsMet `  X )
) )
6 metuust 21506 . . 3  |-  ( ( X  =/=  (/)  /\  D  e.  (PsMet `  X )
)  ->  (metUnif `  D
)  e.  (UnifOn `  X ) )
7 eqid 2429 . . . 4  |-  (toUnifSp `  (metUnif `  D ) )  =  (toUnifSp `  (metUnif `  D
) )
87tususp 21218 . . 3  |-  ( (metUnif `  D )  e.  (UnifOn `  X )  ->  (toUnifSp `  (metUnif `  D )
)  e. UnifSp )
95, 6, 83syl 18 . 2  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (toUnifSp `  (metUnif `  D )
)  e. UnifSp )
10 simpll 758 . . . . 5  |-  ( ( ( ( X  =/=  (/)  /\  D  e.  (
CMet `  X )
)  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) )  /\  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )  ->  ( X  =/=  (/)  /\  D  e.  (
CMet `  X )
) )
1110simprd 464 . . . . . 6  |-  ( ( ( ( X  =/=  (/)  /\  D  e.  (
CMet `  X )
)  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) )  /\  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )  ->  D  e.  (
CMet `  X )
)
121, 2syl 17 . . . . . . . 8  |-  ( D  e.  ( CMet `  X
)  ->  D  e.  ( *Met `  X
) )
1312ad3antlr 735 . . . . . . 7  |-  ( ( ( ( X  =/=  (/)  /\  D  e.  (
CMet `  X )
)  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) )  /\  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )  ->  D  e.  ( *Met `  X
) )
147tusbas 21214 . . . . . . . . . . . 12  |-  ( (metUnif `  D )  e.  (UnifOn `  X )  ->  X  =  ( Base `  (toUnifSp `  (metUnif `  D )
) ) )
1514fveq2d 5885 . . . . . . . . . . 11  |-  ( (metUnif `  D )  e.  (UnifOn `  X )  ->  ( Fil `  X )  =  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D ) ) ) ) )
1615eleq2d 2499 . . . . . . . . . 10  |-  ( (metUnif `  D )  e.  (UnifOn `  X )  ->  (
c  e.  ( Fil `  X )  <->  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) ) )
175, 6, 163syl 18 . . . . . . . . 9  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (
c  e.  ( Fil `  X )  <->  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) ) )
1817biimpar 487 . . . . . . . 8  |-  ( ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D ) ) ) ) )  ->  c  e.  ( Fil `  X
) )
1918adantr 466 . . . . . . 7  |-  ( ( ( ( X  =/=  (/)  /\  D  e.  (
CMet `  X )
)  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) )  /\  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )  ->  c  e.  ( Fil `  X ) )
207tususs 21216 . . . . . . . . . . . . 13  |-  ( (metUnif `  D )  e.  (UnifOn `  X )  ->  (metUnif `  D )  =  (UnifSt `  (toUnifSp `  (metUnif `  D
) ) ) )
2120fveq2d 5885 . . . . . . . . . . . 12  |-  ( (metUnif `  D )  e.  (UnifOn `  X )  ->  (CauFilu `  (metUnif `  D ) )  =  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )
225, 6, 213syl 18 . . . . . . . . . . 11  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (CauFilu `  (metUnif `  D ) )  =  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )
2322eleq2d 2499 . . . . . . . . . 10  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (
c  e.  (CauFilu `  (metUnif `  D ) )  <->  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D ) ) ) ) ) )
2423biimpar 487 . . . . . . . . 9  |-  ( ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  /\  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )  ->  c  e.  (CauFilu `  (metUnif `  D )
) )
2524adantlr 719 . . . . . . . 8  |-  ( ( ( ( X  =/=  (/)  /\  D  e.  (
CMet `  X )
)  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) )  /\  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )  ->  c  e.  (CauFilu `  (metUnif `  D )
) )
26 cfilucfil2 21507 . . . . . . . . . 10  |-  ( ( X  =/=  (/)  /\  D  e.  (PsMet `  X )
)  ->  ( c  e.  (CauFilu `  (metUnif `  D
) )  <->  ( c  e.  ( fBas `  X
)  /\  A. x  e.  RR+  E. y  e.  c  ( D "
( y  X.  y
) )  C_  (
0 [,) x ) ) ) )
275, 26syl 17 . . . . . . . . 9  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (
c  e.  (CauFilu `  (metUnif `  D ) )  <->  ( c  e.  ( fBas `  X
)  /\  A. x  e.  RR+  E. y  e.  c  ( D "
( y  X.  y
) )  C_  (
0 [,) x ) ) ) )
2827simplbda 628 . . . . . . . 8  |-  ( ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  /\  c  e.  (CauFilu `  (metUnif `  D
) ) )  ->  A. x  e.  RR+  E. y  e.  c  ( D " ( y  X.  y
) )  C_  (
0 [,) x ) )
2910, 25, 28syl2anc 665 . . . . . . 7  |-  ( ( ( ( X  =/=  (/)  /\  D  e.  (
CMet `  X )
)  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) )  /\  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )  ->  A. x  e.  RR+  E. y  e.  c  ( D " ( y  X.  y ) ) 
C_  ( 0 [,) x ) )
30 iscfil 22128 . . . . . . . 8  |-  ( D  e.  ( *Met `  X )  ->  (
c  e.  (CauFil `  D )  <->  ( c  e.  ( Fil `  X
)  /\  A. x  e.  RR+  E. y  e.  c  ( D "
( y  X.  y
) )  C_  (
0 [,) x ) ) ) )
3130biimpar 487 . . . . . . 7  |-  ( ( D  e.  ( *Met `  X )  /\  ( c  e.  ( Fil `  X
)  /\  A. x  e.  RR+  E. y  e.  c  ( D "
( y  X.  y
) )  C_  (
0 [,) x ) ) )  ->  c  e.  (CauFil `  D )
)
3213, 19, 29, 31syl12anc 1262 . . . . . 6  |-  ( ( ( ( X  =/=  (/)  /\  D  e.  (
CMet `  X )
)  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) )  /\  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )  ->  c  e.  (CauFil `  D ) )
33 eqid 2429 . . . . . . 7  |-  ( MetOpen `  D )  =  (
MetOpen `  D )
3433cmetcvg 22148 . . . . . 6  |-  ( ( D  e.  ( CMet `  X )  /\  c  e.  (CauFil `  D )
)  ->  ( ( MetOpen
`  D )  fLim  c )  =/=  (/) )
3511, 32, 34syl2anc 665 . . . . 5  |-  ( ( ( ( X  =/=  (/)  /\  D  e.  (
CMet `  X )
)  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) )  /\  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )  ->  ( ( MetOpen `  D )  fLim  c
)  =/=  (/) )
36 eqid 2429 . . . . . . . . . . 11  |-  (unifTop `  (metUnif `  D ) )  =  (unifTop `  (metUnif `  D
) )
377, 36tustopn 21217 . . . . . . . . . 10  |-  ( (metUnif `  D )  e.  (UnifOn `  X )  ->  (unifTop `  (metUnif `  D )
)  =  ( TopOpen `  (toUnifSp `  (metUnif `  D
) ) ) )
385, 6, 373syl 18 . . . . . . . . 9  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (unifTop `  (metUnif `  D )
)  =  ( TopOpen `  (toUnifSp `  (metUnif `  D
) ) ) )
3912anim2i 571 . . . . . . . . . 10  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  ( X  =/=  (/)  /\  D  e.  ( *Met `  X ) ) )
40 xmetutop 21514 . . . . . . . . . 10  |-  ( ( X  =/=  (/)  /\  D  e.  ( *Met `  X ) )  -> 
(unifTop `  (metUnif `  D
) )  =  (
MetOpen `  D ) )
4139, 40syl 17 . . . . . . . . 9  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (unifTop `  (metUnif `  D )
)  =  ( MetOpen `  D ) )
4238, 41eqtr3d 2472 . . . . . . . 8  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  ( TopOpen
`  (toUnifSp `  (metUnif `  D
) ) )  =  ( MetOpen `  D )
)
4342oveq1d 6320 . . . . . . 7  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (
( TopOpen `  (toUnifSp `  (metUnif `  D ) ) ) 
fLim  c )  =  ( ( MetOpen `  D
)  fLim  c )
)
4443neeq1d 2708 . . . . . 6  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (
( ( TopOpen `  (toUnifSp `  (metUnif `  D )
) )  fLim  c
)  =/=  (/)  <->  ( ( MetOpen
`  D )  fLim  c )  =/=  (/) ) )
4544biimpar 487 . . . . 5  |-  ( ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  /\  (
( MetOpen `  D )  fLim  c )  =/=  (/) )  -> 
( ( TopOpen `  (toUnifSp `  (metUnif `  D )
) )  fLim  c
)  =/=  (/) )
4610, 35, 45syl2anc 665 . . . 4  |-  ( ( ( ( X  =/=  (/)  /\  D  e.  (
CMet `  X )
)  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) )  /\  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )  ->  ( ( TopOpen `  (toUnifSp `  (metUnif `  D
) ) )  fLim  c )  =/=  (/) )
4746ex 435 . . 3  |-  ( ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D ) ) ) ) )  ->  (
c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D
) ) ) )  ->  ( ( TopOpen `  (toUnifSp `  (metUnif `  D
) ) )  fLim  c )  =/=  (/) ) )
4847ralrimiva 2846 . 2  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  A. c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D ) ) ) ) ( c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) )  -> 
( ( TopOpen `  (toUnifSp `  (metUnif `  D )
) )  fLim  c
)  =/=  (/) ) )
49 iscusp 21245 . 2  |-  ( (toUnifSp `  (metUnif `  D )
)  e. CUnifSp  <->  ( (toUnifSp `  (metUnif `  D ) )  e. UnifSp  /\  A. c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D
) ) ) ) ( c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D ) ) ) )  ->  ( ( TopOpen
`  (toUnifSp `  (metUnif `  D
) ) )  fLim  c )  =/=  (/) ) ) )
509, 48, 49sylanbrc 668 1  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (toUnifSp `  (metUnif `  D )
)  e. CUnifSp )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 187    /\ wa 370    = wceq 1437    e. wcel 1870    =/= wne 2625   A.wral 2782   E.wrex 2783    C_ wss 3442   (/)c0 3767    X. cxp 4852   "cima 4857   ` cfv 5601  (class class class)co 6305   0cc0 9538   RR+crp 11302   [,)cico 11637   Basecbs 15084   TopOpenctopn 15279  PsMetcpsmet 18889   *Metcxmt 18890   Metcme 18891   fBascfbas 18893   MetOpencmopn 18895  metUnifcmetu 18896   Filcfil 20791    fLim cflim 20880  UnifOncust 21145  unifTopcutop 21176  UnifStcuss 21199  UnifSpcusp 21200  toUnifSpctus 21201  CauFiluccfilu 21232  CUnifSpccusp 21243  CauFilccfil 22115   CMetcms 22117
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1665  ax-4 1678  ax-5 1751  ax-6 1797  ax-7 1841  ax-8 1872  ax-9 1874  ax-10 1889  ax-11 1894  ax-12 1907  ax-13 2055  ax-ext 2407  ax-rep 4538  ax-sep 4548  ax-nul 4556  ax-pow 4603  ax-pr 4661  ax-un 6597  ax-cnex 9594  ax-resscn 9595  ax-1cn 9596  ax-icn 9597  ax-addcl 9598  ax-addrcl 9599  ax-mulcl 9600  ax-mulrcl 9601  ax-mulcom 9602  ax-addass 9603  ax-mulass 9604  ax-distr 9605  ax-i2m1 9606  ax-1ne0 9607  ax-1rid 9608  ax-rnegex 9609  ax-rrecex 9610  ax-cnre 9611  ax-pre-lttri 9612  ax-pre-lttrn 9613  ax-pre-ltadd 9614  ax-pre-mulgt0 9615  ax-pre-sup 9616
This theorem depends on definitions:  df-bi 188  df-or 371  df-an 372  df-3or 983  df-3an 984  df-tru 1440  df-ex 1660  df-nf 1664  df-sb 1790  df-eu 2270  df-mo 2271  df-clab 2415  df-cleq 2421  df-clel 2424  df-nfc 2579  df-ne 2627  df-nel 2628  df-ral 2787  df-rex 2788  df-reu 2789  df-rmo 2790  df-rab 2791  df-v 3089  df-sbc 3306  df-csb 3402  df-dif 3445  df-un 3447  df-in 3449  df-ss 3456  df-pss 3458  df-nul 3768  df-if 3916  df-pw 3987  df-sn 4003  df-pr 4005  df-tp 4007  df-op 4009  df-uni 4223  df-int 4259  df-iun 4304  df-br 4427  df-opab 4485  df-mpt 4486  df-tr 4521  df-eprel 4765  df-id 4769  df-po 4775  df-so 4776  df-fr 4813  df-we 4815  df-xp 4860  df-rel 4861  df-cnv 4862  df-co 4863  df-dm 4864  df-rn 4865  df-res 4866  df-ima 4867  df-pred 5399  df-ord 5445  df-on 5446  df-lim 5447  df-suc 5448  df-iota 5565  df-fun 5603  df-fn 5604  df-f 5605  df-f1 5606  df-fo 5607  df-f1o 5608  df-fv 5609  df-riota 6267  df-ov 6308  df-oprab 6309  df-mpt2 6310  df-om 6707  df-1st 6807  df-2nd 6808  df-wrecs 7036  df-recs 7098  df-rdg 7136  df-1o 7190  df-oadd 7194  df-er 7371  df-map 7482  df-en 7578  df-dom 7579  df-sdom 7580  df-fin 7581  df-sup 7962  df-pnf 9676  df-mnf 9677  df-xr 9678  df-ltxr 9679  df-le 9680  df-sub 9861  df-neg 9862  df-div 10269  df-nn 10610  df-2 10668  df-3 10669  df-4 10670  df-5 10671  df-6 10672  df-7 10673  df-8 10674  df-9 10675  df-10 10676  df-n0 10870  df-z 10938  df-dec 11052  df-uz 11160  df-q 11265  df-rp 11303  df-xneg 11409  df-xadd 11410  df-xmul 11411  df-ico 11641  df-fz 11783  df-struct 15086  df-ndx 15087  df-slot 15088  df-base 15089  df-sets 15090  df-tset 15171  df-unif 15175  df-rest 15280  df-topn 15281  df-topgen 15301  df-psmet 18897  df-xmet 18898  df-met 18899  df-bl 18900  df-mopn 18901  df-fbas 18902  df-fg 18903  df-metu 18904  df-fil 20792  df-ust 21146  df-utop 21177  df-uss 21202  df-usp 21203  df-tus 21204  df-cfilu 21233  df-cusp 21244  df-cfil 22118  df-cmet 22120
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator