ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  isxmet2d Unicode version

Theorem isxmet2d 15062
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.)
Hypotheses
Ref Expression
isxmetd.0  |-  ( ph  ->  X  e.  _V )
isxmetd.1  |-  ( ph  ->  D : ( X  X.  X ) --> RR* )
isxmet2d.2  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
0  <_  ( x D y ) )
isxmet2d.3  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( ( x D y )  <_  0  <->  x  =  y ) )
isxmet2d.4  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X )  /\  (
( z D x )  e.  RR  /\  ( z D y )  e.  RR ) )  ->  ( x D y )  <_ 
( ( z D x )  +  ( z D y ) ) )
Assertion
Ref Expression
isxmet2d  |-  ( ph  ->  D  e.  ( *Met `  X ) )
Distinct variable groups:    x, y, z, D    ph, x, y, z   
x, X, y, z

Proof of Theorem isxmet2d
StepHypRef Expression
1 isxmetd.0 . 2  |-  ( ph  ->  X  e.  _V )
2 isxmetd.1 . 2  |-  ( ph  ->  D : ( X  X.  X ) --> RR* )
32fovcdmda 6161 . . . 4  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( x D y )  e.  RR* )
4 0xr 8216 . . . 4  |-  0  e.  RR*
5 xrletri3 10029 . . . 4  |-  ( ( ( x D y )  e.  RR*  /\  0  e.  RR* )  ->  (
( x D y )  =  0  <->  (
( x D y )  <_  0  /\  0  <_  ( x D y ) ) ) )
63, 4, 5sylancl 413 . . 3  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( ( x D y )  =  0  <-> 
( ( x D y )  <_  0  /\  0  <_  ( x D y ) ) ) )
7 isxmet2d.2 . . . 4  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
0  <_  ( x D y ) )
87biantrud 304 . . 3  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( ( x D y )  <_  0  <->  ( ( x D y )  <_  0  /\  0  <_  ( x D y ) ) ) )
9 isxmet2d.3 . . 3  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( ( x D y )  <_  0  <->  x  =  y ) )
106, 8, 93bitr2d 216 . 2  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( ( x D y )  =  0  <-> 
x  =  y ) )
11 isxmet2d.4 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X )  /\  (
( z D x )  e.  RR  /\  ( z D y )  e.  RR ) )  ->  ( x D y )  <_ 
( ( z D x )  +  ( z D y ) ) )
12113expa 1227 . . . . . 6  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( (
z D x )  e.  RR  /\  (
z D y )  e.  RR ) )  ->  ( x D y )  <_  (
( z D x )  +  ( z D y ) ) )
13 rexadd 10077 . . . . . . 7  |-  ( ( ( z D x )  e.  RR  /\  ( z D y )  e.  RR )  ->  ( ( z D x ) +e ( z D y ) )  =  ( ( z D x )  +  ( z D y ) ) )
1413adantl 277 . . . . . 6  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( (
z D x )  e.  RR  /\  (
z D y )  e.  RR ) )  ->  ( ( z D x ) +e ( z D y ) )  =  ( ( z D x )  +  ( z D y ) ) )
1512, 14breqtrrd 4114 . . . . 5  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( (
z D x )  e.  RR  /\  (
z D y )  e.  RR ) )  ->  ( x D y )  <_  (
( z D x ) +e ( z D y ) ) )
1615anassrs 400 . . . 4  |-  ( ( ( ( ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X
) )  /\  (
z D x )  e.  RR )  /\  ( z D y )  e.  RR )  ->  ( x D y )  <_  (
( z D x ) +e ( z D y ) ) )
1733adantr3 1182 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( x D y )  e.  RR* )
18 pnfge 10014 . . . . . . 7  |-  ( ( x D y )  e.  RR*  ->  ( x D y )  <_ +oo )
1917, 18syl 14 . . . . . 6  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( x D y )  <_ +oo )
2019ad2antrr 488 . . . . 5  |-  ( ( ( ( ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X
) )  /\  (
z D x )  e.  RR )  /\  ( z D y )  = +oo )  ->  ( x D y )  <_ +oo )
21 oveq2 6021 . . . . . 6  |-  ( ( z D y )  = +oo  ->  (
( z D x ) +e ( z D y ) )  =  ( ( z D x ) +e +oo )
)
222ffnd 5480 . . . . . . . . . . 11  |-  ( ph  ->  D  Fn  ( X  X.  X ) )
23 elxrge0 10203 . . . . . . . . . . . . 13  |-  ( ( x D y )  e.  ( 0 [,] +oo )  <->  ( ( x D y )  e. 
RR*  /\  0  <_  ( x D y ) ) )
243, 7, 23sylanbrc 417 . . . . . . . . . . . 12  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( x D y )  e.  ( 0 [,] +oo ) )
2524ralrimivva 2612 . . . . . . . . . . 11  |-  ( ph  ->  A. x  e.  X  A. y  e.  X  ( x D y )  e.  ( 0 [,] +oo ) )
26 ffnov 6120 . . . . . . . . . . 11  |-  ( D : ( X  X.  X ) --> ( 0 [,] +oo )  <->  ( D  Fn  ( X  X.  X
)  /\  A. x  e.  X  A. y  e.  X  ( x D y )  e.  ( 0 [,] +oo ) ) )
2722, 25, 26sylanbrc 417 . . . . . . . . . 10  |-  ( ph  ->  D : ( X  X.  X ) --> ( 0 [,] +oo )
)
2827adantr 276 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  ->  D : ( X  X.  X ) --> ( 0 [,] +oo ) )
29 simpr3 1029 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
z  e.  X )
30 simpr1 1027 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  ->  x  e.  X )
3128, 29, 30fovcdmd 6162 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( z D x )  e.  ( 0 [,] +oo ) )
32 elxrge0 10203 . . . . . . . . 9  |-  ( ( z D x )  e.  ( 0 [,] +oo )  <->  ( ( z D x )  e. 
RR*  /\  0  <_  ( z D x ) ) )
3332simplbi 274 . . . . . . . 8  |-  ( ( z D x )  e.  ( 0 [,] +oo )  ->  ( z D x )  e. 
RR* )
3431, 33syl 14 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( z D x )  e.  RR* )
35 renemnf 8218 . . . . . . 7  |-  ( ( z D x )  e.  RR  ->  (
z D x )  =/= -oo )
36 xaddpnf1 10071 . . . . . . 7  |-  ( ( ( z D x )  e.  RR*  /\  (
z D x )  =/= -oo )  -> 
( ( z D x ) +e +oo )  = +oo )
3734, 35, 36syl2an 289 . . . . . 6  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( z D x )  e.  RR )  ->  (
( z D x ) +e +oo )  = +oo )
3821, 37sylan9eqr 2284 . . . . 5  |-  ( ( ( ( ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X
) )  /\  (
z D x )  e.  RR )  /\  ( z D y )  = +oo )  ->  ( ( z D x ) +e
( z D y ) )  = +oo )
3920, 38breqtrrd 4114 . . . 4  |-  ( ( ( ( ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X
) )  /\  (
z D x )  e.  RR )  /\  ( z D y )  = +oo )  ->  ( x D y )  <_  ( (
z D x ) +e ( z D y ) ) )
40 simpr2 1028 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
y  e.  X )
4128, 29, 40fovcdmd 6162 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( z D y )  e.  ( 0 [,] +oo ) )
42 elxrge0 10203 . . . . . . . . . . 11  |-  ( ( z D y )  e.  ( 0 [,] +oo )  <->  ( ( z D y )  e. 
RR*  /\  0  <_  ( z D y ) ) )
4342simplbi 274 . . . . . . . . . 10  |-  ( ( z D y )  e.  ( 0 [,] +oo )  ->  ( z D y )  e. 
RR* )
4441, 43syl 14 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( z D y )  e.  RR* )
4542simprbi 275 . . . . . . . . . 10  |-  ( ( z D y )  e.  ( 0 [,] +oo )  ->  0  <_ 
( z D y ) )
4641, 45syl 14 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
0  <_  ( z D y ) )
47 ge0nemnf 10049 . . . . . . . . 9  |-  ( ( ( z D y )  e.  RR*  /\  0  <_  ( z D y ) )  ->  (
z D y )  =/= -oo )
4844, 46, 47syl2anc 411 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( z D y )  =/= -oo )
4948neneqd 2421 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  ->  -.  ( z D y )  = -oo )
5049pm2.21d 622 . . . . . 6  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( ( z D y )  = -oo  ->  ( x D y )  <_  ( (
z D x ) +e ( z D y ) ) ) )
5150adantr 276 . . . . 5  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( z D x )  e.  RR )  ->  (
( z D y )  = -oo  ->  ( x D y )  <_  ( ( z D x ) +e ( z D y ) ) ) )
5251imp 124 . . . 4  |-  ( ( ( ( ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X
) )  /\  (
z D x )  e.  RR )  /\  ( z D y )  = -oo )  ->  ( x D y )  <_  ( (
z D x ) +e ( z D y ) ) )
5344adantr 276 . . . . 5  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( z D x )  e.  RR )  ->  (
z D y )  e.  RR* )
54 elxr 10001 . . . . 5  |-  ( ( z D y )  e.  RR*  <->  ( ( z D y )  e.  RR  \/  ( z D y )  = +oo  \/  ( z D y )  = -oo ) )
5553, 54sylib 122 . . . 4  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( z D x )  e.  RR )  ->  (
( z D y )  e.  RR  \/  ( z D y )  = +oo  \/  ( z D y )  = -oo )
)
5616, 39, 52, 55mpjao3dan 1341 . . 3  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( z D x )  e.  RR )  ->  (
x D y )  <_  ( ( z D x ) +e ( z D y ) ) )
5719adantr 276 . . . 4  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( z D x )  = +oo )  ->  (
x D y )  <_ +oo )
58 oveq1 6020 . . . . 5  |-  ( ( z D x )  = +oo  ->  (
( z D x ) +e ( z D y ) )  =  ( +oo +e ( z D y ) ) )
59 xaddpnf2 10072 . . . . . 6  |-  ( ( ( z D y )  e.  RR*  /\  (
z D y )  =/= -oo )  -> 
( +oo +e ( z D y ) )  = +oo )
6044, 48, 59syl2anc 411 . . . . 5  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( +oo +e ( z D y ) )  = +oo )
6158, 60sylan9eqr 2284 . . . 4  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( z D x )  = +oo )  ->  (
( z D x ) +e ( z D y ) )  = +oo )
6257, 61breqtrrd 4114 . . 3  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( z D x )  = +oo )  ->  (
x D y )  <_  ( ( z D x ) +e ( z D y ) ) )
6332simprbi 275 . . . . . . . 8  |-  ( ( z D x )  e.  ( 0 [,] +oo )  ->  0  <_ 
( z D x ) )
6431, 63syl 14 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
0  <_  ( z D x ) )
65 ge0nemnf 10049 . . . . . . 7  |-  ( ( ( z D x )  e.  RR*  /\  0  <_  ( z D x ) )  ->  (
z D x )  =/= -oo )
6634, 64, 65syl2anc 411 . . . . . 6  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( z D x )  =/= -oo )
6766neneqd 2421 . . . . 5  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  ->  -.  ( z D x )  = -oo )
6867pm2.21d 622 . . . 4  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( ( z D x )  = -oo  ->  ( x D y )  <_  ( (
z D x ) +e ( z D y ) ) ) )
6968imp 124 . . 3  |-  ( ( ( ph  /\  (
x  e.  X  /\  y  e.  X  /\  z  e.  X )
)  /\  ( z D x )  = -oo )  ->  (
x D y )  <_  ( ( z D x ) +e ( z D y ) ) )
70 elxr 10001 . . . 4  |-  ( ( z D x )  e.  RR*  <->  ( ( z D x )  e.  RR  \/  ( z D x )  = +oo  \/  ( z D x )  = -oo ) )
7134, 70sylib 122 . . 3  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( ( z D x )  e.  RR  \/  ( z D x )  = +oo  \/  ( z D x )  = -oo )
)
7256, 62, 69, 71mpjao3dan 1341 . 2  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( x D y )  <_  ( (
z D x ) +e ( z D y ) ) )
731, 2, 10, 72isxmetd 15061 1  |-  ( ph  ->  D  e.  ( *Met `  X ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 104    <-> wb 105    \/ w3o 1001    /\ w3a 1002    = wceq 1395    e. wcel 2200    =/= wne 2400   A.wral 2508   _Vcvv 2800   class class class wbr 4086    X. cxp 4721    Fn wfn 5319   -->wf 5320   ` cfv 5324  (class class class)co 6013   RRcr 8021   0cc0 8022    + caddc 8025   +oocpnf 8201   -oocmnf 8202   RR*cxr 8203    <_ cle 8205   +ecxad 9995   [,]cicc 10116   *Metcxmet 14540
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 617  ax-in2 618  ax-io 714  ax-5 1493  ax-7 1494  ax-gen 1495  ax-ie1 1539  ax-ie2 1540  ax-8 1550  ax-10 1551  ax-11 1552  ax-i12 1553  ax-bndl 1555  ax-4 1556  ax-17 1572  ax-i9 1576  ax-ial 1580  ax-i5r 1581  ax-13 2202  ax-14 2203  ax-ext 2211  ax-sep 4205  ax-pow 4262  ax-pr 4297  ax-un 4528  ax-setind 4633  ax-cnex 8113  ax-resscn 8114  ax-1re 8116  ax-addrcl 8119  ax-rnegex 8131  ax-pre-ltirr 8134  ax-pre-ltwlin 8135  ax-pre-lttrn 8136  ax-pre-apti 8137
This theorem depends on definitions:  df-bi 117  df-dc 840  df-3or 1003  df-3an 1004  df-tru 1398  df-fal 1401  df-nf 1507  df-sb 1809  df-eu 2080  df-mo 2081  df-clab 2216  df-cleq 2222  df-clel 2225  df-nfc 2361  df-ne 2401  df-nel 2496  df-ral 2513  df-rex 2514  df-rab 2517  df-v 2802  df-sbc 3030  df-csb 3126  df-dif 3200  df-un 3202  df-in 3204  df-ss 3211  df-if 3604  df-pw 3652  df-sn 3673  df-pr 3674  df-op 3676  df-uni 3892  df-iun 3970  df-br 4087  df-opab 4149  df-mpt 4150  df-id 4388  df-po 4391  df-iso 4392  df-xp 4729  df-rel 4730  df-cnv 4731  df-co 4732  df-dm 4733  df-rn 4734  df-res 4735  df-ima 4736  df-iota 5284  df-fun 5326  df-fn 5327  df-f 5328  df-fv 5332  df-ov 6016  df-oprab 6017  df-mpo 6018  df-1st 6298  df-2nd 6299  df-map 6814  df-pnf 8206  df-mnf 8207  df-xr 8208  df-ltxr 8209  df-le 8210  df-xadd 9998  df-icc 10120  df-xmet 14548
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator