Step |
Hyp |
Ref |
Expression |
1 |
|
metdscn.f |
|- F = ( x e. X |-> inf ( ran ( y e. S |-> ( x D y ) ) , RR* , < ) ) |
2 |
|
metdscn.j |
|- J = ( MetOpen ` D ) |
3 |
|
metdscn.c |
|- C = ( dist ` RR*s ) |
4 |
|
metdscn.k |
|- K = ( MetOpen ` C ) |
5 |
|
metdscnlem.1 |
|- ( ph -> D e. ( *Met ` X ) ) |
6 |
|
metdscnlem.2 |
|- ( ph -> S C_ X ) |
7 |
|
metdscnlem.3 |
|- ( ph -> A e. X ) |
8 |
|
metdscnlem.4 |
|- ( ph -> B e. X ) |
9 |
|
metdscnlem.5 |
|- ( ph -> R e. RR+ ) |
10 |
|
metdscnlem.6 |
|- ( ph -> ( A D B ) < R ) |
11 |
1
|
metdsf |
|- ( ( D e. ( *Met ` X ) /\ S C_ X ) -> F : X --> ( 0 [,] +oo ) ) |
12 |
5 6 11
|
syl2anc |
|- ( ph -> F : X --> ( 0 [,] +oo ) ) |
13 |
12 7
|
ffvelrnd |
|- ( ph -> ( F ` A ) e. ( 0 [,] +oo ) ) |
14 |
|
eliccxr |
|- ( ( F ` A ) e. ( 0 [,] +oo ) -> ( F ` A ) e. RR* ) |
15 |
13 14
|
syl |
|- ( ph -> ( F ` A ) e. RR* ) |
16 |
12 8
|
ffvelrnd |
|- ( ph -> ( F ` B ) e. ( 0 [,] +oo ) ) |
17 |
|
eliccxr |
|- ( ( F ` B ) e. ( 0 [,] +oo ) -> ( F ` B ) e. RR* ) |
18 |
16 17
|
syl |
|- ( ph -> ( F ` B ) e. RR* ) |
19 |
18
|
xnegcld |
|- ( ph -> -e ( F ` B ) e. RR* ) |
20 |
15 19
|
xaddcld |
|- ( ph -> ( ( F ` A ) +e -e ( F ` B ) ) e. RR* ) |
21 |
|
xmetcl |
|- ( ( D e. ( *Met ` X ) /\ A e. X /\ B e. X ) -> ( A D B ) e. RR* ) |
22 |
5 7 8 21
|
syl3anc |
|- ( ph -> ( A D B ) e. RR* ) |
23 |
9
|
rpxrd |
|- ( ph -> R e. RR* ) |
24 |
1
|
metdstri |
|- ( ( ( D e. ( *Met ` X ) /\ S C_ X ) /\ ( A e. X /\ B e. X ) ) -> ( F ` A ) <_ ( ( A D B ) +e ( F ` B ) ) ) |
25 |
5 6 7 8 24
|
syl22anc |
|- ( ph -> ( F ` A ) <_ ( ( A D B ) +e ( F ` B ) ) ) |
26 |
|
elxrge0 |
|- ( ( F ` A ) e. ( 0 [,] +oo ) <-> ( ( F ` A ) e. RR* /\ 0 <_ ( F ` A ) ) ) |
27 |
26
|
simprbi |
|- ( ( F ` A ) e. ( 0 [,] +oo ) -> 0 <_ ( F ` A ) ) |
28 |
13 27
|
syl |
|- ( ph -> 0 <_ ( F ` A ) ) |
29 |
|
elxrge0 |
|- ( ( F ` B ) e. ( 0 [,] +oo ) <-> ( ( F ` B ) e. RR* /\ 0 <_ ( F ` B ) ) ) |
30 |
29
|
simprbi |
|- ( ( F ` B ) e. ( 0 [,] +oo ) -> 0 <_ ( F ` B ) ) |
31 |
16 30
|
syl |
|- ( ph -> 0 <_ ( F ` B ) ) |
32 |
|
ge0nemnf |
|- ( ( ( F ` B ) e. RR* /\ 0 <_ ( F ` B ) ) -> ( F ` B ) =/= -oo ) |
33 |
18 31 32
|
syl2anc |
|- ( ph -> ( F ` B ) =/= -oo ) |
34 |
|
xmetge0 |
|- ( ( D e. ( *Met ` X ) /\ A e. X /\ B e. X ) -> 0 <_ ( A D B ) ) |
35 |
5 7 8 34
|
syl3anc |
|- ( ph -> 0 <_ ( A D B ) ) |
36 |
|
xlesubadd |
|- ( ( ( ( F ` A ) e. RR* /\ ( F ` B ) e. RR* /\ ( A D B ) e. RR* ) /\ ( 0 <_ ( F ` A ) /\ ( F ` B ) =/= -oo /\ 0 <_ ( A D B ) ) ) -> ( ( ( F ` A ) +e -e ( F ` B ) ) <_ ( A D B ) <-> ( F ` A ) <_ ( ( A D B ) +e ( F ` B ) ) ) ) |
37 |
15 18 22 28 33 35 36
|
syl33anc |
|- ( ph -> ( ( ( F ` A ) +e -e ( F ` B ) ) <_ ( A D B ) <-> ( F ` A ) <_ ( ( A D B ) +e ( F ` B ) ) ) ) |
38 |
25 37
|
mpbird |
|- ( ph -> ( ( F ` A ) +e -e ( F ` B ) ) <_ ( A D B ) ) |
39 |
20 22 23 38 10
|
xrlelttrd |
|- ( ph -> ( ( F ` A ) +e -e ( F ` B ) ) < R ) |