Metamath Proof Explorer


Theorem rrnmet

Description: Euclidean space is a metric space. (Contributed by Jeff Madsen, 2-Sep-2009) (Proof shortened by Mario Carneiro, 5-Jun-2014)

Ref Expression
Hypothesis rrnval.1 X=I
Assertion rrnmet IFinnIMetX

Proof

Step Hyp Ref Expression
1 rrnval.1 X=I
2 simpl IFinxXyXIFin
3 simprl IFinxXyXxX
4 3 1 eleqtrdi IFinxXyXxI
5 elmapi xIx:I
6 4 5 syl IFinxXyXx:I
7 6 ffvelcdmda IFinxXyXkIxk
8 simprr IFinxXyXyX
9 8 1 eleqtrdi IFinxXyXyI
10 elmapi yIy:I
11 9 10 syl IFinxXyXy:I
12 11 ffvelcdmda IFinxXyXkIyk
13 7 12 resubcld IFinxXyXkIxkyk
14 13 resqcld IFinxXyXkIxkyk2
15 2 14 fsumrecl IFinxXyXkIxkyk2
16 13 sqge0d IFinxXyXkI0xkyk2
17 2 14 16 fsumge0 IFinxXyX0kIxkyk2
18 15 17 resqrtcld IFinxXyXkIxkyk2
19 18 ralrimivva IFinxXyXkIxkyk2
20 eqid xX,yXkIxkyk2=xX,yXkIxkyk2
21 20 fmpo xXyXkIxkyk2xX,yXkIxkyk2:X×X
22 19 21 sylib IFinxX,yXkIxkyk2:X×X
23 1 rrnval IFinnI=xX,yXkIxkyk2
24 23 feq1d IFinnI:X×XxX,yXkIxkyk2:X×X
25 22 24 mpbird IFinnI:X×X
26 sqrt00 kIxkyk20kIxkyk2kIxkyk2=0kIxkyk2=0
27 15 17 26 syl2anc IFinxXyXkIxkyk2=0kIxkyk2=0
28 2 14 16 fsum00 IFinxXyXkIxkyk2=0kIxkyk2=0
29 27 28 bitrd IFinxXyXkIxkyk2=0kIxkyk2=0
30 13 recnd IFinxXyXkIxkyk
31 sqeq0 xkykxkyk2=0xkyk=0
32 30 31 syl IFinxXyXkIxkyk2=0xkyk=0
33 7 recnd IFinxXyXkIxk
34 12 recnd IFinxXyXkIyk
35 33 34 subeq0ad IFinxXyXkIxkyk=0xk=yk
36 32 35 bitrd IFinxXyXkIxkyk2=0xk=yk
37 36 ralbidva IFinxXyXkIxkyk2=0kIxk=yk
38 29 37 bitrd IFinxXyXkIxkyk2=0kIxk=yk
39 1 rrnmval IFinxXyXxnIy=kIxkyk2
40 39 3expb IFinxXyXxnIy=kIxkyk2
41 40 eqeq1d IFinxXyXxnIy=0kIxkyk2=0
42 6 ffnd IFinxXyXxFnI
43 11 ffnd IFinxXyXyFnI
44 eqfnfv xFnIyFnIx=ykIxk=yk
45 42 43 44 syl2anc IFinxXyXx=ykIxk=yk
46 38 41 45 3bitr4d IFinxXyXxnIy=0x=y
47 simpll IFinxXyXzXIFin
48 7 adantlr IFinxXyXzXkIxk
49 simpr IFinxXyXzXzX
50 49 1 eleqtrdi IFinxXyXzXzI
51 elmapi zIz:I
52 50 51 syl IFinxXyXzXz:I
53 52 ffvelcdmda IFinxXyXzXkIzk
54 48 53 resubcld IFinxXyXzXkIxkzk
55 12 adantlr IFinxXyXzXkIyk
56 53 55 resubcld IFinxXyXzXkIzkyk
57 47 54 56 trirn IFinxXyXzXkIxkzk+zk-yk2kIxkzk2+kIzkyk2
58 33 adantlr IFinxXyXzXkIxk
59 53 recnd IFinxXyXzXkIzk
60 34 adantlr IFinxXyXzXkIyk
61 58 59 60 npncand IFinxXyXzXkIxkzk+zk-yk=xkyk
62 61 oveq1d IFinxXyXzXkIxkzk+zk-yk2=xkyk2
63 62 sumeq2dv IFinxXyXzXkIxkzk+zk-yk2=kIxkyk2
64 63 fveq2d IFinxXyXzXkIxkzk+zk-yk2=kIxkyk2
65 sqsubswap xkzkxkzk2=zkxk2
66 58 59 65 syl2anc IFinxXyXzXkIxkzk2=zkxk2
67 66 sumeq2dv IFinxXyXzXkIxkzk2=kIzkxk2
68 67 fveq2d IFinxXyXzXkIxkzk2=kIzkxk2
69 68 oveq1d IFinxXyXzXkIxkzk2+kIzkyk2=kIzkxk2+kIzkyk2
70 57 64 69 3brtr3d IFinxXyXzXkIxkyk2kIzkxk2+kIzkyk2
71 40 adantr IFinxXyXzXxnIy=kIxkyk2
72 1 rrnmval IFinzXxXznIx=kIzkxk2
73 72 3adant3r IFinzXxXyXznIx=kIzkxk2
74 1 rrnmval IFinzXyXznIy=kIzkyk2
75 74 3adant3l IFinzXxXyXznIy=kIzkyk2
76 73 75 oveq12d IFinzXxXyXznIx+znIy=kIzkxk2+kIzkyk2
77 76 3expa IFinzXxXyXznIx+znIy=kIzkxk2+kIzkyk2
78 77 an32s IFinxXyXzXznIx+znIy=kIzkxk2+kIzkyk2
79 70 71 78 3brtr4d IFinxXyXzXxnIyznIx+znIy
80 79 ralrimiva IFinxXyXzXxnIyznIx+znIy
81 46 80 jca IFinxXyXxnIy=0x=yzXxnIyznIx+znIy
82 81 ralrimivva IFinxXyXxnIy=0x=yzXxnIyznIx+znIy
83 ovex IV
84 1 83 eqeltri XV
85 ismet XVnIMetXnI:X×XxXyXxnIy=0x=yzXxnIyznIx+znIy
86 84 85 ax-mp nIMetXnI:X×XxXyXxnIy=0x=yzXxnIyznIx+znIy
87 25 82 86 sylanbrc IFinnIMetX