Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  pstmxmet Structured version   Visualization version   GIF version

Theorem pstmxmet 34407
Description: The metric induced by a pseudometric is a full-fledged metric on the equivalence classes of the metric identification. (Contributed by Thierry Arnoux, 11-Feb-2018.)
Hypothesis
Ref Expression
pstmval.1 = (~Met𝐷)
Assertion
Ref Expression
pstmxmet (𝐷 ∈ (PsMet‘𝑋) → (pstoMet‘𝐷) ∈ (∞Met‘(𝑋 / )))

Proof of Theorem pstmxmet
Dummy variables 𝑎 𝑏 𝑐 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 eqid 2760 . . . . 5 (𝑥 ∈ (𝑋 / ), 𝑦 ∈ (𝑋 / ) ↦ {𝑧 ∣ ∃𝑎𝑥𝑏𝑦 𝑧 = (𝑎𝐷𝑏)}) = (𝑥 ∈ (𝑋 / ), 𝑦 ∈ (𝑋 / ) ↦ {𝑧 ∣ ∃𝑎𝑥𝑏𝑦 𝑧 = (𝑎𝐷𝑏)})
2 vex 3454 . . . . . . 7 𝑥 ∈ V
3 vex 3454 . . . . . . 7 𝑦 ∈ V
42, 3ab2rexex 7976 . . . . . 6 {𝑧 ∣ ∃𝑎𝑥𝑏𝑦 𝑧 = (𝑎𝐷𝑏)} ∈ V
54uniex 7743 . . . . 5 {𝑧 ∣ ∃𝑎𝑥𝑏𝑦 𝑧 = (𝑎𝐷𝑏)} ∈ V
61, 5fnmpoi 8067 . . . 4 (𝑥 ∈ (𝑋 / ), 𝑦 ∈ (𝑋 / ) ↦ {𝑧 ∣ ∃𝑎𝑥𝑏𝑦 𝑧 = (𝑎𝐷𝑏)}) Fn ((𝑋 / ) × (𝑋 / ))
7 pstmval.1 . . . . . 6 = (~Met𝐷)
87pstmval 34405 . . . . 5 (𝐷 ∈ (PsMet‘𝑋) → (pstoMet‘𝐷) = (𝑥 ∈ (𝑋 / ), 𝑦 ∈ (𝑋 / ) ↦ {𝑧 ∣ ∃𝑎𝑥𝑏𝑦 𝑧 = (𝑎𝐷𝑏)}))
98fneq1d 6625 . . . 4 (𝐷 ∈ (PsMet‘𝑋) → ((pstoMet‘𝐷) Fn ((𝑋 / ) × (𝑋 / )) ↔ (𝑥 ∈ (𝑋 / ), 𝑦 ∈ (𝑋 / ) ↦ {𝑧 ∣ ∃𝑎𝑥𝑏𝑦 𝑧 = (𝑎𝐷𝑏)}) Fn ((𝑋 / ) × (𝑋 / ))))
106, 9mpbiri 261 . . 3 (𝐷 ∈ (PsMet‘𝑋) → (pstoMet‘𝐷) Fn ((𝑋 / ) × (𝑋 / )))
11 simpllr 788 . . . . . . . . 9 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → 𝑥 = [𝑎] )
12 simpr 490 . . . . . . . . 9 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → 𝑦 = [𝑏] )
1311, 12oveq12d 7431 . . . . . . . 8 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → (𝑥(pstoMet‘𝐷)𝑦) = ([𝑎] (pstoMet‘𝐷)[𝑏] ))
14 simp-5l 797 . . . . . . . . 9 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → 𝐷 ∈ (PsMet‘𝑋))
15 simp-4r 796 . . . . . . . . 9 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → 𝑎𝑋)
16 simplr 781 . . . . . . . . 9 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → 𝑏𝑋)
177pstmfval 34406 . . . . . . . . 9 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋𝑏𝑋) → ([𝑎] (pstoMet‘𝐷)[𝑏] ) = (𝑎𝐷𝑏))
1814, 15, 16, 17syl3anc 1398 . . . . . . . 8 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → ([𝑎] (pstoMet‘𝐷)[𝑏] ) = (𝑎𝐷𝑏))
1913, 18eqtrd 2795 . . . . . . 7 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → (𝑥(pstoMet‘𝐷)𝑦) = (𝑎𝐷𝑏))
20 psmetf 24532 . . . . . . . . 9 (𝐷 ∈ (PsMet‘𝑋) → 𝐷:(𝑋 × 𝑋)⟶ℝ*)
2114, 20syl 18 . . . . . . . 8 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → 𝐷:(𝑋 × 𝑋)⟶ℝ*)
2221, 15, 16fovcdmd 7586 . . . . . . 7 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → (𝑎𝐷𝑏) ∈ ℝ*)
2319, 22eqeltrd 2860 . . . . . 6 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → (𝑥(pstoMet‘𝐷)𝑦) ∈ ℝ*)
24 elqsi 8765 . . . . . . . 8 (𝑦 ∈ (𝑋 / ) → ∃𝑏𝑋 𝑦 = [𝑏] )
2524ad2antll 742 . . . . . . 7 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) → ∃𝑏𝑋 𝑦 = [𝑏] )
2625ad2antrr 739 . . . . . 6 ((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) → ∃𝑏𝑋 𝑦 = [𝑏] )
2723, 26r19.29a 3170 . . . . 5 ((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) → (𝑥(pstoMet‘𝐷)𝑦) ∈ ℝ*)
28 elqsi 8765 . . . . . 6 (𝑥 ∈ (𝑋 / ) → ∃𝑎𝑋 𝑥 = [𝑎] )
2928ad2antrl 741 . . . . 5 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) → ∃𝑎𝑋 𝑥 = [𝑎] )
3027, 29r19.29a 3170 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) → (𝑥(pstoMet‘𝐷)𝑦) ∈ ℝ*)
3130ralrimivva 3205 . . 3 (𝐷 ∈ (PsMet‘𝑋) → ∀𝑥 ∈ (𝑋 / )∀𝑦 ∈ (𝑋 / )(𝑥(pstoMet‘𝐷)𝑦) ∈ ℝ*)
32 ffnov 7539 . . 3 ((pstoMet‘𝐷):((𝑋 / ) × (𝑋 / ))⟶ℝ* ↔ ((pstoMet‘𝐷) Fn ((𝑋 / ) × (𝑋 / )) ∧ ∀𝑥 ∈ (𝑋 / )∀𝑦 ∈ (𝑋 / )(𝑥(pstoMet‘𝐷)𝑦) ∈ ℝ*))
3310, 31, 32sylanbrc 595 . 2 (𝐷 ∈ (PsMet‘𝑋) → (pstoMet‘𝐷):((𝑋 / ) × (𝑋 / ))⟶ℝ*)
34173expa 1136 . . . . . . . . . . . 12 (((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑏𝑋) → ([𝑎] (pstoMet‘𝐷)[𝑏] ) = (𝑎𝐷𝑏))
3534eqeq1d 2762 . . . . . . . . . . 11 (((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑏𝑋) → (([𝑎] (pstoMet‘𝐷)[𝑏] ) = 0 ↔ (𝑎𝐷𝑏) = 0))
367breqi 5109 . . . . . . . . . . . 12 (𝑎 𝑏𝑎(~Met𝐷)𝑏)
37 metidv 34402 . . . . . . . . . . . . 13 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑎𝑋𝑏𝑋)) → (𝑎(~Met𝐷)𝑏 ↔ (𝑎𝐷𝑏) = 0))
3837anassrs 473 . . . . . . . . . . . 12 (((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑏𝑋) → (𝑎(~Met𝐷)𝑏 ↔ (𝑎𝐷𝑏) = 0))
3936, 38bitrid 286 . . . . . . . . . . 11 (((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑏𝑋) → (𝑎 𝑏 ↔ (𝑎𝐷𝑏) = 0))
40 metider 34404 . . . . . . . . . . . . . 14 (𝐷 ∈ (PsMet‘𝑋) → (~Met𝐷) Er 𝑋)
4140ad2antrr 739 . . . . . . . . . . . . 13 (((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑏𝑋) → (~Met𝐷) Er 𝑋)
42 ereq1 8704 . . . . . . . . . . . . . 14 ( = (~Met𝐷) → ( Er 𝑋 ↔ (~Met𝐷) Er 𝑋))
437, 42ax-mp 5 . . . . . . . . . . . . 13 ( Er 𝑋 ↔ (~Met𝐷) Er 𝑋)
4441, 43sylibr 237 . . . . . . . . . . . 12 (((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑏𝑋) → Er 𝑋)
45 simplr 781 . . . . . . . . . . . 12 (((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑏𝑋) → 𝑎𝑋)
4644, 45erth 8751 . . . . . . . . . . 11 (((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑏𝑋) → (𝑎 𝑏 ↔ [𝑎] = [𝑏] ))
4735, 39, 463bitr2d 310 . . . . . . . . . 10 (((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑏𝑋) → (([𝑎] (pstoMet‘𝐷)[𝑏] ) = 0 ↔ [𝑎] = [𝑏] ))
4847adantllr 732 . . . . . . . . 9 ((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑏𝑋) → (([𝑎] (pstoMet‘𝐷)[𝑏] ) = 0 ↔ [𝑎] = [𝑏] ))
4948adantlr 728 . . . . . . . 8 (((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) → (([𝑎] (pstoMet‘𝐷)[𝑏] ) = 0 ↔ [𝑎] = [𝑏] ))
5049adantr 486 . . . . . . 7 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → (([𝑎] (pstoMet‘𝐷)[𝑏] ) = 0 ↔ [𝑎] = [𝑏] ))
5113eqeq1d 2762 . . . . . . 7 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → ((𝑥(pstoMet‘𝐷)𝑦) = 0 ↔ ([𝑎] (pstoMet‘𝐷)[𝑏] ) = 0))
5211, 12eqeq12d 2776 . . . . . . 7 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → (𝑥 = 𝑦 ↔ [𝑎] = [𝑏] ))
5350, 51, 523bitr4d 314 . . . . . 6 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → ((𝑥(pstoMet‘𝐷)𝑦) = 0 ↔ 𝑥 = 𝑦))
5453, 26r19.29a 3170 . . . . 5 ((((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) → ((𝑥(pstoMet‘𝐷)𝑦) = 0 ↔ 𝑥 = 𝑦))
5554, 29r19.29a 3170 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) → ((𝑥(pstoMet‘𝐷)𝑦) = 0 ↔ 𝑥 = 𝑦))
56 simp-6l 799 . . . . . . . . . . . . . 14 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → 𝐷 ∈ (PsMet‘𝑋))
57 simplr 781 . . . . . . . . . . . . . 14 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → 𝑐𝑋)
58 simp-6r 800 . . . . . . . . . . . . . 14 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → 𝑎𝑋)
59 simp-4r 796 . . . . . . . . . . . . . 14 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → 𝑏𝑋)
60 psmettri2 24535 . . . . . . . . . . . . . 14 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑐𝑋𝑎𝑋𝑏𝑋)) → (𝑎𝐷𝑏) ≤ ((𝑐𝐷𝑎) +𝑒 (𝑐𝐷𝑏)))
6156, 57, 58, 59, 60syl13anc 1399 . . . . . . . . . . . . 13 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → (𝑎𝐷𝑏) ≤ ((𝑐𝐷𝑎) +𝑒 (𝑐𝐷𝑏)))
62 simp-5r 798 . . . . . . . . . . . . . . 15 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → 𝑥 = [𝑎] )
63 simpllr 788 . . . . . . . . . . . . . . 15 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → 𝑦 = [𝑏] )
6462, 63oveq12d 7431 . . . . . . . . . . . . . 14 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → (𝑥(pstoMet‘𝐷)𝑦) = ([𝑎] (pstoMet‘𝐷)[𝑏] ))
6556, 58, 59, 17syl3anc 1398 . . . . . . . . . . . . . 14 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → ([𝑎] (pstoMet‘𝐷)[𝑏] ) = (𝑎𝐷𝑏))
6664, 65eqtrd 2795 . . . . . . . . . . . . 13 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → (𝑥(pstoMet‘𝐷)𝑦) = (𝑎𝐷𝑏))
67 simpr 490 . . . . . . . . . . . . . . . 16 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → 𝑧 = [𝑐] )
6867, 62oveq12d 7431 . . . . . . . . . . . . . . 15 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → (𝑧(pstoMet‘𝐷)𝑥) = ([𝑐] (pstoMet‘𝐷)[𝑎] ))
697pstmfval 34406 . . . . . . . . . . . . . . . 16 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑐𝑋𝑎𝑋) → ([𝑐] (pstoMet‘𝐷)[𝑎] ) = (𝑐𝐷𝑎))
7056, 57, 58, 69syl3anc 1398 . . . . . . . . . . . . . . 15 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → ([𝑐] (pstoMet‘𝐷)[𝑎] ) = (𝑐𝐷𝑎))
7168, 70eqtrd 2795 . . . . . . . . . . . . . 14 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → (𝑧(pstoMet‘𝐷)𝑥) = (𝑐𝐷𝑎))
7267, 63oveq12d 7431 . . . . . . . . . . . . . . 15 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → (𝑧(pstoMet‘𝐷)𝑦) = ([𝑐] (pstoMet‘𝐷)[𝑏] ))
737pstmfval 34406 . . . . . . . . . . . . . . . 16 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑐𝑋𝑏𝑋) → ([𝑐] (pstoMet‘𝐷)[𝑏] ) = (𝑐𝐷𝑏))
7456, 57, 59, 73syl3anc 1398 . . . . . . . . . . . . . . 15 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → ([𝑐] (pstoMet‘𝐷)[𝑏] ) = (𝑐𝐷𝑏))
7572, 74eqtrd 2795 . . . . . . . . . . . . . 14 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → (𝑧(pstoMet‘𝐷)𝑦) = (𝑐𝐷𝑏))
7671, 75oveq12d 7431 . . . . . . . . . . . . 13 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦)) = ((𝑐𝐷𝑎) +𝑒 (𝑐𝐷𝑏)))
7761, 66, 763brtr4d 5137 . . . . . . . . . . . 12 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → (𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦)))
7877adantl6r 776 . . . . . . . . . . 11 ((((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑧 ∈ (𝑋 / )) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) ∧ 𝑐𝑋) ∧ 𝑧 = [𝑐] ) → (𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦)))
79 elqsi 8765 . . . . . . . . . . . 12 (𝑧 ∈ (𝑋 / ) → ∃𝑐𝑋 𝑧 = [𝑐] )
8079ad5antlr 748 . . . . . . . . . . 11 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑧 ∈ (𝑋 / )) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → ∃𝑐𝑋 𝑧 = [𝑐] )
8178, 80r19.29a 3170 . . . . . . . . . 10 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑧 ∈ (𝑋 / )) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → (𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦)))
8281adantl5r 775 . . . . . . . . 9 (((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑦 ∈ (𝑋 / )) ∧ 𝑧 ∈ (𝑋 / )) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) ∧ 𝑏𝑋) ∧ 𝑦 = [𝑏] ) → (𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦)))
8324ad4antlr 746 . . . . . . . . 9 (((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑦 ∈ (𝑋 / )) ∧ 𝑧 ∈ (𝑋 / )) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) → ∃𝑏𝑋 𝑦 = [𝑏] )
8482, 83r19.29a 3170 . . . . . . . 8 (((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑦 ∈ (𝑋 / )) ∧ 𝑧 ∈ (𝑋 / )) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) → (𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦)))
8584adantl4r 768 . . . . . . 7 ((((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥 ∈ (𝑋 / )) ∧ 𝑦 ∈ (𝑋 / )) ∧ 𝑧 ∈ (𝑋 / )) ∧ 𝑎𝑋) ∧ 𝑥 = [𝑎] ) → (𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦)))
8628ad3antlr 744 . . . . . . 7 ((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥 ∈ (𝑋 / )) ∧ 𝑦 ∈ (𝑋 / )) ∧ 𝑧 ∈ (𝑋 / )) → ∃𝑎𝑋 𝑥 = [𝑎] )
8785, 86r19.29a 3170 . . . . . 6 ((((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥 ∈ (𝑋 / )) ∧ 𝑦 ∈ (𝑋 / )) ∧ 𝑧 ∈ (𝑋 / )) → (𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦)))
8887ralrimiva 3154 . . . . 5 (((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥 ∈ (𝑋 / )) ∧ 𝑦 ∈ (𝑋 / )) → ∀𝑧 ∈ (𝑋 / )(𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦)))
8988anasss 472 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) → ∀𝑧 ∈ (𝑋 / )(𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦)))
9055, 89jca 521 . . 3 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥 ∈ (𝑋 / ) ∧ 𝑦 ∈ (𝑋 / ))) → (((𝑥(pstoMet‘𝐷)𝑦) = 0 ↔ 𝑥 = 𝑦) ∧ ∀𝑧 ∈ (𝑋 / )(𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦))))
9190ralrimivva 3205 . 2 (𝐷 ∈ (PsMet‘𝑋) → ∀𝑥 ∈ (𝑋 / )∀𝑦 ∈ (𝑋 / )(((𝑥(pstoMet‘𝐷)𝑦) = 0 ↔ 𝑥 = 𝑦) ∧ ∀𝑧 ∈ (𝑋 / )(𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦))))
92 elfvex 6913 . . 3 (𝐷 ∈ (PsMet‘𝑋) → 𝑋 ∈ V)
93 qsexg 8771 . . 3 (𝑋 ∈ V → (𝑋 / ) ∈ V)
94 isxmet 24550 . . 3 ((𝑋 / ) ∈ V → ((pstoMet‘𝐷) ∈ (∞Met‘(𝑋 / )) ↔ ((pstoMet‘𝐷):((𝑋 / ) × (𝑋 / ))⟶ℝ* ∧ ∀𝑥 ∈ (𝑋 / )∀𝑦 ∈ (𝑋 / )(((𝑥(pstoMet‘𝐷)𝑦) = 0 ↔ 𝑥 = 𝑦) ∧ ∀𝑧 ∈ (𝑋 / )(𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦))))))
9592, 93, 943syl 19 . 2 (𝐷 ∈ (PsMet‘𝑋) → ((pstoMet‘𝐷) ∈ (∞Met‘(𝑋 / )) ↔ ((pstoMet‘𝐷):((𝑋 / ) × (𝑋 / ))⟶ℝ* ∧ ∀𝑥 ∈ (𝑋 / )∀𝑦 ∈ (𝑋 / )(((𝑥(pstoMet‘𝐷)𝑦) = 0 ↔ 𝑥 = 𝑦) ∧ ∀𝑧 ∈ (𝑋 / )(𝑥(pstoMet‘𝐷)𝑦) ≤ ((𝑧(pstoMet‘𝐷)𝑥) +𝑒 (𝑧(pstoMet‘𝐷)𝑦))))))
9633, 91, 95mpbir2and 726 1 (𝐷 ∈ (PsMet‘𝑋) → (pstoMet‘𝐷) ∈ (∞Met‘(𝑋 / )))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401   = wceq 1570  wcel 2145  {cab 2738  wral 3076  wrex 3086  Vcvv 3450   cuni 4867   class class class wbr 5103   × cxp 5653   Fn wfn 6528  wf 6529  cfv 6533  (class class class)co 7413  cmpo 7415   Er wer 8693  [cec 8694   / cqs 8695  0cc0 11124  *cxr 11266  cle 11268   +𝑒 cxad 13161  PsMetcpsmet 21569  ∞Metcxmet 21570  ~Metcmetid 34396  pstoMetcpstm 34397
This proof depends on axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1828  ax-4 1842  ax-5 1943  ax-6 2000  ax-7 2041  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2213  ax-ext 2732  ax-rep 5232  ax-sep 5251  ax-nul 5263  ax-pow 5330  ax-pr 5398  ax-un 7736  ax-cnex 11180  ax-resscn 11181  ax-1cn 11182  ax-icn 11183  ax-addcl 11184  ax-addrcl 11185  ax-mulcl 11186  ax-mulrcl 11187  ax-mulcom 11188  ax-addass 11189  ax-mulass 11190  ax-distr 11191  ax-i2m1 11192  ax-1ne0 11193  ax-1rid 11194  ax-rnegex 11195  ax-rrecex 11196  ax-cnre 11197  ax-pre-lttri 11198  ax-pre-lttrn 11199  ax-pre-ltadd 11200  ax-pre-mulgt0 11201
This proof depends on definitions:  df-bi 210  df-an 402  df-or 862  df-3or 1104  df-3an 1105  df-tru 1573  df-fal 1583  df-ex 1813  df-nf 1817  df-sb 2100  df-mo 2564  df-eu 2594  df-clab 2739  df-cleq 2752  df-clel 2835  df-nfc 2909  df-ne 2956  df-nel 3062  df-ral 3077  df-rex 3087  df-rmo 3365  df-reu 3366  df-rab 3413  df-v 3452  df-sbc 3740  df-csb 3848  df-dif 3902  df-un 3904  df-in 3906  df-ss 3916  df-pss 3919  df-nul 4280  df-if 4483  df-pw 4559  df-sn 4585  df-pr 4587  df-op 4591  df-uni 4868  df-iun 4953  df-br 5104  df-opab 5168  df-mpt 5187  df-tr 5213  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6299  df-ord 6360  df-on 6361  df-lim 6362  df-suc 6363  df-iota 6489  df-fun 6535  df-fn 6536  df-f 6537  df-f1 6538  df-fo 6539  df-f1o 6540  df-fv 6541  df-riota 7370  df-ov 7416  df-oprab 7417  df-mpo 7418  df-om 7863  df-1st 7986  df-2nd 7987  df-frecs 8280  df-wrecs 8311  df-recs 8360  df-rdg 8399  df-er 8696  df-ec 8698  df-qs 8702  df-map 8828  df-en 8953  df-dom 8954  df-sdom 8955  df-pnf 11269  df-mnf 11270  df-xr 11271  df-ltxr 11272  df-le 11273  df-sub 11467  df-neg 11468  df-div 11896  df-nn 12258  df-2 12327  df-rp 13043  df-xneg 13163  df-xadd 13164  df-xmul 13165  df-psmet 21577  df-xmet 21578  df-metid 34398  df-pstm 34399
This theorem is used by: (None)
  Copyright terms: Public domain W3C validator