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

Theorem isxmet2d 15339
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 6206 . . . 4  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X ) )  -> 
( x D y )  e.  RR* )
4 0xr 8336 . . . 4  |-  0  e.  RR*
5 xrletri3 10156 . . . 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 1230 . . . . . 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 10204 . . . . . . 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 4142 . . . . 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 1185 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( x D y )  e.  RR* )
18 pnfge 10141 . . . . . . 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 6066 . . . . . 6  |-  ( ( z D y )  = +oo  ->  (
( z D x ) +e ( z D y ) )  =  ( ( z D x ) +e +oo )
)
222ffnd 5514 . . . . . . . . . . 11  |-  ( ph  ->  D  Fn  ( X  X.  X ) )
23 elxrge0 10330 . . . . . . . . . . . . 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 2626 . . . . . . . . . . 11  |-  ( ph  ->  A. x  e.  X  A. y  e.  X  ( x D y )  e.  ( 0 [,] +oo ) )
26 ffnov 6165 . . . . . . . . . . 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 1032 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
z  e.  X )
30 simpr1 1030 . . . . . . . . 9  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  ->  x  e.  X )
3128, 29, 30fovcdmd 6207 . . . . . . . 8  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( z D x )  e.  ( 0 [,] +oo ) )
32 elxrge0 10330 . . . . . . . . 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 8338 . . . . . . 7  |-  ( ( z D x )  e.  RR  ->  (
z D x )  =/= -oo )
36 xaddpnf1 10198 . . . . . . 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 2289 . . . . 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 4142 . . . 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 1031 . . . . . . . . . . 11  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
y  e.  X )
4128, 29, 40fovcdmd 6207 . . . . . . . . . 10  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  -> 
( z D y )  e.  ( 0 [,] +oo ) )
42 elxrge0 10330 . . . . . . . . . . 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 10176 . . . . . . . . 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 2435 . . . . . . 7  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  ->  -.  ( z D y )  = -oo )
5049pm2.21d 624 . . . . . 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 10128 . . . . 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 1344 . . 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 6065 . . . . 5  |-  ( ( z D x )  = +oo  ->  (
( z D x ) +e ( z D y ) )  =  ( +oo +e ( z D y ) ) )
59 xaddpnf2 10199 . . . . . 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 2289 . . . 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 4142 . . 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 10176 . . . . . . 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 2435 . . . . 5  |-  ( (
ph  /\  ( x  e.  X  /\  y  e.  X  /\  z  e.  X ) )  ->  -.  ( z D x )  = -oo )
6867pm2.21d 624 . . . 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 10128 . . . 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 1344 . 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 15338 1  |-  ( ph  ->  D  e.  ( *Met `  X ) )
Colors of variables: wff set class
Syntax hints:    -> wi 4    /\ wa 104    <-> wb 105    \/ w3o 1004    /\ w3a 1005    = wceq 1398    e. wcel 2205    =/= wne 2414   A.wral 2522   _Vcvv 2815   class class class wbr 4114    X. cxp 4752    Fn wfn 5352   -->wf 5353   ` cfv 5357  (class class class)co 6058   RRcr 8142   0cc0 8143    + caddc 8146   +oocpnf 8321   -oocmnf 8322   RR*cxr 8323    <_ cle 8325   +ecxad 10122   [,]cicc 10243   *Metcxmet 14810
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 619  ax-in2 620  ax-io 717  ax-5 1496  ax-7 1497  ax-gen 1498  ax-ie1 1542  ax-ie2 1543  ax-8 1553  ax-10 1554  ax-11 1555  ax-i12 1556  ax-bndl 1558  ax-4 1559  ax-17 1575  ax-i9 1579  ax-ial 1583  ax-i5r 1584  ax-13 2207  ax-14 2208  ax-ext 2216  ax-sep 4233  ax-pow 4292  ax-pr 4327  ax-un 4559  ax-setind 4664  ax-cnex 8234  ax-resscn 8235  ax-1re 8237  ax-addrcl 8240  ax-rnegex 8252  ax-pre-ltirr 8255  ax-pre-ltwlin 8256  ax-pre-lttrn 8257  ax-pre-apti 8258
This theorem depends on definitions:  df-bi 117  df-dc 843  df-3or 1006  df-3an 1007  df-tru 1401  df-fal 1404  df-nf 1510  df-sb 1812  df-eu 2085  df-mo 2086  df-clab 2221  df-cleq 2227  df-clel 2230  df-nfc 2375  df-ne 2415  df-nel 2510  df-ral 2527  df-rex 2528  df-rab 2531  df-v 2817  df-sbc 3046  df-csb 3142  df-dif 3216  df-un 3218  df-in 3220  df-ss 3227  df-if 3625  df-pw 3676  df-sn 3700  df-pr 3701  df-op 3703  df-uni 3920  df-iun 3998  df-br 4115  df-opab 4177  df-mpt 4178  df-id 4419  df-po 4422  df-iso 4423  df-xp 4760  df-rel 4761  df-cnv 4762  df-co 4763  df-dm 4764  df-rn 4765  df-res 4766  df-ima 4767  df-iota 5317  df-fun 5359  df-fn 5360  df-f 5361  df-fv 5365  df-ov 6061  df-oprab 6062  df-mpo 6063  df-1st 6347  df-2nd 6348  df-map 6897  df-pnf 8326  df-mnf 8327  df-xr 8328  df-ltxr 8329  df-le 8330  df-xadd 10125  df-icc 10247  df-xmet 14818
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator