Metamath Proof Explorer


Theorem isxmet2d

Description: It is safe to only require the triangle inequality when the values are real (so that we can use the standard addition over the reals), but in this case the nonnegativity constraint cannot be deduced and must be provided separately. (Counterexample: D ( x , y ) = if ( x = y , 0 , -oo ) satisfies all hypotheses except nonnegativity.) (Contributed by Mario Carneiro, 20-Aug-2015)

Ref Expression
Hypotheses isxmetd.0 ⊢ φ → X ∈ V
isxmetd.1 ⊢ φ → D : X × X ⟶ ℝ *
isxmet2d.2 ⊢ φ ∧ x ∈ X ∧ y ∈ X → 0 ≤ x D y
isxmet2d.3 ⊢ φ ∧ x ∈ X ∧ y ∈ X → x D y ≤ 0 ↔ x = y
isxmet2d.4 ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ ∧ z D y ∈ ℝ → x D y ≤ z D x + z D y
Assertion isxmet2d ⊢ φ → D ∈ ∞Met ⁡ X

Proof

Step Hyp Ref Expression
1 isxmetd.0 ⊢ φ → X ∈ V
2 isxmetd.1 ⊢ φ → D : X × X ⟶ ℝ *
3 isxmet2d.2 ⊢ φ ∧ x ∈ X ∧ y ∈ X → 0 ≤ x D y
4 isxmet2d.3 ⊢ φ ∧ x ∈ X ∧ y ∈ X → x D y ≤ 0 ↔ x = y
5 isxmet2d.4 ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ ∧ z D y ∈ ℝ → x D y ≤ z D x + z D y
6 2 fovcdmda ⊢ φ ∧ x ∈ X ∧ y ∈ X → x D y ∈ ℝ *
7 0xr ⊢ 0 ∈ ℝ *
8 xrletri3 ⊢ x D y ∈ ℝ * ∧ 0 ∈ ℝ * → x D y = 0 ↔ x D y ≤ 0 ∧ 0 ≤ x D y
9 6 7 8 sylancl ⊢ φ ∧ x ∈ X ∧ y ∈ X → x D y = 0 ↔ x D y ≤ 0 ∧ 0 ≤ x D y
10 3 biantrud ⊢ φ ∧ x ∈ X ∧ y ∈ X → x D y ≤ 0 ↔ x D y ≤ 0 ∧ 0 ≤ x D y
11 9 10 4 3bitr2d ⊢ φ ∧ x ∈ X ∧ y ∈ X → x D y = 0 ↔ x = y
12 5 3expa ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ ∧ z D y ∈ ℝ → x D y ≤ z D x + z D y
13 rexadd ⊢ z D x ∈ ℝ ∧ z D y ∈ ℝ → z D x + 𝑒 z D y = z D x + z D y
14 13 adantl ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ ∧ z D y ∈ ℝ → z D x + 𝑒 z D y = z D x + z D y
15 12 14 breqtrrd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ ∧ z D y ∈ ℝ → x D y ≤ z D x + 𝑒 z D y
16 15 anassrs ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ ∧ z D y ∈ ℝ → x D y ≤ z D x + 𝑒 z D y
17 6 3adantr3 ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → x D y ∈ ℝ *
18 pnfge ⊢ x D y ∈ ℝ * → x D y ≤ +∞
19 17 18 syl ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → x D y ≤ +∞
20 19 ad2antrr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ ∧ z D y = +∞ → x D y ≤ +∞
21 oveq2 ⊢ z D y = +∞ → z D x + 𝑒 z D y = z D x + 𝑒 +∞
22 2 ffnd ⊢ φ → D Fn X × X
23 elxrge0 ⊢ x D y ∈ 0 +∞ ↔ x D y ∈ ℝ * ∧ 0 ≤ x D y
24 6 3 23 sylanbrc ⊢ φ ∧ x ∈ X ∧ y ∈ X → x D y ∈ 0 +∞
25 24 ralrimivva ⊢ φ → ∀ x ∈ X ∀ y ∈ X x D y ∈ 0 +∞
26 ffnov ⊢ D : X × X ⟶ 0 +∞ ↔ D Fn X × X ∧ ∀ x ∈ X ∀ y ∈ X x D y ∈ 0 +∞
27 22 25 26 sylanbrc ⊢ φ → D : X × X ⟶ 0 +∞
28 27 adantr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → D : X × X ⟶ 0 +∞
29 simpr3 ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → z ∈ X
30 simpr1 ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → x ∈ X
31 28 29 30 fovcdmd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → z D x ∈ 0 +∞
32 eliccxr ⊢ z D x ∈ 0 +∞ → z D x ∈ ℝ *
33 31 32 syl ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → z D x ∈ ℝ *
34 renemnf ⊢ z D x ∈ ℝ → z D x ≠ −∞
35 xaddpnf1 ⊢ z D x ∈ ℝ * ∧ z D x ≠ −∞ → z D x + 𝑒 +∞ = +∞
36 33 34 35 syl2an ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ → z D x + 𝑒 +∞ = +∞
37 21 36 sylan9eqr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ ∧ z D y = +∞ → z D x + 𝑒 z D y = +∞
38 20 37 breqtrrd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ ∧ z D y = +∞ → x D y ≤ z D x + 𝑒 z D y
39 simpr2 ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → y ∈ X
40 28 29 39 fovcdmd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → z D y ∈ 0 +∞
41 eliccxr ⊢ z D y ∈ 0 +∞ → z D y ∈ ℝ *
42 40 41 syl ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → z D y ∈ ℝ *
43 elxrge0 ⊢ z D y ∈ 0 +∞ ↔ z D y ∈ ℝ * ∧ 0 ≤ z D y
44 43 simprbi ⊢ z D y ∈ 0 +∞ → 0 ≤ z D y
45 40 44 syl ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → 0 ≤ z D y
46 ge0nemnf ⊢ z D y ∈ ℝ * ∧ 0 ≤ z D y → z D y ≠ −∞
47 42 45 46 syl2anc ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → z D y ≠ −∞
48 47 a1d ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → ¬ x D y ≤ z D x + 𝑒 z D y → z D y ≠ −∞
49 48 necon4bd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → z D y = −∞ → x D y ≤ z D x + 𝑒 z D y
50 49 adantr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ → z D y = −∞ → x D y ≤ z D x + 𝑒 z D y
51 50 imp ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ ∧ z D y = −∞ → x D y ≤ z D x + 𝑒 z D y
52 42 adantr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ → z D y ∈ ℝ *
53 elxr ⊢ z D y ∈ ℝ * ↔ z D y ∈ ℝ ∨ z D y = +∞ ∨ z D y = −∞
54 52 53 sylib ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ → z D y ∈ ℝ ∨ z D y = +∞ ∨ z D y = −∞
55 16 38 51 54 mpjao3dan ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x ∈ ℝ → x D y ≤ z D x + 𝑒 z D y
56 19 adantr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x = +∞ → x D y ≤ +∞
57 oveq1 ⊢ z D x = +∞ → z D x + 𝑒 z D y = +∞ + 𝑒 z D y
58 xaddpnf2 ⊢ z D y ∈ ℝ * ∧ z D y ≠ −∞ → +∞ + 𝑒 z D y = +∞
59 42 47 58 syl2anc ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → +∞ + 𝑒 z D y = +∞
60 57 59 sylan9eqr ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x = +∞ → z D x + 𝑒 z D y = +∞
61 56 60 breqtrrd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x = +∞ → x D y ≤ z D x + 𝑒 z D y
62 elxrge0 ⊢ z D x ∈ 0 +∞ ↔ z D x ∈ ℝ * ∧ 0 ≤ z D x
63 62 simprbi ⊢ z D x ∈ 0 +∞ → 0 ≤ z D x
64 31 63 syl ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → 0 ≤ z D x
65 ge0nemnf ⊢ z D x ∈ ℝ * ∧ 0 ≤ z D x → z D x ≠ −∞
66 33 64 65 syl2anc ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → z D x ≠ −∞
67 66 a1d ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → ¬ x D y ≤ z D x + 𝑒 z D y → z D x ≠ −∞
68 67 necon4bd ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → z D x = −∞ → x D y ≤ z D x + 𝑒 z D y
69 68 imp ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X ∧ z D x = −∞ → x D y ≤ z D x + 𝑒 z D y
70 elxr ⊢ z D x ∈ ℝ * ↔ z D x ∈ ℝ ∨ z D x = +∞ ∨ z D x = −∞
71 33 70 sylib ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → z D x ∈ ℝ ∨ z D x = +∞ ∨ z D x = −∞
72 55 61 69 71 mpjao3dan ⊢ φ ∧ x ∈ X ∧ y ∈ X ∧ z ∈ X → x D y ≤ z D x + 𝑒 z D y
73 1 2 11 72 isxmetd ⊢ φ → D ∈ ∞Met ⁡ X