let T be non empty TopSpace; :: thesis: for s being Real
for FS2 being Functional_Sequence of [:the carrier of T,the carrier of T:],REAL st ( for n being Element of NAT ex pmet being Function of [:the carrier of T,the carrier of T:], REAL st
( FS2 . n = pmet & pmet is_a_pseudometric_of the carrier of T & ( for pq being Element of [:the carrier of T,the carrier of T:] holds pmet . pq <= s ) & ( for pmet' being RealMap of [:T,T:] st pmet = pmet' holds
pmet' is continuous ) ) ) holds
for pmet being Function of [:the carrier of T,the carrier of T:], REAL st ( for pq being Element of [:the carrier of T,the carrier of T:] holds pmet . pq = Sum (((1 / 2) GeoSeq ) (#) (FS2 # pq)) ) holds
( pmet is_a_pseudometric_of the carrier of T & ( for pmet' being RealMap of [:T,T:] st pmet = pmet' holds
pmet' is continuous ) )

set Geo = (1 / 2) GeoSeq ;
set cT = the carrier of T;
set cTT = the carrier of [:T,T:];
let s be Real; :: thesis: for FS2 being Functional_Sequence of [:the carrier of T,the carrier of T:],REAL st ( for n being Element of NAT ex pmet being Function of [:the carrier of T,the carrier of T:], REAL st
( FS2 . n = pmet & pmet is_a_pseudometric_of the carrier of T & ( for pq being Element of [:the carrier of T,the carrier of T:] holds pmet . pq <= s ) & ( for pmet' being RealMap of [:T,T:] st pmet = pmet' holds
pmet' is continuous ) ) ) holds
for pmet being Function of [:the carrier of T,the carrier of T:], REAL st ( for pq being Element of [:the carrier of T,the carrier of T:] holds pmet . pq = Sum (((1 / 2) GeoSeq ) (#) (FS2 # pq)) ) holds
( pmet is_a_pseudometric_of the carrier of T & ( for pmet' being RealMap of [:T,T:] st pmet = pmet' holds
pmet' is continuous ) )

let FS2 be Functional_Sequence of [:the carrier of T,the carrier of T:],REAL ; :: thesis: ( ( for n being Element of NAT ex pmet being Function of [:the carrier of T,the carrier of T:], REAL st
( FS2 . n = pmet & pmet is_a_pseudometric_of the carrier of T & ( for pq being Element of [:the carrier of T,the carrier of T:] holds pmet . pq <= s ) & ( for pmet' being RealMap of [:T,T:] st pmet = pmet' holds
pmet' is continuous ) ) ) implies for pmet being Function of [:the carrier of T,the carrier of T:], REAL st ( for pq being Element of [:the carrier of T,the carrier of T:] holds pmet . pq = Sum (((1 / 2) GeoSeq ) (#) (FS2 # pq)) ) holds
( pmet is_a_pseudometric_of the carrier of T & ( for pmet' being RealMap of [:T,T:] st pmet = pmet' holds
pmet' is continuous ) ) )

assume A1: for n being Element of NAT ex pmet being Function of [:the carrier of T,the carrier of T:], REAL st
( FS2 . n = pmet & pmet is_a_pseudometric_of the carrier of T & ( for pq being Element of [:the carrier of T,the carrier of T:] holds pmet . pq <= s ) & ( for pmet' being RealMap of [:T,T:] st pmet = pmet' holds
pmet' is continuous ) ) ; :: thesis: for pmet being Function of [:the carrier of T,the carrier of T:], REAL st ( for pq being Element of [:the carrier of T,the carrier of T:] holds pmet . pq = Sum (((1 / 2) GeoSeq ) (#) (FS2 # pq)) ) holds
( pmet is_a_pseudometric_of the carrier of T & ( for pmet' being RealMap of [:T,T:] st pmet = pmet' holds
pmet' is continuous ) )

set SGeo = s (#) ((1 / 2) GeoSeq );
deffunc H1( Nat) -> Element of bool [:[:the carrier of T,the carrier of T:],REAL :] = (((1 / 2) GeoSeq ) . $1) (#) (FS2 . $1);
consider GeoF being Functional_Sequence of [:the carrier of T,the carrier of T:],REAL such that
A2: for n being Nat holds GeoF . n = H1(n) from SEQFUNC:sch 1();
the carrier of [:T,T:] = [:the carrier of T,the carrier of T:] by BORSUK_1:def 5;
then reconsider GeoF' = GeoF as Functional_Sequence of the carrier of [:T,T:],REAL ;
A3: for pq being Element of [:the carrier of T,the carrier of T:]
for k being Element of NAT holds
( 0 <= (GeoF # pq) . k & (GeoF # pq) . k <= (s (#) ((1 / 2) GeoSeq )) . k )
proof
let pq be Element of [:the carrier of T,the carrier of T:]; :: thesis: for k being Element of NAT holds
( 0 <= (GeoF # pq) . k & (GeoF # pq) . k <= (s (#) ((1 / 2) GeoSeq )) . k )

let k be Element of NAT ; :: thesis: ( 0 <= (GeoF # pq) . k & (GeoF # pq) . k <= (s (#) ((1 / 2) GeoSeq )) . k )
consider x, y being set such that
A4: ( x in the carrier of T & y in the carrier of T ) and
A5: [x,y] = pq by ZFMISC_1:def 2;
reconsider x = x, y = y as Point of by A4;
consider pmet1 being Function of [:the carrier of T,the carrier of T:], REAL such that
A6: FS2 . k = pmet1 and
A7: pmet1 is_a_pseudometric_of the carrier of T and
A8: for pq being Element of [:the carrier of T,the carrier of T:] holds pmet1 . pq <= s and
for pmet1' being RealMap of [:T,T:] st pmet1 = pmet1' holds
pmet1' is continuous by A1;
A9: 0 <= pmet1 . x,y by A7, NAGATA_1:29;
dom ((((1 / 2) GeoSeq ) . k) (#) (FS2 . k)) = [:the carrier of T,the carrier of T:] by A6, FUNCT_2:def 1;
then A10: (((1 / 2) GeoSeq ) . k) * ((FS2 . k) . pq) = ((((1 / 2) GeoSeq ) . k) (#) (FS2 . k)) . pq by VALUED_1:def 5
.= (GeoF . k) . pq by A2
.= (GeoF # pq) . k by SEQFUNC:def 11 ;
(1 / 2) |^ k > 0 by NEWTON:102;
then A11: ((1 / 2) GeoSeq ) . k > 0 by PREPOWER:def 1;
then (((1 / 2) GeoSeq ) . k) * (pmet1 . pq) <= (((1 / 2) GeoSeq ) . k) * s by A8, XREAL_1:66;
hence ( 0 <= (GeoF # pq) . k & (GeoF # pq) . k <= (s (#) ((1 / 2) GeoSeq )) . k ) by A6, A5, A10, A9, A11, SEQ_1:13; :: thesis: verum
end;
A12: for n being Element of NAT ex f being RealMap of [:T,T:] st
( GeoF' . n = f & f is continuous & ( for pq' being Point of holds f . pq' >= 0 ) )
proof
let n be Element of NAT ; :: thesis: ex f being RealMap of [:T,T:] st
( GeoF' . n = f & f is continuous & ( for pq' being Point of holds f . pq' >= 0 ) )

consider pmet1 being Function of [:the carrier of T,the carrier of T:], REAL such that
A13: FS2 . n = pmet1 and
pmet1 is_a_pseudometric_of the carrier of T and
for pq being Element of [:the carrier of T,the carrier of T:] holds pmet1 . pq <= s and
A14: for pmet1' being RealMap of [:T,T:] st pmet1 = pmet1' holds
pmet1' is continuous by A1;
the carrier of [:T,T:] = [:the carrier of T,the carrier of T:] by BORSUK_1:def 5;
then reconsider pmet1' = pmet1 as RealMap of [:T,T:] ;
reconsider pR = pmet1' as Function of [:T,T:],R^1 by TOPMETR:24;
pmet1' is continuous by A14;
then pR is continuous by TOPREAL6:83;
then consider fR being Function of [:T,T:],R^1 such that
A15: for pq' being Point of
for rn being real number st pR . pq' = rn holds
fR . pq' = (((1 / 2) GeoSeq ) . n) * rn and
A16: fR is continuous by JGRAPH_2:33;
reconsider f = fR as RealMap of [:T,T:] by TOPMETR:24;
A17: dom f = the carrier of [:T,T:] by FUNCT_2:def 1;
take f ; :: thesis: ( GeoF' . n = f & f is continuous & ( for pq' being Point of holds f . pq' >= 0 ) )
A18: dom pmet1 = [:the carrier of T,the carrier of T:] by FUNCT_2:def 1;
A19: GeoF' . n = (((1 / 2) GeoSeq ) . n) (#) (FS2 . n) by A2;
then A20: dom (FS2 . n) = dom (GeoF' . n) by VALUED_1:def 5;
A21: [:the carrier of T,the carrier of T:] = the carrier of [:T,T:] by BORSUK_1:def 5;
A22: now
let pq' be Point of ; :: thesis: ( pq' in dom (GeoF' . n) implies (GeoF' . n) . pq' = f . pq' )
assume pq' in dom (GeoF' . n) ; :: thesis: (GeoF' . n) . pq' = f . pq'
(GeoF' . n) . pq' = (((1 / 2) GeoSeq ) . n) * (pmet1 . pq') by A13, A19, A20, A18, A21, VALUED_1:def 5;
hence (GeoF' . n) . pq' = f . pq' by A15; :: thesis: verum
end;
now
let pq' be Point of ; :: thesis: f . pq' >= 0
reconsider pq = pq' as Element of [:the carrier of T,the carrier of T:] by BORSUK_1:def 5;
( (GeoF' . n) . pq' = (GeoF # pq) . n & (GeoF # pq) . n >= 0 ) by A3, SEQFUNC:def 11;
hence f . pq' >= 0 by A13, A20, A18, A22; :: thesis: verum
end;
hence ( GeoF' . n = f & f is continuous & ( for pq' being Point of holds f . pq' >= 0 ) ) by A13, A16, A20, A18, A17, A21, A22, PARTFUN1:34, TOPREAL6:83; :: thesis: verum
end;
let pmet be Function of [:the carrier of T,the carrier of T:], REAL ; :: thesis: ( ( for pq being Element of [:the carrier of T,the carrier of T:] holds pmet . pq = Sum (((1 / 2) GeoSeq ) (#) (FS2 # pq)) ) implies ( pmet is_a_pseudometric_of the carrier of T & ( for pmet' being RealMap of [:T,T:] st pmet = pmet' holds
pmet' is continuous ) ) )

assume A23: for pq being Element of [:the carrier of T,the carrier of T:] holds pmet . pq = Sum (((1 / 2) GeoSeq ) (#) (FS2 # pq)) ; :: thesis: ( pmet is_a_pseudometric_of the carrier of T & ( for pmet' being RealMap of [:T,T:] st pmet = pmet' holds
pmet' is continuous ) )

A24: for pq being Element of [:the carrier of T,the carrier of T:] holds pmet . pq = Sum (GeoF # pq)
proof
let pq be Element of [:the carrier of T,the carrier of T:]; :: thesis: pmet . pq = Sum (GeoF # pq)
now
let z be set ; :: thesis: ( z in NAT implies (((1 / 2) GeoSeq ) (#) (FS2 # pq)) . z = (GeoF # pq) . z )
assume z in NAT ; :: thesis: (((1 / 2) GeoSeq ) (#) (FS2 # pq)) . z = (GeoF # pq) . z
then reconsider k = z as Element of NAT ;
ex pmet1 being Function of [:the carrier of T,the carrier of T:], REAL st
( FS2 . k = pmet1 & pmet1 is_a_pseudometric_of the carrier of T & ( for pq being Element of [:the carrier of T,the carrier of T:] holds pmet1 . pq <= s ) & ( for pmet1' being RealMap of [:T,T:] st pmet1 = pmet1' holds
pmet1' is continuous ) ) by A1;
then dom ((((1 / 2) GeoSeq ) . k) (#) (FS2 . k)) = [:the carrier of T,the carrier of T:] by FUNCT_2:def 1;
then (((1 / 2) GeoSeq ) . k) * ((FS2 . k) . pq) = ((((1 / 2) GeoSeq ) . k) (#) (FS2 . k)) . pq by VALUED_1:def 5
.= (GeoF . k) . pq by A2
.= (GeoF # pq) . k by SEQFUNC:def 11 ;
then (GeoF # pq) . k = (((1 / 2) GeoSeq ) . k) * ((FS2 # pq) . k) by SEQFUNC:def 11
.= (((1 / 2) GeoSeq ) (#) (FS2 # pq)) . k by SEQ_1:12 ;
hence (((1 / 2) GeoSeq ) (#) (FS2 # pq)) . z = (GeoF # pq) . z ; :: thesis: verum
end;
then ((1 / 2) GeoSeq ) (#) (FS2 # pq) = GeoF # pq by FUNCT_2:18;
hence pmet . pq = Sum (GeoF # pq) by A23; :: thesis: verum
end;
A25: for n being Element of NAT ex pmet1 being Function of [:the carrier of T,the carrier of T:], REAL st
( GeoF . n = pmet1 & pmet1 is_a_pseudometric_of the carrier of T )
proof
let n be Element of NAT ; :: thesis: ex pmet1 being Function of [:the carrier of T,the carrier of T:], REAL st
( GeoF . n = pmet1 & pmet1 is_a_pseudometric_of the carrier of T )

consider pmet1 being Function of [:the carrier of T,the carrier of T:], REAL such that
A26: FS2 . n = pmet1 and
A27: pmet1 is_a_pseudometric_of the carrier of T and
for pq being Element of [:the carrier of T,the carrier of T:] holds pmet1 . pq <= s and
for pmet1' being RealMap of [:T,T:] st pmet1 = pmet1' holds
pmet1' is continuous by A1;
deffunc H2( Element of the carrier of T, Element of the carrier of T) -> Element of REAL = (((1 / 2) GeoSeq ) . n) * (pmet1 . $1,$2);
consider GF being Function of [:the carrier of T,the carrier of T:], REAL such that
A28: for p, q being Point of holds GF . p,q = H2(p,q) from BINOP_1:sch 4();
now
let a, b, c be Point of ; :: thesis: ( GF . a,a = 0 & GF . a,c <= (GF . a,b) + (GF . c,b) )
(1 / 2) |^ n > 0 by NEWTON:102;
then A29: ((1 / 2) GeoSeq ) . n > 0 by PREPOWER:def 1;
pmet1 . a,c <= (pmet1 . a,b) + (pmet1 . c,b) by A27, NAGATA_1:28;
then (pmet1 . a,c) * (((1 / 2) GeoSeq ) . n) <= ((pmet1 . a,b) + (pmet1 . c,b)) * (((1 / 2) GeoSeq ) . n) by A29, XREAL_1:66;
then A30: GF . a,c <= ((((1 / 2) GeoSeq ) . n) * (pmet1 . a,b)) + ((((1 / 2) GeoSeq ) . n) * (pmet1 . c,b)) by A28;
( GF . a,a = (((1 / 2) GeoSeq ) . n) * (pmet1 . a,a) & pmet1 . a,a = 0 ) by A27, A28, NAGATA_1:28;
hence GF . a,a = 0 ; :: thesis: GF . a,c <= (GF . a,b) + (GF . c,b)
(((1 / 2) GeoSeq ) . n) * (pmet1 . a,b) = GF . a,b by A28;
hence GF . a,c <= (GF . a,b) + (GF . c,b) by A28, A30; :: thesis: verum
end;
then A31: GF is_a_pseudometric_of the carrier of T by NAGATA_1:28;
A32: GeoF . n = (((1 / 2) GeoSeq ) . n) (#) (FS2 . n) by A2;
then A33: dom (FS2 . n) = dom (GeoF . n) by VALUED_1:def 5;
A34: now
let x, y be set ; :: thesis: ( [x,y] in dom (GeoF . n) implies (GeoF . n) . x,y = GF . x,y )
assume A35: [x,y] in dom (GeoF . n) ; :: thesis: (GeoF . n) . x,y = GF . x,y
then reconsider x' = x, y' = y as Point of by ZFMISC_1:106;
GF . x',y' = (((1 / 2) GeoSeq ) . n) * (pmet1 . x',y') by A28;
hence (GeoF . n) . x,y = GF . x,y by A26, A32, A35, VALUED_1:def 5; :: thesis: verum
end;
( dom pmet1 = [:the carrier of T,the carrier of T:] & dom GF = [:the carrier of T,the carrier of T:] ) by FUNCT_2:def 1;
hence ex pmet1 being Function of [:the carrier of T,the carrier of T:], REAL st
( GeoF . n = pmet1 & pmet1 is_a_pseudometric_of the carrier of T ) by A26, A33, A34, A31, BINOP_1:32; :: thesis: verum
end;
1 / 2 < 1 ;
then abs (1 / 2) < 1 by ABSVALUE:def 1;
then A36: (1 / 2) GeoSeq is summable by SERIES_1:28;
A37: for pq being Element of [:the carrier of T,the carrier of T:]
for pq' being Point of st pq = pq' holds
GeoF # pq = GeoF' # pq'
proof
let pq be Element of [:the carrier of T,the carrier of T:]; :: thesis: for pq' being Point of st pq = pq' holds
GeoF # pq = GeoF' # pq'

let pq' be Point of ; :: thesis: ( pq = pq' implies GeoF # pq = GeoF' # pq' )
assume A38: pq = pq' ; :: thesis: GeoF # pq = GeoF' # pq'
now
let x be Element of NAT ; :: thesis: (GeoF # pq) . x = (GeoF' # pq') . x
(GeoF # pq) . x = (GeoF . x) . pq by SEQFUNC:def 11;
hence (GeoF # pq) . x = (GeoF' # pq') . x by A38, SEQFUNC:def 11; :: thesis: verum
end;
hence GeoF # pq = GeoF' # pq' by FUNCT_2:113; :: thesis: verum
end;
A39: ex seq being Real_Sequence st
( seq is summable & ( for n being Element of NAT
for pq' being Point of holds (GeoF' # pq') . n <= seq . n ) )
proof
take s (#) ((1 / 2) GeoSeq ) ; :: thesis: ( s (#) ((1 / 2) GeoSeq ) is summable & ( for n being Element of NAT
for pq' being Point of holds (GeoF' # pq') . n <= (s (#) ((1 / 2) GeoSeq )) . n ) )

thus s (#) ((1 / 2) GeoSeq ) is summable by A36, SERIES_1:13; :: thesis: for n being Element of NAT
for pq' being Point of holds (GeoF' # pq') . n <= (s (#) ((1 / 2) GeoSeq )) . n

now
let n be Element of NAT ; :: thesis: for pq' being Point of holds (GeoF' # pq') . n <= (s (#) ((1 / 2) GeoSeq )) . n
let pq' be Point of ; :: thesis: (GeoF' # pq') . n <= (s (#) ((1 / 2) GeoSeq )) . n
reconsider pq = pq' as Element of [:the carrier of T,the carrier of T:] by BORSUK_1:def 5;
(GeoF' # pq') . n = (GeoF # pq) . n by A37;
hence (GeoF' # pq') . n <= (s (#) ((1 / 2) GeoSeq )) . n by A3; :: thesis: verum
end;
hence for n being Element of NAT
for pq' being Point of holds (GeoF' # pq') . n <= (s (#) ((1 / 2) GeoSeq )) . n ; :: thesis: verum
end;
A40: now
let pmet1' be RealMap of [:T,T:]; :: thesis: ( pmet = pmet1' implies pmet1' is continuous )
assume A41: pmet = pmet1' ; :: thesis: pmet1' is continuous
for pq' being Point of holds pmet1' . pq' = Sum (GeoF' # pq')
proof
let pq' be Point of ; :: thesis: pmet1' . pq' = Sum (GeoF' # pq')
reconsider pq = pq' as Element of [:the carrier of T,the carrier of T:] by BORSUK_1:def 5;
pmet . pq = Sum (GeoF # pq) by A24;
hence pmet1' . pq' = Sum (GeoF' # pq') by A37, A41; :: thesis: verum
end;
hence pmet1' is continuous by A12, A39, Th14; :: thesis: verum
end;
for pq being Element of [:the carrier of T,the carrier of T:] holds GeoF # pq is summable
proof
let pq be Element of [:the carrier of T,the carrier of T:]; :: thesis: GeoF # pq is summable
for k being Element of NAT holds
( 0 <= (GeoF # pq) . k & (GeoF # pq) . k <= (s (#) ((1 / 2) GeoSeq )) . k & s (#) ((1 / 2) GeoSeq ) is summable ) by A3, A36, SERIES_1:13;
hence GeoF # pq is summable by SERIES_1:24; :: thesis: verum
end;
hence ( pmet is_a_pseudometric_of the carrier of T & ( for pmet' being RealMap of [:T,T:] st pmet = pmet' holds
pmet' is continuous ) ) by A25, A24, A40, Th11; :: thesis: verum