Metamath Proof Explorer


Theorem iscmet

Description: The property " D is a complete metric." meaning all Cauchy filters converge to a point in the space. (Contributed by Mario Carneiro, 1-May-2014) (Revised by Mario Carneiro, 13-Oct-2015)

Ref Expression
Hypothesis iscmet.1 𝐽 = ( MetOpen ‘ 𝐷 )
Assertion iscmet ( 𝐷 ∈ ( CMet ‘ 𝑋 ) ↔ ( 𝐷 ∈ ( Met ‘ 𝑋 ) ∧ ∀ 𝑓 ∈ ( CauFil ‘ 𝐷 ) ( 𝐽 fLim 𝑓 ) ≠ ∅ ) )

Proof

Step Hyp Ref Expression
1 iscmet.1 𝐽 = ( MetOpen ‘ 𝐷 )
2 elfvex ( 𝐷 ∈ ( CMet ‘ 𝑋 ) → 𝑋 ∈ V )
3 elfvex ( 𝐷 ∈ ( Met ‘ 𝑋 ) → 𝑋 ∈ V )
4 3 adantr ( ( 𝐷 ∈ ( Met ‘ 𝑋 ) ∧ ∀ 𝑓 ∈ ( CauFil ‘ 𝐷 ) ( 𝐽 fLim 𝑓 ) ≠ ∅ ) → 𝑋 ∈ V )
5 fveq2 ( 𝑥 = 𝑋 → ( Met ‘ 𝑥 ) = ( Met ‘ 𝑋 ) )
6 5 rabeqdv ( 𝑥 = 𝑋 → { 𝑑 ∈ ( Met ‘ 𝑥 ) ∣ ∀ 𝑓 ∈ ( CauFil ‘ 𝑑 ) ( ( MetOpen ‘ 𝑑 ) fLim 𝑓 ) ≠ ∅ } = { 𝑑 ∈ ( Met ‘ 𝑋 ) ∣ ∀ 𝑓 ∈ ( CauFil ‘ 𝑑 ) ( ( MetOpen ‘ 𝑑 ) fLim 𝑓 ) ≠ ∅ } )
7 df-cmet CMet = ( 𝑥 ∈ V ↦ { 𝑑 ∈ ( Met ‘ 𝑥 ) ∣ ∀ 𝑓 ∈ ( CauFil ‘ 𝑑 ) ( ( MetOpen ‘ 𝑑 ) fLim 𝑓 ) ≠ ∅ } )
8 fvex ( Met ‘ 𝑋 ) ∈ V
9 8 rabex { 𝑑 ∈ ( Met ‘ 𝑋 ) ∣ ∀ 𝑓 ∈ ( CauFil ‘ 𝑑 ) ( ( MetOpen ‘ 𝑑 ) fLim 𝑓 ) ≠ ∅ } ∈ V
10 6 7 9 fvmpt ( 𝑋 ∈ V → ( CMet ‘ 𝑋 ) = { 𝑑 ∈ ( Met ‘ 𝑋 ) ∣ ∀ 𝑓 ∈ ( CauFil ‘ 𝑑 ) ( ( MetOpen ‘ 𝑑 ) fLim 𝑓 ) ≠ ∅ } )
11 10 eleq2d ( 𝑋 ∈ V → ( 𝐷 ∈ ( CMet ‘ 𝑋 ) ↔ 𝐷 ∈ { 𝑑 ∈ ( Met ‘ 𝑋 ) ∣ ∀ 𝑓 ∈ ( CauFil ‘ 𝑑 ) ( ( MetOpen ‘ 𝑑 ) fLim 𝑓 ) ≠ ∅ } ) )
12 fveq2 ( 𝑑 = 𝐷 → ( CauFil ‘ 𝑑 ) = ( CauFil ‘ 𝐷 ) )
13 fveq2 ( 𝑑 = 𝐷 → ( MetOpen ‘ 𝑑 ) = ( MetOpen ‘ 𝐷 ) )
14 13 1 eqtr4di ( 𝑑 = 𝐷 → ( MetOpen ‘ 𝑑 ) = 𝐽 )
15 14 oveq1d ( 𝑑 = 𝐷 → ( ( MetOpen ‘ 𝑑 ) fLim 𝑓 ) = ( 𝐽 fLim 𝑓 ) )
16 15 neeq1d ( 𝑑 = 𝐷 → ( ( ( MetOpen ‘ 𝑑 ) fLim 𝑓 ) ≠ ∅ ↔ ( 𝐽 fLim 𝑓 ) ≠ ∅ ) )
17 12 16 raleqbidv ( 𝑑 = 𝐷 → ( ∀ 𝑓 ∈ ( CauFil ‘ 𝑑 ) ( ( MetOpen ‘ 𝑑 ) fLim 𝑓 ) ≠ ∅ ↔ ∀ 𝑓 ∈ ( CauFil ‘ 𝐷 ) ( 𝐽 fLim 𝑓 ) ≠ ∅ ) )
18 17 elrab ( 𝐷 ∈ { 𝑑 ∈ ( Met ‘ 𝑋 ) ∣ ∀ 𝑓 ∈ ( CauFil ‘ 𝑑 ) ( ( MetOpen ‘ 𝑑 ) fLim 𝑓 ) ≠ ∅ } ↔ ( 𝐷 ∈ ( Met ‘ 𝑋 ) ∧ ∀ 𝑓 ∈ ( CauFil ‘ 𝐷 ) ( 𝐽 fLim 𝑓 ) ≠ ∅ ) )
19 11 18 bitrdi ( 𝑋 ∈ V → ( 𝐷 ∈ ( CMet ‘ 𝑋 ) ↔ ( 𝐷 ∈ ( Met ‘ 𝑋 ) ∧ ∀ 𝑓 ∈ ( CauFil ‘ 𝐷 ) ( 𝐽 fLim 𝑓 ) ≠ ∅ ) ) )
20 2 4 19 pm5.21nii ( 𝐷 ∈ ( CMet ‘ 𝑋 ) ↔ ( 𝐷 ∈ ( Met ‘ 𝑋 ) ∧ ∀ 𝑓 ∈ ( CauFil ‘ 𝐷 ) ( 𝐽 fLim 𝑓 ) ≠ ∅ ) )