MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  isxmet Structured version   Visualization version   Unicode version

Theorem isxmet 21351
Description: Express the predicate " D is an extended metric." (Contributed by Mario Carneiro, 20-Aug-2015.)
Assertion
Ref Expression
isxmet  |-  ( X  e.  A  ->  ( D  e.  ( *Met `  X )  <->  ( D : ( X  X.  X ) --> RR*  /\  A. x  e.  X  A. y  e.  X  (
( ( x D y )  =  0  <-> 
x  =  y )  /\  A. z  e.  X  ( x D y )  <_  (
( z D x ) +e ( z D y ) ) ) ) ) )
Distinct variable groups:    x, y,
z, D    x, X, y, z
Allowed substitution hints:    A( x, y, z)

Proof of Theorem isxmet
Dummy variables  d 
t are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 elex 3056 . . . . 5  |-  ( X  e.  A  ->  X  e.  _V )
2 xpeq12 4856 . . . . . . . . 9  |-  ( ( t  =  X  /\  t  =  X )  ->  ( t  X.  t
)  =  ( X  X.  X ) )
32anidms 651 . . . . . . . 8  |-  ( t  =  X  ->  (
t  X.  t )  =  ( X  X.  X ) )
43oveq2d 6311 . . . . . . 7  |-  ( t  =  X  ->  ( RR*  ^m  ( t  X.  t ) )  =  ( RR*  ^m  ( X  X.  X ) ) )
5 raleq 2989 . . . . . . . . . 10  |-  ( t  =  X  ->  ( A. z  e.  t 
( x d y )  <_  ( (
z d x ) +e ( z d y ) )  <->  A. z  e.  X  ( x d y )  <_  ( (
z d x ) +e ( z d y ) ) ) )
65anbi2d 711 . . . . . . . . 9  |-  ( t  =  X  ->  (
( ( ( x d y )  =  0  <->  x  =  y
)  /\  A. z  e.  t  ( x
d y )  <_ 
( ( z d x ) +e
( z d y ) ) )  <->  ( (
( x d y )  =  0  <->  x  =  y )  /\  A. z  e.  X  ( x d y )  <_  ( ( z d x ) +e ( z d y ) ) ) ) )
76raleqbi1dv 2997 . . . . . . . 8  |-  ( t  =  X  ->  ( A. y  e.  t 
( ( ( x d y )  =  0  <->  x  =  y
)  /\  A. z  e.  t  ( x
d y )  <_ 
( ( z d x ) +e
( z d y ) ) )  <->  A. y  e.  X  ( (
( x d y )  =  0  <->  x  =  y )  /\  A. z  e.  X  ( x d y )  <_  ( ( z d x ) +e ( z d y ) ) ) ) )
87raleqbi1dv 2997 . . . . . . 7  |-  ( t  =  X  ->  ( A. x  e.  t  A. y  e.  t 
( ( ( x d y )  =  0  <->  x  =  y
)  /\  A. z  e.  t  ( x
d y )  <_ 
( ( z d x ) +e
( z d y ) ) )  <->  A. x  e.  X  A. y  e.  X  ( (
( x d y )  =  0  <->  x  =  y )  /\  A. z  e.  X  ( x d y )  <_  ( ( z d x ) +e ( z d y ) ) ) ) )
94, 8rabeqbidv 3042 . . . . . 6  |-  ( t  =  X  ->  { d  e.  ( RR*  ^m  (
t  X.  t ) )  |  A. x  e.  t  A. y  e.  t  ( (
( x d y )  =  0  <->  x  =  y )  /\  A. z  e.  t  ( x d y )  <_  ( ( z d x ) +e ( z d y ) ) ) }  =  { d  e.  ( RR*  ^m  ( X  X.  X ) )  |  A. x  e.  X  A. y  e.  X  ( ( ( x d y )  =  0  <->  x  =  y )  /\  A. z  e.  X  (
x d y )  <_  ( ( z d x ) +e ( z d y ) ) ) } )
10 df-xmet 18975 . . . . . 6  |-  *Met  =  ( t  e. 
_V  |->  { d  e.  ( RR*  ^m  (
t  X.  t ) )  |  A. x  e.  t  A. y  e.  t  ( (
( x d y )  =  0  <->  x  =  y )  /\  A. z  e.  t  ( x d y )  <_  ( ( z d x ) +e ( z d y ) ) ) } )
11 ovex 6323 . . . . . . 7  |-  ( RR*  ^m  ( X  X.  X
) )  e.  _V
1211rabex 4557 . . . . . 6  |-  { d  e.  ( RR*  ^m  ( X  X.  X ) )  |  A. x  e.  X  A. y  e.  X  ( ( ( x d y )  =  0  <->  x  =  y )  /\  A. z  e.  X  (
x d y )  <_  ( ( z d x ) +e ( z d y ) ) ) }  e.  _V
139, 10, 12fvmpt 5953 . . . . 5  |-  ( X  e.  _V  ->  ( *Met `  X )  =  { d  e.  ( RR*  ^m  ( X  X.  X ) )  |  A. x  e.  X  A. y  e.  X  ( ( ( x d y )  =  0  <->  x  =  y )  /\  A. z  e.  X  (
x d y )  <_  ( ( z d x ) +e ( z d y ) ) ) } )
141, 13syl 17 . . . 4  |-  ( X  e.  A  ->  ( *Met `  X )  =  { d  e.  ( RR*  ^m  ( X  X.  X ) )  |  A. x  e.  X  A. y  e.  X  ( ( ( x d y )  =  0  <->  x  =  y )  /\  A. z  e.  X  (
x d y )  <_  ( ( z d x ) +e ( z d y ) ) ) } )
1514eleq2d 2516 . . 3  |-  ( X  e.  A  ->  ( D  e.  ( *Met `  X )  <->  D  e.  { d  e.  ( RR*  ^m  ( X  X.  X
) )  |  A. x  e.  X  A. y  e.  X  (
( ( x d y )  =  0  <-> 
x  =  y )  /\  A. z  e.  X  ( x d y )  <_  (
( z d x ) +e ( z d y ) ) ) } ) )
16 oveq 6301 . . . . . . . 8  |-  ( d  =  D  ->  (
x d y )  =  ( x D y ) )
1716eqeq1d 2455 . . . . . . 7  |-  ( d  =  D  ->  (
( x d y )  =  0  <->  (
x D y )  =  0 ) )
1817bibi1d 321 . . . . . 6  |-  ( d  =  D  ->  (
( ( x d y )  =  0  <-> 
x  =  y )  <-> 
( ( x D y )  =  0  <-> 
x  =  y ) ) )
19 oveq 6301 . . . . . . . . 9  |-  ( d  =  D  ->  (
z d x )  =  ( z D x ) )
20 oveq 6301 . . . . . . . . 9  |-  ( d  =  D  ->  (
z d y )  =  ( z D y ) )
2119, 20oveq12d 6313 . . . . . . . 8  |-  ( d  =  D  ->  (
( z d x ) +e ( z d y ) )  =  ( ( z D x ) +e ( z D y ) ) )
2216, 21breq12d 4418 . . . . . . 7  |-  ( d  =  D  ->  (
( x d y )  <_  ( (
z d x ) +e ( z d y ) )  <-> 
( x D y )  <_  ( (
z D x ) +e ( z D y ) ) ) )
2322ralbidv 2829 . . . . . 6  |-  ( d  =  D  ->  ( A. z  e.  X  ( x d y )  <_  ( (
z d x ) +e ( z d y ) )  <->  A. z  e.  X  ( x D y )  <_  ( (
z D x ) +e ( z D y ) ) ) )
2418, 23anbi12d 718 . . . . 5  |-  ( d  =  D  ->  (
( ( ( x d y )  =  0  <->  x  =  y
)  /\  A. z  e.  X  ( x
d y )  <_ 
( ( z d x ) +e
( z d y ) ) )  <->  ( (
( x D y )  =  0  <->  x  =  y )  /\  A. z  e.  X  ( x D y )  <_  ( ( z D x ) +e ( z D y ) ) ) ) )
25242ralbidv 2834 . . . 4  |-  ( d  =  D  ->  ( A. x  e.  X  A. y  e.  X  ( ( ( x d y )  =  0  <->  x  =  y
)  /\  A. z  e.  X  ( x
d y )  <_ 
( ( z d x ) +e
( z d y ) ) )  <->  A. x  e.  X  A. y  e.  X  ( (
( x D y )  =  0  <->  x  =  y )  /\  A. z  e.  X  ( x D y )  <_  ( ( z D x ) +e ( z D y ) ) ) ) )
2625elrab 3198 . . 3  |-  ( D  e.  { d  e.  ( RR*  ^m  ( X  X.  X ) )  |  A. x  e.  X  A. y  e.  X  ( ( ( x d y )  =  0  <->  x  =  y )  /\  A. z  e.  X  (
x d y )  <_  ( ( z d x ) +e ( z d y ) ) ) }  <->  ( D  e.  ( RR*  ^m  ( X  X.  X ) )  /\  A. x  e.  X  A. y  e.  X  ( ( ( x D y )  =  0  <->  x  =  y )  /\  A. z  e.  X  (
x D y )  <_  ( ( z D x ) +e ( z D y ) ) ) ) )
2715, 26syl6bb 265 . 2  |-  ( X  e.  A  ->  ( D  e.  ( *Met `  X )  <->  ( D  e.  ( RR*  ^m  ( X  X.  X ) )  /\  A. x  e.  X  A. y  e.  X  ( ( ( x D y )  =  0  <->  x  =  y )  /\  A. z  e.  X  (
x D y )  <_  ( ( z D x ) +e ( z D y ) ) ) ) ) )
28 xrex 11306 . . . 4  |-  RR*  e.  _V
29 sqxpexg 6601 . . . 4  |-  ( X  e.  A  ->  ( X  X.  X )  e. 
_V )
30 elmapg 7490 . . . 4  |-  ( (
RR*  e.  _V  /\  ( X  X.  X )  e. 
_V )  ->  ( D  e.  ( RR*  ^m  ( X  X.  X
) )  <->  D :
( X  X.  X
) --> RR* ) )
3128, 29, 30sylancr 670 . . 3  |-  ( X  e.  A  ->  ( D  e.  ( RR*  ^m  ( X  X.  X
) )  <->  D :
( X  X.  X
) --> RR* ) )
3231anbi1d 712 . 2  |-  ( X  e.  A  ->  (
( D  e.  (
RR*  ^m  ( X  X.  X ) )  /\  A. x  e.  X  A. y  e.  X  (
( ( x D y )  =  0  <-> 
x  =  y )  /\  A. z  e.  X  ( x D y )  <_  (
( z D x ) +e ( z D y ) ) ) )  <->  ( D : ( X  X.  X ) --> RR*  /\  A. x  e.  X  A. y  e.  X  (
( ( x D y )  =  0  <-> 
x  =  y )  /\  A. z  e.  X  ( x D y )  <_  (
( z D x ) +e ( z D y ) ) ) ) ) )
3327, 32bitrd 257 1  |-  ( X  e.  A  ->  ( D  e.  ( *Met `  X )  <->  ( D : ( X  X.  X ) --> RR*  /\  A. x  e.  X  A. y  e.  X  (
( ( x D y )  =  0  <-> 
x  =  y )  /\  A. z  e.  X  ( x D y )  <_  (
( z D x ) +e ( z D y ) ) ) ) ) )
Colors of variables: wff setvar class
Syntax hints:    -> wi 4    <-> wb 188    /\ wa 371    = wceq 1446    e. wcel 1889   A.wral 2739   {crab 2743   _Vcvv 3047   class class class wbr 4405    X. cxp 4835   -->wf 5581   ` cfv 5585  (class class class)co 6295    ^m cmap 7477   0cc0 9544   RR*cxr 9679    <_ cle 9681   +ecxad 11414   *Metcxmt 18967
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1671  ax-4 1684  ax-5 1760  ax-6 1807  ax-7 1853  ax-8 1891  ax-9 1898  ax-10 1917  ax-11 1922  ax-12 1935  ax-13 2093  ax-ext 2433  ax-sep 4528  ax-nul 4537  ax-pow 4584  ax-pr 4642  ax-un 6588  ax-cnex 9600  ax-resscn 9601
This theorem depends on definitions:  df-bi 189  df-or 372  df-an 373  df-3an 988  df-tru 1449  df-ex 1666  df-nf 1670  df-sb 1800  df-eu 2305  df-mo 2306  df-clab 2440  df-cleq 2446  df-clel 2449  df-nfc 2583  df-ne 2626  df-ral 2744  df-rex 2745  df-rab 2748  df-v 3049  df-sbc 3270  df-dif 3409  df-un 3411  df-in 3413  df-ss 3420  df-nul 3734  df-if 3884  df-pw 3955  df-sn 3971  df-pr 3973  df-op 3977  df-uni 4202  df-br 4406  df-opab 4465  df-mpt 4466  df-id 4752  df-xp 4843  df-rel 4844  df-cnv 4845  df-co 4846  df-dm 4847  df-rn 4848  df-iota 5549  df-fun 5587  df-fn 5588  df-f 5589  df-fv 5593  df-ov 6298  df-oprab 6299  df-mpt2 6300  df-map 7479  df-xr 9684  df-xmet 18975
This theorem is referenced by:  isxmetd  21353  xmetf  21356  ismet2  21360  xmeteq0  21365  xmettri2  21367  imasf1oxmet  21402  pstmxmet  28712
  Copyright terms: Public domain W3C validator