let x, y be Element of [:REAL,REAL:]; :: thesis: ( Eukl_dist2 . (x,y) = 0 iff x = y )

reconsider x1 = x `1 , x2 = x `2 , y1 = y `1 , y2 = y `2 as Element of REAL ;

A1: ( x = [x1,x2] & y = [y1,y2] ) ;

thus ( Eukl_dist2 . (x,y) = 0 implies x = y ) :: thesis: ( x = y implies Eukl_dist2 . (x,y) = 0 )

then A5: ( (real_dist . (x1,y1)) ^2 = 0 ^2 & (real_dist . (x2,y2)) ^2 = 0 ^2 ) by METRIC_1:8;

Eukl_dist2 . (x,y) = sqrt (((real_dist . (x1,y1)) ^2) + ((real_dist . (x2,y2)) ^2)) by A1, Def18

.= 0 by A5, Lm1 ;

hence Eukl_dist2 . (x,y) = 0 ; :: thesis: verum

reconsider x1 = x `1 , x2 = x `2 , y1 = y `1 , y2 = y `2 as Element of REAL ;

A1: ( x = [x1,x2] & y = [y1,y2] ) ;

thus ( Eukl_dist2 . (x,y) = 0 implies x = y ) :: thesis: ( x = y implies Eukl_dist2 . (x,y) = 0 )

proof

assume
x = y
; :: thesis: Eukl_dist2 . (x,y) = 0
set d2 = real_dist . (x2,y2);

set d1 = real_dist . (x1,y1);

assume Eukl_dist2 . (x,y) = 0 ; :: thesis: x = y

then A2: sqrt (((real_dist . (x1,y1)) ^2) + ((real_dist . (x2,y2)) ^2)) = 0 by A1, Def18;

A3: ( 0 <= (real_dist . (x1,y1)) ^2 & 0 <= (real_dist . (x2,y2)) ^2 ) by XREAL_1:63;

then real_dist . (x1,y1) = 0 by A2, Lm1;

then A4: x1 = y1 by METRIC_1:8;

real_dist . (x2,y2) = 0 by A2, A3, Lm1;

hence x = y by A1, A4, METRIC_1:8; :: thesis: verum

end;set d1 = real_dist . (x1,y1);

assume Eukl_dist2 . (x,y) = 0 ; :: thesis: x = y

then A2: sqrt (((real_dist . (x1,y1)) ^2) + ((real_dist . (x2,y2)) ^2)) = 0 by A1, Def18;

A3: ( 0 <= (real_dist . (x1,y1)) ^2 & 0 <= (real_dist . (x2,y2)) ^2 ) by XREAL_1:63;

then real_dist . (x1,y1) = 0 by A2, Lm1;

then A4: x1 = y1 by METRIC_1:8;

real_dist . (x2,y2) = 0 by A2, A3, Lm1;

hence x = y by A1, A4, METRIC_1:8; :: thesis: verum

then A5: ( (real_dist . (x1,y1)) ^2 = 0 ^2 & (real_dist . (x2,y2)) ^2 = 0 ^2 ) by METRIC_1:8;

Eukl_dist2 . (x,y) = sqrt (((real_dist . (x1,y1)) ^2) + ((real_dist . (x2,y2)) ^2)) by A1, Def18

.= 0 by A5, Lm1 ;

hence Eukl_dist2 . (x,y) = 0 ; :: thesis: verum