| Step |
Hyp |
Ref |
Expression |
| 1 |
|
dscmet.1 |
|- D = ( x e. X , y e. X |-> if ( x = y , 0 , 1 ) ) |
| 2 |
|
0re |
|- 0 e. RR |
| 3 |
|
1re |
|- 1 e. RR |
| 4 |
2 3
|
ifcli |
|- if ( x = y , 0 , 1 ) e. RR |
| 5 |
4
|
rgen2w |
|- A. x e. X A. y e. X if ( x = y , 0 , 1 ) e. RR |
| 6 |
1
|
fmpo |
|- ( A. x e. X A. y e. X if ( x = y , 0 , 1 ) e. RR <-> D : ( X X. X ) --> RR ) |
| 7 |
5 6
|
mpbi |
|- D : ( X X. X ) --> RR |
| 8 |
|
equequ1 |
|- ( x = w -> ( x = y <-> w = y ) ) |
| 9 |
8
|
ifbid |
|- ( x = w -> if ( x = y , 0 , 1 ) = if ( w = y , 0 , 1 ) ) |
| 10 |
|
equequ2 |
|- ( y = v -> ( w = y <-> w = v ) ) |
| 11 |
10
|
ifbid |
|- ( y = v -> if ( w = y , 0 , 1 ) = if ( w = v , 0 , 1 ) ) |
| 12 |
|
0nn0 |
|- 0 e. NN0 |
| 13 |
|
1nn0 |
|- 1 e. NN0 |
| 14 |
12 13
|
ifcli |
|- if ( w = v , 0 , 1 ) e. NN0 |
| 15 |
14
|
elexi |
|- if ( w = v , 0 , 1 ) e. _V |
| 16 |
9 11 1 15
|
ovmpo |
|- ( ( w e. X /\ v e. X ) -> ( w D v ) = if ( w = v , 0 , 1 ) ) |
| 17 |
16
|
eqeq1d |
|- ( ( w e. X /\ v e. X ) -> ( ( w D v ) = 0 <-> if ( w = v , 0 , 1 ) = 0 ) ) |
| 18 |
|
iffalse |
|- ( -. w = v -> if ( w = v , 0 , 1 ) = 1 ) |
| 19 |
|
ax-1ne0 |
|- 1 =/= 0 |
| 20 |
19
|
a1i |
|- ( -. w = v -> 1 =/= 0 ) |
| 21 |
18 20
|
eqnetrd |
|- ( -. w = v -> if ( w = v , 0 , 1 ) =/= 0 ) |
| 22 |
21
|
neneqd |
|- ( -. w = v -> -. if ( w = v , 0 , 1 ) = 0 ) |
| 23 |
22
|
con4i |
|- ( if ( w = v , 0 , 1 ) = 0 -> w = v ) |
| 24 |
|
iftrue |
|- ( w = v -> if ( w = v , 0 , 1 ) = 0 ) |
| 25 |
23 24
|
impbii |
|- ( if ( w = v , 0 , 1 ) = 0 <-> w = v ) |
| 26 |
17 25
|
bitrdi |
|- ( ( w e. X /\ v e. X ) -> ( ( w D v ) = 0 <-> w = v ) ) |
| 27 |
12 13
|
ifcli |
|- if ( u = w , 0 , 1 ) e. NN0 |
| 28 |
12 13
|
ifcli |
|- if ( u = v , 0 , 1 ) e. NN0 |
| 29 |
27 28
|
nn0addcli |
|- ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) e. NN0 |
| 30 |
|
elnn0 |
|- ( ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) e. NN0 <-> ( ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) e. NN \/ ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) = 0 ) ) |
| 31 |
29 30
|
mpbi |
|- ( ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) e. NN \/ ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) = 0 ) |
| 32 |
|
breq1 |
|- ( 0 = if ( w = v , 0 , 1 ) -> ( 0 <_ 1 <-> if ( w = v , 0 , 1 ) <_ 1 ) ) |
| 33 |
|
breq1 |
|- ( 1 = if ( w = v , 0 , 1 ) -> ( 1 <_ 1 <-> if ( w = v , 0 , 1 ) <_ 1 ) ) |
| 34 |
|
0le1 |
|- 0 <_ 1 |
| 35 |
3
|
leidi |
|- 1 <_ 1 |
| 36 |
32 33 34 35
|
keephyp |
|- if ( w = v , 0 , 1 ) <_ 1 |
| 37 |
|
nnge1 |
|- ( ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) e. NN -> 1 <_ ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) ) |
| 38 |
14
|
nn0rei |
|- if ( w = v , 0 , 1 ) e. RR |
| 39 |
29
|
nn0rei |
|- ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) e. RR |
| 40 |
38 3 39
|
letri |
|- ( ( if ( w = v , 0 , 1 ) <_ 1 /\ 1 <_ ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) ) -> if ( w = v , 0 , 1 ) <_ ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) ) |
| 41 |
36 37 40
|
sylancr |
|- ( ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) e. NN -> if ( w = v , 0 , 1 ) <_ ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) ) |
| 42 |
27
|
nn0ge0i |
|- 0 <_ if ( u = w , 0 , 1 ) |
| 43 |
28
|
nn0ge0i |
|- 0 <_ if ( u = v , 0 , 1 ) |
| 44 |
27
|
nn0rei |
|- if ( u = w , 0 , 1 ) e. RR |
| 45 |
28
|
nn0rei |
|- if ( u = v , 0 , 1 ) e. RR |
| 46 |
44 45
|
add20i |
|- ( ( 0 <_ if ( u = w , 0 , 1 ) /\ 0 <_ if ( u = v , 0 , 1 ) ) -> ( ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) = 0 <-> ( if ( u = w , 0 , 1 ) = 0 /\ if ( u = v , 0 , 1 ) = 0 ) ) ) |
| 47 |
42 43 46
|
mp2an |
|- ( ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) = 0 <-> ( if ( u = w , 0 , 1 ) = 0 /\ if ( u = v , 0 , 1 ) = 0 ) ) |
| 48 |
|
equequ2 |
|- ( v = w -> ( u = v <-> u = w ) ) |
| 49 |
48
|
ifbid |
|- ( v = w -> if ( u = v , 0 , 1 ) = if ( u = w , 0 , 1 ) ) |
| 50 |
49
|
eqeq1d |
|- ( v = w -> ( if ( u = v , 0 , 1 ) = 0 <-> if ( u = w , 0 , 1 ) = 0 ) ) |
| 51 |
50 48
|
bibi12d |
|- ( v = w -> ( ( if ( u = v , 0 , 1 ) = 0 <-> u = v ) <-> ( if ( u = w , 0 , 1 ) = 0 <-> u = w ) ) ) |
| 52 |
|
equequ1 |
|- ( w = u -> ( w = v <-> u = v ) ) |
| 53 |
52
|
ifbid |
|- ( w = u -> if ( w = v , 0 , 1 ) = if ( u = v , 0 , 1 ) ) |
| 54 |
53
|
eqeq1d |
|- ( w = u -> ( if ( w = v , 0 , 1 ) = 0 <-> if ( u = v , 0 , 1 ) = 0 ) ) |
| 55 |
54 52
|
bibi12d |
|- ( w = u -> ( ( if ( w = v , 0 , 1 ) = 0 <-> w = v ) <-> ( if ( u = v , 0 , 1 ) = 0 <-> u = v ) ) ) |
| 56 |
55 25
|
chvarvv |
|- ( if ( u = v , 0 , 1 ) = 0 <-> u = v ) |
| 57 |
51 56
|
chvarvv |
|- ( if ( u = w , 0 , 1 ) = 0 <-> u = w ) |
| 58 |
|
eqtr2 |
|- ( ( u = w /\ u = v ) -> w = v ) |
| 59 |
57 56 58
|
syl2anb |
|- ( ( if ( u = w , 0 , 1 ) = 0 /\ if ( u = v , 0 , 1 ) = 0 ) -> w = v ) |
| 60 |
59
|
iftrued |
|- ( ( if ( u = w , 0 , 1 ) = 0 /\ if ( u = v , 0 , 1 ) = 0 ) -> if ( w = v , 0 , 1 ) = 0 ) |
| 61 |
2
|
leidi |
|- 0 <_ 0 |
| 62 |
60 61
|
eqbrtrdi |
|- ( ( if ( u = w , 0 , 1 ) = 0 /\ if ( u = v , 0 , 1 ) = 0 ) -> if ( w = v , 0 , 1 ) <_ 0 ) |
| 63 |
47 62
|
sylbi |
|- ( ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) = 0 -> if ( w = v , 0 , 1 ) <_ 0 ) |
| 64 |
|
id |
|- ( ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) = 0 -> ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) = 0 ) |
| 65 |
63 64
|
breqtrrd |
|- ( ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) = 0 -> if ( w = v , 0 , 1 ) <_ ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) ) |
| 66 |
41 65
|
jaoi |
|- ( ( ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) e. NN \/ ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) = 0 ) -> if ( w = v , 0 , 1 ) <_ ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) ) |
| 67 |
31 66
|
mp1i |
|- ( ( u e. X /\ ( w e. X /\ v e. X ) ) -> if ( w = v , 0 , 1 ) <_ ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) ) |
| 68 |
16
|
adantl |
|- ( ( u e. X /\ ( w e. X /\ v e. X ) ) -> ( w D v ) = if ( w = v , 0 , 1 ) ) |
| 69 |
|
eqeq12 |
|- ( ( x = u /\ y = w ) -> ( x = y <-> u = w ) ) |
| 70 |
69
|
ifbid |
|- ( ( x = u /\ y = w ) -> if ( x = y , 0 , 1 ) = if ( u = w , 0 , 1 ) ) |
| 71 |
27
|
elexi |
|- if ( u = w , 0 , 1 ) e. _V |
| 72 |
70 1 71
|
ovmpoa |
|- ( ( u e. X /\ w e. X ) -> ( u D w ) = if ( u = w , 0 , 1 ) ) |
| 73 |
72
|
adantrr |
|- ( ( u e. X /\ ( w e. X /\ v e. X ) ) -> ( u D w ) = if ( u = w , 0 , 1 ) ) |
| 74 |
|
eqeq12 |
|- ( ( x = u /\ y = v ) -> ( x = y <-> u = v ) ) |
| 75 |
74
|
ifbid |
|- ( ( x = u /\ y = v ) -> if ( x = y , 0 , 1 ) = if ( u = v , 0 , 1 ) ) |
| 76 |
28
|
elexi |
|- if ( u = v , 0 , 1 ) e. _V |
| 77 |
75 1 76
|
ovmpoa |
|- ( ( u e. X /\ v e. X ) -> ( u D v ) = if ( u = v , 0 , 1 ) ) |
| 78 |
77
|
adantrl |
|- ( ( u e. X /\ ( w e. X /\ v e. X ) ) -> ( u D v ) = if ( u = v , 0 , 1 ) ) |
| 79 |
73 78
|
oveq12d |
|- ( ( u e. X /\ ( w e. X /\ v e. X ) ) -> ( ( u D w ) + ( u D v ) ) = ( if ( u = w , 0 , 1 ) + if ( u = v , 0 , 1 ) ) ) |
| 80 |
67 68 79
|
3brtr4d |
|- ( ( u e. X /\ ( w e. X /\ v e. X ) ) -> ( w D v ) <_ ( ( u D w ) + ( u D v ) ) ) |
| 81 |
80
|
expcom |
|- ( ( w e. X /\ v e. X ) -> ( u e. X -> ( w D v ) <_ ( ( u D w ) + ( u D v ) ) ) ) |
| 82 |
81
|
ralrimiv |
|- ( ( w e. X /\ v e. X ) -> A. u e. X ( w D v ) <_ ( ( u D w ) + ( u D v ) ) ) |
| 83 |
26 82
|
jca |
|- ( ( w e. X /\ v e. X ) -> ( ( ( w D v ) = 0 <-> w = v ) /\ A. u e. X ( w D v ) <_ ( ( u D w ) + ( u D v ) ) ) ) |
| 84 |
83
|
rgen2 |
|- A. w e. X A. v e. X ( ( ( w D v ) = 0 <-> w = v ) /\ A. u e. X ( w D v ) <_ ( ( u D w ) + ( u D v ) ) ) |
| 85 |
7 84
|
pm3.2i |
|- ( D : ( X X. X ) --> RR /\ A. w e. X A. v e. X ( ( ( w D v ) = 0 <-> w = v ) /\ A. u e. X ( w D v ) <_ ( ( u D w ) + ( u D v ) ) ) ) |
| 86 |
|
ismet |
|- ( X e. V -> ( D e. ( Met ` X ) <-> ( D : ( X X. X ) --> RR /\ A. w e. X A. v e. X ( ( ( w D v ) = 0 <-> w = v ) /\ A. u e. X ( w D v ) <_ ( ( u D w ) + ( u D v ) ) ) ) ) ) |
| 87 |
85 86
|
mpbiri |
|- ( X e. V -> D e. ( Met ` X ) ) |