Metamath Proof Explorer


Theorem heibor

Description: Generalized Heine-Borel Theorem. A metric space is compact iff it is complete and totally bounded. See heibor1 and heiborlem1 for a description of the proof. (Contributed by Jeff Madsen, 2-Sep-2009) (Revised by Mario Carneiro, 28-Jan-2014)

Ref Expression
Hypothesis heibor.1 J=MetOpenD
Assertion heibor DMetXJCompDCMetXDTotBndX

Proof

Step Hyp Ref Expression
1 heibor.1 J=MetOpenD
2 1 heibor1 DMetXJCompDCMetXDTotBndX
3 cmetmet DCMetXDMetX
4 3 adantr DCMetXDTotBndXDMetX
5 metxmet DMetXD∞MetX
6 1 mopntop D∞MetXJTop
7 3 5 6 3syl DCMetXJTop
8 7 adantr DCMetXDTotBndXJTop
9 istotbnd DTotBndXDMetXr+uFinu=XvuyXv=yballDr
10 9 simprbi DTotBndXr+uFinu=XvuyXv=yballDr
11 2nn 2
12 nnexpcl 2n02n
13 11 12 mpan n02n
14 13 nnrpd n02n+
15 14 rpreccld n012n+
16 oveq2 r=12nyballDr=yballD12n
17 16 eqeq2d r=12nv=yballDrv=yballD12n
18 17 rexbidv r=12nyXv=yballDryXv=yballD12n
19 18 ralbidv r=12nvuyXv=yballDrvuyXv=yballD12n
20 19 anbi2d r=12nu=XvuyXv=yballDru=XvuyXv=yballD12n
21 20 rexbidv r=12nuFinu=XvuyXv=yballDruFinu=XvuyXv=yballD12n
22 21 rspccva r+uFinu=XvuyXv=yballDr12n+uFinu=XvuyXv=yballD12n
23 10 15 22 syl2an DTotBndXn0uFinu=XvuyXv=yballD12n
24 23 expcom n0DTotBndXuFinu=XvuyXv=yballD12n
25 24 adantl DCMetXn0DTotBndXuFinu=XvuyXv=yballD12n
26 oveq1 y=mvyballD12n=mvballD12n
27 26 eqeq2d y=mvv=yballD12nv=mvballD12n
28 27 ac6sfi uFinvuyXv=yballD12nmm:uXvuv=mvballD12n
29 28 adantrl uFinu=XvuyXv=yballD12nmm:uXvuv=mvballD12n
30 29 adantl DCMetXn0uFinu=XvuyXv=yballD12nmm:uXvuv=mvballD12n
31 simp3l DCMetXn0uFinu=Xm:uXvuv=mvballD12nm:uX
32 31 frnd DCMetXn0uFinu=Xm:uXvuv=mvballD12nranmX
33 1 mopnuni D∞MetXX=J
34 3 5 33 3syl DCMetXX=J
35 34 adantr DCMetXn0X=J
36 35 3ad2ant1 DCMetXn0uFinu=Xm:uXvuv=mvballD12nX=J
37 32 36 sseqtrd DCMetXn0uFinu=Xm:uXvuv=mvballD12nranmJ
38 1 fvexi JV
39 38 uniex JV
40 39 elpw2 ranm𝒫JranmJ
41 37 40 sylibr DCMetXn0uFinu=Xm:uXvuv=mvballD12nranm𝒫J
42 simp2l DCMetXn0uFinu=Xm:uXvuv=mvballD12nuFin
43 ffn m:uXmFnu
44 dffn4 mFnum:uontoranm
45 43 44 sylib m:uXm:uontoranm
46 fofi uFinm:uontoranmranmFin
47 45 46 sylan2 uFinm:uXranmFin
48 42 31 47 syl2anc DCMetXn0uFinu=Xm:uXvuv=mvballD12nranmFin
49 41 48 elind DCMetXn0uFinu=Xm:uXvuv=mvballD12nranm𝒫JFin
50 26 eleq2d y=mvryballD12nrmvballD12n
51 50 rexrn mFnuyranmryballD12nvurmvballD12n
52 eliun ryranmyballD12nyranmryballD12n
53 eliun rvumvballD12nvurmvballD12n
54 51 52 53 3bitr4g mFnuryranmyballD12nrvumvballD12n
55 54 eqrdv mFnuyranmyballD12n=vumvballD12n
56 31 43 55 3syl DCMetXn0uFinu=Xm:uXvuv=mvballD12nyranmyballD12n=vumvballD12n
57 simp3r DCMetXn0uFinu=Xm:uXvuv=mvballD12nvuv=mvballD12n
58 uniiun u=vuv
59 iuneq2 vuv=mvballD12nvuv=vumvballD12n
60 58 59 eqtrid vuv=mvballD12nu=vumvballD12n
61 57 60 syl DCMetXn0uFinu=Xm:uXvuv=mvballD12nu=vumvballD12n
62 simp2r DCMetXn0uFinu=Xm:uXvuv=mvballD12nu=X
63 56 61 62 3eqtr2rd DCMetXn0uFinu=Xm:uXvuv=mvballD12nX=yranmyballD12n
64 iuneq1 t=ranmytyballD12n=yranmyballD12n
65 64 rspceeqv ranm𝒫JFinX=yranmyballD12nt𝒫JFinX=ytyballD12n
66 49 63 65 syl2anc DCMetXn0uFinu=Xm:uXvuv=mvballD12nt𝒫JFinX=ytyballD12n
67 66 3expia DCMetXn0uFinu=Xm:uXvuv=mvballD12nt𝒫JFinX=ytyballD12n
68 67 adantrrr DCMetXn0uFinu=XvuyXv=yballD12nm:uXvuv=mvballD12nt𝒫JFinX=ytyballD12n
69 68 exlimdv DCMetXn0uFinu=XvuyXv=yballD12nmm:uXvuv=mvballD12nt𝒫JFinX=ytyballD12n
70 30 69 mpd DCMetXn0uFinu=XvuyXv=yballD12nt𝒫JFinX=ytyballD12n
71 70 rexlimdvaa DCMetXn0uFinu=XvuyXv=yballD12nt𝒫JFinX=ytyballD12n
72 25 71 syld DCMetXn0DTotBndXt𝒫JFinX=ytyballD12n
73 72 ralrimdva DCMetXDTotBndXn0t𝒫JFinX=ytyballD12n
74 39 pwex 𝒫JV
75 74 inex1 𝒫JFinV
76 nn0ennn 0
77 nnenom ω
78 76 77 entri 0ω
79 iuneq1 t=mnytyballD12n=ymnyballD12n
80 79 eqeq2d t=mnX=ytyballD12nX=ymnyballD12n
81 75 78 80 axcc4 n0t𝒫JFinX=ytyballD12nmm:0𝒫JFinn0X=ymnyballD12n
82 73 81 syl6 DCMetXDTotBndXmm:0𝒫JFinn0X=ymnyballD12n
83 elpwi r𝒫JrJ
84 eqid u|¬v𝒫rFinuv=u|¬v𝒫rFinuv
85 eqid tk|k0tmktzX,m0zballD12mku|¬v𝒫rFinuv=tk|k0tmktzX,m0zballD12mku|¬v𝒫rFinuv
86 eqid zX,m0zballD12m=zX,m0zballD12m
87 simpl DCMetXm:0𝒫JFinn0X=ymnyballD12nDCMetX
88 34 pweqd DCMetX𝒫X=𝒫J
89 88 ineq1d DCMetX𝒫XFin=𝒫JFin
90 89 feq3d DCMetXm:0𝒫XFinm:0𝒫JFin
91 90 biimpar DCMetXm:0𝒫JFinm:0𝒫XFin
92 91 adantrr DCMetXm:0𝒫JFinn0X=ymnyballD12nm:0𝒫XFin
93 oveq1 t=ytzX,m0zballD12mn=yzX,m0zballD12mn
94 93 cbviunv tmntzX,m0zballD12mn=ymnyzX,m0zballD12mn
95 id m:0𝒫JFinm:0𝒫JFin
96 inss1 𝒫JFin𝒫J
97 96 88 sseqtrrid DCMetX𝒫JFin𝒫X
98 fss m:0𝒫JFin𝒫JFin𝒫Xm:0𝒫X
99 95 97 98 syl2anr DCMetXm:0𝒫JFinm:0𝒫X
100 99 ffvelcdmda DCMetXm:0𝒫JFinn0mn𝒫X
101 100 elpwid DCMetXm:0𝒫JFinn0mnX
102 101 sselda DCMetXm:0𝒫JFinn0ymnyX
103 simplr DCMetXm:0𝒫JFinn0ymnn0
104 oveq1 z=yzballD12m=yballD12m
105 oveq2 m=n2m=2n
106 105 oveq2d m=n12m=12n
107 106 oveq2d m=nyballD12m=yballD12n
108 ovex yballD12nV
109 104 107 86 108 ovmpo yXn0yzX,m0zballD12mn=yballD12n
110 102 103 109 syl2anc DCMetXm:0𝒫JFinn0ymnyzX,m0zballD12mn=yballD12n
111 110 iuneq2dv DCMetXm:0𝒫JFinn0ymnyzX,m0zballD12mn=ymnyballD12n
112 94 111 eqtrid DCMetXm:0𝒫JFinn0tmntzX,m0zballD12mn=ymnyballD12n
113 112 eqeq2d DCMetXm:0𝒫JFinn0X=tmntzX,m0zballD12mnX=ymnyballD12n
114 113 biimprd DCMetXm:0𝒫JFinn0X=ymnyballD12nX=tmntzX,m0zballD12mn
115 114 ralimdva DCMetXm:0𝒫JFinn0X=ymnyballD12nn0X=tmntzX,m0zballD12mn
116 115 impr DCMetXm:0𝒫JFinn0X=ymnyballD12nn0X=tmntzX,m0zballD12mn
117 fveq2 n=kmn=mk
118 117 iuneq1d n=ktmntzX,m0zballD12mn=tmktzX,m0zballD12mn
119 simpl n=ktmkn=k
120 119 oveq2d n=ktmktzX,m0zballD12mn=tzX,m0zballD12mk
121 120 iuneq2dv n=ktmktzX,m0zballD12mn=tmktzX,m0zballD12mk
122 118 121 eqtrd n=ktmntzX,m0zballD12mn=tmktzX,m0zballD12mk
123 122 eqeq2d n=kX=tmntzX,m0zballD12mnX=tmktzX,m0zballD12mk
124 123 cbvralvw n0X=tmntzX,m0zballD12mnk0X=tmktzX,m0zballD12mk
125 116 124 sylib DCMetXm:0𝒫JFinn0X=ymnyballD12nk0X=tmktzX,m0zballD12mk
126 1 84 85 86 87 92 125 heiborlem10 DCMetXm:0𝒫JFinn0X=ymnyballD12nrJJ=rv𝒫rFinJ=v
127 126 exp32 DCMetXm:0𝒫JFinn0X=ymnyballD12nrJJ=rv𝒫rFinJ=v
128 83 127 syl5 DCMetXm:0𝒫JFinn0X=ymnyballD12nr𝒫JJ=rv𝒫rFinJ=v
129 128 ralrimiv DCMetXm:0𝒫JFinn0X=ymnyballD12nr𝒫JJ=rv𝒫rFinJ=v
130 129 ex DCMetXm:0𝒫JFinn0X=ymnyballD12nr𝒫JJ=rv𝒫rFinJ=v
131 130 exlimdv DCMetXmm:0𝒫JFinn0X=ymnyballD12nr𝒫JJ=rv𝒫rFinJ=v
132 82 131 syld DCMetXDTotBndXr𝒫JJ=rv𝒫rFinJ=v
133 132 imp DCMetXDTotBndXr𝒫JJ=rv𝒫rFinJ=v
134 eqid J=J
135 134 iscmp JCompJTopr𝒫JJ=rv𝒫rFinJ=v
136 8 133 135 sylanbrc DCMetXDTotBndXJComp
137 4 136 jca DCMetXDTotBndXDMetXJComp
138 2 137 impbii DMetXJCompDCMetXDTotBndX