Proof of Theorem stdbdmet
Step | Hyp | Ref
| Expression |
1 | | rpxr 12739 |
. . . 4
⊢ (𝑅 ∈ ℝ+
→ 𝑅 ∈
ℝ*) |
2 | | rpgt0 12742 |
. . . 4
⊢ (𝑅 ∈ ℝ+
→ 0 < 𝑅) |
3 | 1, 2 | jca 512 |
. . 3
⊢ (𝑅 ∈ ℝ+
→ (𝑅 ∈
ℝ* ∧ 0 < 𝑅)) |
4 | | stdbdmet.1 |
. . . . 5
⊢ 𝐷 = (𝑥 ∈ 𝑋, 𝑦 ∈ 𝑋 ↦ if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅)) |
5 | 4 | stdbdxmet 23671 |
. . . 4
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ* ∧ 0 <
𝑅) → 𝐷 ∈ (∞Met‘𝑋)) |
6 | 5 | 3expb 1119 |
. . 3
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ (𝑅 ∈ ℝ* ∧ 0 <
𝑅)) → 𝐷 ∈ (∞Met‘𝑋)) |
7 | 3, 6 | sylan2 593 |
. 2
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) → 𝐷 ∈ (∞Met‘𝑋)) |
8 | | xmetcl 23484 |
. . . . . . . 8
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋) → (𝑥𝐶𝑦) ∈
ℝ*) |
9 | 8 | 3expb 1119 |
. . . . . . 7
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → (𝑥𝐶𝑦) ∈
ℝ*) |
10 | 9 | adantlr 712 |
. . . . . 6
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → (𝑥𝐶𝑦) ∈
ℝ*) |
11 | 1 | ad2antlr 724 |
. . . . . 6
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → 𝑅 ∈
ℝ*) |
12 | 10, 11 | ifcld 4505 |
. . . . 5
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) ∈
ℝ*) |
13 | | rpre 12738 |
. . . . . 6
⊢ (𝑅 ∈ ℝ+
→ 𝑅 ∈
ℝ) |
14 | 13 | ad2antlr 724 |
. . . . 5
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → 𝑅 ∈ ℝ) |
15 | | xmetge0 23497 |
. . . . . . . 8
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋) → 0 ≤ (𝑥𝐶𝑦)) |
16 | 15 | 3expb 1119 |
. . . . . . 7
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → 0 ≤ (𝑥𝐶𝑦)) |
17 | 16 | adantlr 712 |
. . . . . 6
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → 0 ≤ (𝑥𝐶𝑦)) |
18 | | rpge0 12743 |
. . . . . . 7
⊢ (𝑅 ∈ ℝ+
→ 0 ≤ 𝑅) |
19 | 18 | ad2antlr 724 |
. . . . . 6
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → 0 ≤ 𝑅) |
20 | | breq2 5078 |
. . . . . . 7
⊢ ((𝑥𝐶𝑦) = if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) → (0 ≤ (𝑥𝐶𝑦) ↔ 0 ≤ if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅))) |
21 | | breq2 5078 |
. . . . . . 7
⊢ (𝑅 = if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) → (0 ≤ 𝑅 ↔ 0 ≤ if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅))) |
22 | 20, 21 | ifboth 4498 |
. . . . . 6
⊢ ((0 ≤
(𝑥𝐶𝑦) ∧ 0 ≤ 𝑅) → 0 ≤ if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅)) |
23 | 17, 19, 22 | syl2anc 584 |
. . . . 5
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → 0 ≤ if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅)) |
24 | | xrmin2 12912 |
. . . . . 6
⊢ (((𝑥𝐶𝑦) ∈ ℝ* ∧ 𝑅 ∈ ℝ*)
→ if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) ≤ 𝑅) |
25 | 10, 11, 24 | syl2anc 584 |
. . . . 5
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) ≤ 𝑅) |
26 | | xrrege0 12908 |
. . . . 5
⊢
(((if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) ∈ ℝ* ∧ 𝑅 ∈ ℝ) ∧ (0 ≤
if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) ∧ if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) ≤ 𝑅)) → if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) ∈ ℝ) |
27 | 12, 14, 23, 25, 26 | syl22anc 836 |
. . . 4
⊢ (((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) ∧ (𝑥 ∈ 𝑋 ∧ 𝑦 ∈ 𝑋)) → if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) ∈ ℝ) |
28 | 27 | ralrimivva 3123 |
. . 3
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) →
∀𝑥 ∈ 𝑋 ∀𝑦 ∈ 𝑋 if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) ∈ ℝ) |
29 | 4 | fmpo 7908 |
. . 3
⊢
(∀𝑥 ∈
𝑋 ∀𝑦 ∈ 𝑋 if((𝑥𝐶𝑦) ≤ 𝑅, (𝑥𝐶𝑦), 𝑅) ∈ ℝ ↔ 𝐷:(𝑋 × 𝑋)⟶ℝ) |
30 | 28, 29 | sylib 217 |
. 2
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) → 𝐷:(𝑋 × 𝑋)⟶ℝ) |
31 | | ismet2 23486 |
. 2
⊢ (𝐷 ∈ (Met‘𝑋) ↔ (𝐷 ∈ (∞Met‘𝑋) ∧ 𝐷:(𝑋 × 𝑋)⟶ℝ)) |
32 | 7, 30, 31 | sylanbrc 583 |
1
⊢ ((𝐶 ∈ (∞Met‘𝑋) ∧ 𝑅 ∈ ℝ+) → 𝐷 ∈ (Met‘𝑋)) |