Metamath Proof Explorer


Theorem cmetss

Description: A subspace of a complete metric space is complete iff it is closed in the parent space. Theorem 1.4-7 of Kreyszig p. 30. (Contributed by NM, 28-Jan-2008) (Revised by Mario Carneiro, 15-Oct-2015) (Proof shortened by AV, 9-Oct-2022)

Ref Expression
Hypothesis metsscmetcld.j ⊢ J = MetOpen ⁡ D
Assertion cmetss ⊢ D ∈ CMet ⁡ X → D ↾ Y × Y ∈ CMet ⁡ Y ↔ Y ∈ Clsd ⁡ J

Proof

Step Hyp Ref Expression
1 metsscmetcld.j ⊢ J = MetOpen ⁡ D
2 cmetmet ⊢ D ∈ CMet ⁡ X → D ∈ Met ⁡ X
3 1 metsscmetcld ⊢ D ∈ Met ⁡ X ∧ D ↾ Y × Y ∈ CMet ⁡ Y → Y ∈ Clsd ⁡ J
4 2 3 sylan ⊢ D ∈ CMet ⁡ X ∧ D ↾ Y × Y ∈ CMet ⁡ Y → Y ∈ Clsd ⁡ J
5 2 adantr ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J → D ∈ Met ⁡ X
6 eqid ⊢ ⋃ J = ⋃ J
7 6 cldss ⊢ Y ∈ Clsd ⁡ J → Y ⊆ ⋃ J
8 7 adantl ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J → Y ⊆ ⋃ J
9 metxmet ⊢ D ∈ Met ⁡ X → D ∈ ∞Met ⁡ X
10 1 mopnuni ⊢ D ∈ ∞Met ⁡ X → X = ⋃ J
11 5 9 10 3syl ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J → X = ⋃ J
12 8 11 sseqtrrd ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J → Y ⊆ X
13 metres2 ⊢ D ∈ Met ⁡ X ∧ Y ⊆ X → D ↾ Y × Y ∈ Met ⁡ Y
14 5 12 13 syl2anc ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J → D ↾ Y × Y ∈ Met ⁡ Y
15 2 9 syl ⊢ D ∈ CMet ⁡ X → D ∈ ∞Met ⁡ X
16 15 ad2antrr ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → D ∈ ∞Met ⁡ X
17 12 adantr ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → Y ⊆ X
18 eqid ⊢ D ↾ Y × Y = D ↾ Y × Y
19 eqid ⊢ MetOpen ⁡ D ↾ Y × Y = MetOpen ⁡ D ↾ Y × Y
20 18 1 19 metrest ⊢ D ∈ ∞Met ⁡ X ∧ Y ⊆ X → J ↾ 𝑡 Y = MetOpen ⁡ D ↾ Y × Y
21 16 17 20 syl2anc ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → J ↾ 𝑡 Y = MetOpen ⁡ D ↾ Y × Y
22 21 eqcomd ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → MetOpen ⁡ D ↾ Y × Y = J ↾ 𝑡 Y
23 metxmet ⊢ D ↾ Y × Y ∈ Met ⁡ Y → D ↾ Y × Y ∈ ∞Met ⁡ Y
24 14 23 syl ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J → D ↾ Y × Y ∈ ∞Met ⁡ Y
25 cfilfil ⊢ D ↾ Y × Y ∈ ∞Met ⁡ Y ∧ f ∈ CauFil ⁡ D ↾ Y × Y → f ∈ Fil ⁡ Y
26 24 25 sylan ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → f ∈ Fil ⁡ Y
27 elfvdm ⊢ D ∈ CMet ⁡ X → X ∈ dom ⁡ CMet
28 27 ad2antrr ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → X ∈ dom ⁡ CMet
29 trfg ⊢ f ∈ Fil ⁡ Y ∧ Y ⊆ X ∧ X ∈ dom ⁡ CMet → X filGen f ↾ 𝑡 Y = f
30 26 17 28 29 syl3anc ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → X filGen f ↾ 𝑡 Y = f
31 30 eqcomd ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → f = X filGen f ↾ 𝑡 Y
32 22 31 oveq12d ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → MetOpen ⁡ D ↾ Y × Y fLim f = J ↾ 𝑡 Y fLim X filGen f ↾ 𝑡 Y
33 1 mopntopon ⊢ D ∈ ∞Met ⁡ X → J ∈ TopOn ⁡ X
34 16 33 syl ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → J ∈ TopOn ⁡ X
35 filfbas ⊢ f ∈ Fil ⁡ Y → f ∈ fBas ⁡ Y
36 26 35 syl ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → f ∈ fBas ⁡ Y
37 filsspw ⊢ f ∈ Fil ⁡ Y → f ⊆ 𝒫 Y
38 26 37 syl ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → f ⊆ 𝒫 Y
39 17 sspwd ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → 𝒫 Y ⊆ 𝒫 X
40 38 39 sstrd ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → f ⊆ 𝒫 X
41 fbasweak ⊢ f ∈ fBas ⁡ Y ∧ f ⊆ 𝒫 X ∧ X ∈ dom ⁡ CMet → f ∈ fBas ⁡ X
42 36 40 28 41 syl3anc ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → f ∈ fBas ⁡ X
43 fgcl ⊢ f ∈ fBas ⁡ X → X filGen f ∈ Fil ⁡ X
44 42 43 syl ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → X filGen f ∈ Fil ⁡ X
45 ssfg ⊢ f ∈ fBas ⁡ X → f ⊆ X filGen f
46 42 45 syl ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → f ⊆ X filGen f
47 filtop ⊢ f ∈ Fil ⁡ Y → Y ∈ f
48 26 47 syl ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → Y ∈ f
49 46 48 sseldd ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → Y ∈ X filGen f
50 flimrest ⊢ J ∈ TopOn ⁡ X ∧ X filGen f ∈ Fil ⁡ X ∧ Y ∈ X filGen f → J ↾ 𝑡 Y fLim X filGen f ↾ 𝑡 Y = J fLim X filGen f ∩ Y
51 34 44 49 50 syl3anc ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → J ↾ 𝑡 Y fLim X filGen f ↾ 𝑡 Y = J fLim X filGen f ∩ Y
52 flimclsi ⊢ Y ∈ X filGen f → J fLim X filGen f ⊆ cls ⁡ J ⁡ Y
53 49 52 syl ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → J fLim X filGen f ⊆ cls ⁡ J ⁡ Y
54 cldcls ⊢ Y ∈ Clsd ⁡ J → cls ⁡ J ⁡ Y = Y
55 54 ad2antlr ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → cls ⁡ J ⁡ Y = Y
56 53 55 sseqtrd ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → J fLim X filGen f ⊆ Y
57 dfss2 ⊢ J fLim X filGen f ⊆ Y ↔ J fLim X filGen f ∩ Y = J fLim X filGen f
58 56 57 sylib ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → J fLim X filGen f ∩ Y = J fLim X filGen f
59 32 51 58 3eqtrd ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → MetOpen ⁡ D ↾ Y × Y fLim f = J fLim X filGen f
60 simpll ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → D ∈ CMet ⁡ X
61 5 9 syl ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J → D ∈ ∞Met ⁡ X
62 cfilresi ⊢ D ∈ ∞Met ⁡ X ∧ f ∈ CauFil ⁡ D ↾ Y × Y → X filGen f ∈ CauFil ⁡ D
63 61 62 sylan ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → X filGen f ∈ CauFil ⁡ D
64 1 cmetcvg ⊢ D ∈ CMet ⁡ X ∧ X filGen f ∈ CauFil ⁡ D → J fLim X filGen f ≠ ∅
65 60 63 64 syl2anc ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → J fLim X filGen f ≠ ∅
66 59 65 eqnetrd ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J ∧ f ∈ CauFil ⁡ D ↾ Y × Y → MetOpen ⁡ D ↾ Y × Y fLim f ≠ ∅
67 66 ralrimiva ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J → ∀ f ∈ CauFil ⁡ D ↾ Y × Y MetOpen ⁡ D ↾ Y × Y fLim f ≠ ∅
68 19 iscmet ⊢ D ↾ Y × Y ∈ CMet ⁡ Y ↔ D ↾ Y × Y ∈ Met ⁡ Y ∧ ∀ f ∈ CauFil ⁡ D ↾ Y × Y MetOpen ⁡ D ↾ Y × Y fLim f ≠ ∅
69 14 67 68 sylanbrc ⊢ D ∈ CMet ⁡ X ∧ Y ∈ Clsd ⁡ J → D ↾ Y × Y ∈ CMet ⁡ Y
70 4 69 impbida ⊢ D ∈ CMet ⁡ X → D ↾ Y × Y ∈ CMet ⁡ Y ↔ Y ∈ Clsd ⁡ J