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

Theorem cmetcusp 23150
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 23084 . . . . 5  |-  ( D  e.  ( CMet `  X
)  ->  D  e.  ( Met `  X ) )
2 metxmet 22139 . . . . 5  |-  ( D  e.  ( Met `  X
)  ->  D  e.  ( *Met `  X
) )
3 xmetpsmet 22153 . . . . 5  |-  ( D  e.  ( *Met `  X )  ->  D  e.  (PsMet `  X )
)
41, 2, 33syl 18 . . . 4  |-  ( D  e.  ( CMet `  X
)  ->  D  e.  (PsMet `  X ) )
54anim2i 593 . . 3  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  ( X  =/=  (/)  /\  D  e.  (PsMet `  X )
) )
6 metuust 22365 . . 3  |-  ( ( X  =/=  (/)  /\  D  e.  (PsMet `  X )
)  ->  (metUnif `  D
)  e.  (UnifOn `  X ) )
7 eqid 2622 . . . 4  |-  (toUnifSp `  (metUnif `  D ) )  =  (toUnifSp `  (metUnif `  D
) )
87tususp 22076 . . 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 790 . . . . 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 479 . . . . . 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 767 . . . . . . 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 22072 . . . . . . . . . . . 12  |-  ( (metUnif `  D )  e.  (UnifOn `  X )  ->  X  =  ( Base `  (toUnifSp `  (metUnif `  D )
) ) )
1514fveq2d 6195 . . . . . . . . . . 11  |-  ( (metUnif `  D )  e.  (UnifOn `  X )  ->  ( Fil `  X )  =  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D ) ) ) ) )
1615eleq2d 2687 . . . . . . . . . 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 502 . . . . . . . 8  |-  ( ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  /\  c  e.  ( Fil `  ( Base `  (toUnifSp `  (metUnif `  D ) ) ) ) )  ->  c  e.  ( Fil `  X
) )
1918adantr 481 . . . . . . 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 22074 . . . . . . . . . . . . 13  |-  ( (metUnif `  D )  e.  (UnifOn `  X )  ->  (metUnif `  D )  =  (UnifSt `  (toUnifSp `  (metUnif `  D
) ) ) )
2120fveq2d 6195 . . . . . . . . . . . 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 2687 . . . . . . . . . 10  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (
c  e.  (CauFilu `  (metUnif `  D ) )  <->  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D ) ) ) ) ) )
2423biimpar 502 . . . . . . . . 9  |-  ( ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  /\  c  e.  (CauFilu `  (UnifSt `  (toUnifSp `  (metUnif `  D )
) ) ) )  ->  c  e.  (CauFilu `  (metUnif `  D )
) )
2524adantlr 751 . . . . . . . 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 22366 . . . . . . . . . 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 654 . . . . . . . 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 693 . . . . . . 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 23063 . . . . . . . 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 502 . . . . . . 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 1324 . . . . . 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 2622 . . . . . . 7  |-  ( MetOpen `  D )  =  (
MetOpen `  D )
3433cmetcvg 23083 . . . . . 6  |-  ( ( D  e.  ( CMet `  X )  /\  c  e.  (CauFil `  D )
)  ->  ( ( MetOpen
`  D )  fLim  c )  =/=  (/) )
3511, 32, 34syl2anc 693 . . . . 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 2622 . . . . . . . . . . 11  |-  (unifTop `  (metUnif `  D ) )  =  (unifTop `  (metUnif `  D
) )
377, 36tustopn 22075 . . . . . . . . . 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 593 . . . . . . . . . 10  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  ( X  =/=  (/)  /\  D  e.  ( *Met `  X ) ) )
40 xmetutop 22373 . . . . . . . . . 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 2658 . . . . . . . 8  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  ( TopOpen
`  (toUnifSp `  (metUnif `  D
) ) )  =  ( MetOpen `  D )
)
4342oveq1d 6665 . . . . . . 7  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (
( TopOpen `  (toUnifSp `  (metUnif `  D ) ) ) 
fLim  c )  =  ( ( MetOpen `  D
)  fLim  c )
)
4443neeq1d 2853 . . . . . 6  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (
( ( TopOpen `  (toUnifSp `  (metUnif `  D )
) )  fLim  c
)  =/=  (/)  <->  ( ( MetOpen
`  D )  fLim  c )  =/=  (/) ) )
4544biimpar 502 . . . . 5  |-  ( ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  /\  (
( MetOpen `  D )  fLim  c )  =/=  (/) )  -> 
( ( TopOpen `  (toUnifSp `  (metUnif `  D )
) )  fLim  c
)  =/=  (/) )
4610, 35, 45syl2anc 693 . . . 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 450 . . 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 2966 . 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 22103 . 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 698 1  |-  ( ( X  =/=  (/)  /\  D  e.  ( CMet `  X
) )  ->  (toUnifSp `  (metUnif `  D )
)  e. CUnifSp )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 196    /\ wa 384    = wceq 1483    e. wcel 1990    =/= wne 2794   A.wral 2912   E.wrex 2913    C_ wss 3574   (/)c0 3915    X. cxp 5112   "cima 5117   ` cfv 5888  (class class class)co 6650   0cc0 9936   RR+crp 11832   [,)cico 12177   Basecbs 15857   TopOpenctopn 16082  PsMetcpsmet 19730   *Metcxmt 19731   Metcme 19732   fBascfbas 19734   MetOpencmopn 19736  metUnifcmetu 19737   Filcfil 21649    fLim cflim 21738  UnifOncust 22003  unifTopcutop 22034  UnifStcuss 22057  UnifSpcusp 22058  toUnifSpctus 22059  CauFiluccfilu 22090  CUnifSpccusp 22101  CauFilccfil 23050   CMetcms 23052
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1722  ax-4 1737  ax-5 1839  ax-6 1888  ax-7 1935  ax-8 1992  ax-9 1999  ax-10 2019  ax-11 2034  ax-12 2047  ax-13 2246  ax-ext 2602  ax-rep 4771  ax-sep 4781  ax-nul 4789  ax-pow 4843  ax-pr 4906  ax-un 6949  ax-cnex 9992  ax-resscn 9993  ax-1cn 9994  ax-icn 9995  ax-addcl 9996  ax-addrcl 9997  ax-mulcl 9998  ax-mulrcl 9999  ax-mulcom 10000  ax-addass 10001  ax-mulass 10002  ax-distr 10003  ax-i2m1 10004  ax-1ne0 10005  ax-1rid 10006  ax-rnegex 10007  ax-rrecex 10008  ax-cnre 10009  ax-pre-lttri 10010  ax-pre-lttrn 10011  ax-pre-ltadd 10012  ax-pre-mulgt0 10013  ax-pre-sup 10014
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1038  df-3an 1039  df-tru 1486  df-ex 1705  df-nf 1710  df-sb 1881  df-eu 2474  df-mo 2475  df-clab 2609  df-cleq 2615  df-clel 2618  df-nfc 2753  df-ne 2795  df-nel 2898  df-ral 2917  df-rex 2918  df-reu 2919  df-rmo 2920  df-rab 2921  df-v 3202  df-sbc 3436  df-csb 3534  df-dif 3577  df-un 3579  df-in 3581  df-ss 3588  df-pss 3590  df-nul 3916  df-if 4087  df-pw 4160  df-sn 4178  df-pr 4180  df-tp 4182  df-op 4184  df-uni 4437  df-int 4476  df-iun 4522  df-br 4654  df-opab 4713  df-mpt 4730  df-tr 4753  df-id 5024  df-eprel 5029  df-po 5035  df-so 5036  df-fr 5073  df-we 5075  df-xp 5120  df-rel 5121  df-cnv 5122  df-co 5123  df-dm 5124  df-rn 5125  df-res 5126  df-ima 5127  df-pred 5680  df-ord 5726  df-on 5727  df-lim 5728  df-suc 5729  df-iota 5851  df-fun 5890  df-fn 5891  df-f 5892  df-f1 5893  df-fo 5894  df-f1o 5895  df-fv 5896  df-riota 6611  df-ov 6653  df-oprab 6654  df-mpt2 6655  df-om 7066  df-1st 7168  df-2nd 7169  df-wrecs 7407  df-recs 7468  df-rdg 7506  df-1o 7560  df-oadd 7564  df-er 7742  df-map 7859  df-en 7956  df-dom 7957  df-sdom 7958  df-fin 7959  df-sup 8348  df-inf 8349  df-pnf 10076  df-mnf 10077  df-xr 10078  df-ltxr 10079  df-le 10080  df-sub 10268  df-neg 10269  df-div 10685  df-nn 11021  df-2 11079  df-3 11080  df-4 11081  df-5 11082  df-6 11083  df-7 11084  df-8 11085  df-9 11086  df-n0 11293  df-z 11378  df-dec 11494  df-uz 11688  df-q 11789  df-rp 11833  df-xneg 11946  df-xadd 11947  df-xmul 11948  df-ico 12181  df-fz 12327  df-struct 15859  df-ndx 15860  df-slot 15861  df-base 15863  df-sets 15864  df-tset 15960  df-unif 15965  df-rest 16083  df-topn 16084  df-topgen 16104  df-psmet 19738  df-xmet 19739  df-met 19740  df-bl 19741  df-mopn 19742  df-fbas 19743  df-fg 19744  df-metu 19745  df-fil 21650  df-ust 22004  df-utop 22035  df-uss 22060  df-usp 22061  df-tus 22062  df-cfilu 22091  df-cusp 22102  df-cfil 23053  df-cmet 23055
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator