:: Banach Space of Bounded Real Sequences
:: by Yasumasa Suzuki
::
:: Received January 6, 2004
:: Copyright (c) 2004-2021 Association of Mizar Users

Lm1: for rseq being Real_Sequence
for K being Real st ( for n being Nat holds rseq . n <= K ) holds
upper_bound (rng rseq) <= K

proof end;

Lm2: for rseq being Real_Sequence st rseq is bounded holds
for n being Nat holds rseq . n <= upper_bound (rng rseq)

proof end;

definition
func the_set_of_BoundedRealSequences -> Subset of Linear_Space_of_RealSequences means :Def1: :: RSSPACE4:def 1
for x being object holds
( x in it iff ( x in the_set_of_RealSequences & seq_id x is bounded ) );
existence
ex b1 being Subset of Linear_Space_of_RealSequences st
for x being object holds
( x in b1 iff ( x in the_set_of_RealSequences & seq_id x is bounded ) )
proof end;
uniqueness
for b1, b2 being Subset of Linear_Space_of_RealSequences st ( for x being object holds
( x in b1 iff ( x in the_set_of_RealSequences & seq_id x is bounded ) ) ) & ( for x being object holds
( x in b2 iff ( x in the_set_of_RealSequences & seq_id x is bounded ) ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def1 defines the_set_of_BoundedRealSequences RSSPACE4:def 1 :
for b1 being Subset of Linear_Space_of_RealSequences holds
( b1 = the_set_of_BoundedRealSequences iff for x being object holds
( x in b1 iff ( x in the_set_of_RealSequences & seq_id x is bounded ) ) );

registration
coherence
proof end;
coherence
proof end;
end;

Lm3:

Lm4:
;

definition
func linfty_norm -> Function of the_set_of_BoundedRealSequences,REAL means :Def2: :: RSSPACE4:def 2
for x being object st x in the_set_of_BoundedRealSequences holds
it . x = upper_bound (rng (abs ()));
existence
ex b1 being Function of the_set_of_BoundedRealSequences,REAL st
for x being object st x in the_set_of_BoundedRealSequences holds
b1 . x = upper_bound (rng (abs ()))
proof end;
uniqueness
for b1, b2 being Function of the_set_of_BoundedRealSequences,REAL st ( for x being object st x in the_set_of_BoundedRealSequences holds
b1 . x = upper_bound (rng (abs ())) ) & ( for x being object st x in the_set_of_BoundedRealSequences holds
b2 . x = upper_bound (rng (abs ())) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def2 defines linfty_norm RSSPACE4:def 2 :
for b1 being Function of the_set_of_BoundedRealSequences,REAL holds
( b1 = linfty_norm iff for x being object st x in the_set_of_BoundedRealSequences holds
b1 . x = upper_bound (rng (abs ())) );

Lm5: for rseq being Real_Sequence st ( for n being Nat holds rseq . n = In (0,REAL) ) holds
( rseq is bounded & upper_bound (rng (abs rseq)) = 0 )

proof end;

Lm6: for rseq being Real_Sequence st rseq is bounded & upper_bound (rng (abs rseq)) = 0 holds
for n being Nat holds rseq . n = 0

proof end;

for rseq being Real_Sequence holds
( ( rseq is bounded & upper_bound (rng (abs rseq)) = 0 ) iff for n being Nat holds rseq . n = 0 ) by ;

theorem Th2: :: RSSPACE4:2
( the carrier of linfty_Space = the_set_of_BoundedRealSequences & ( for x being set holds
( x is VECTOR of linfty_Space iff ( x is Real_Sequence & seq_id x is bounded ) ) ) & 0. linfty_Space = Zeroseq & ( for u being VECTOR of linfty_Space holds u = seq_id u ) & ( for u, v being VECTOR of linfty_Space holds u + v = () + () ) & ( for r being Real
for u being VECTOR of linfty_Space holds r * u = r (#) () ) & ( for u being VECTOR of linfty_Space holds
( - u = - () & seq_id (- u) = - () ) ) & ( for u, v being VECTOR of linfty_Space holds u - v = () - () ) & ( for v being VECTOR of linfty_Space holds seq_id v is bounded ) & ( for v being VECTOR of linfty_Space holds = upper_bound (rng (abs ())) ) )
proof end;

theorem Th3: :: RSSPACE4:3
for x, y being Point of linfty_Space
for a being Real holds
( ( = 0 implies x = 0. linfty_Space ) & ( x = 0. linfty_Space implies = 0 ) & 0 <= & ||.(x + y).|| <= + & ||.(a * x).|| = |.a.| * )
proof end;

registration
coherence by Th3;
end;

for vseq being sequence of linfty_Space st vseq is Cauchy_sequence_by_Norm holds
vseq is convergent
proof end;

definition
let X be non empty set ;
let Y be RealNormSpace;
let IT be Function of X, the carrier of Y;
attr IT is bounded means :Def4: :: RSSPACE4:def 4
ex K being Real st
( 0 <= K & ( for x being Element of X holds ||.(IT . x).|| <= K ) );
end;

:: deftheorem Def4 defines bounded RSSPACE4:def 4 :
for X being non empty set
for Y being RealNormSpace
for IT being Function of X, the carrier of Y holds
( IT is bounded iff ex K being Real st
( 0 <= K & ( for x being Element of X holds ||.(IT . x).|| <= K ) ) );

theorem Th5: :: RSSPACE4:5
for X being non empty set
for Y being RealNormSpace
for f being Function of X, the carrier of Y st ( for x being Element of X holds f . x = 0. Y ) holds
f is bounded
proof end;

registration
let X be non empty set ;
let Y be RealNormSpace;
cluster Relation-like X -defined the carrier of Y -valued non empty Function-like V26(X) quasi_total bounded for Element of bool [:X, the carrier of Y:];
existence
ex b1 being Function of X, the carrier of Y st b1 is bounded
proof end;
end;

definition
let X be non empty set ;
let Y be RealNormSpace;
func BoundedFunctions (X,Y) -> Subset of (RealVectSpace (X,Y)) means :Def5: :: RSSPACE4:def 5
for x being set holds
( x in it iff x is bounded Function of X, the carrier of Y );
existence
ex b1 being Subset of (RealVectSpace (X,Y)) st
for x being set holds
( x in b1 iff x is bounded Function of X, the carrier of Y )
proof end;
uniqueness
for b1, b2 being Subset of (RealVectSpace (X,Y)) st ( for x being set holds
( x in b1 iff x is bounded Function of X, the carrier of Y ) ) & ( for x being set holds
( x in b2 iff x is bounded Function of X, the carrier of Y ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def5 defines BoundedFunctions RSSPACE4:def 5 :
for X being non empty set
for Y being RealNormSpace
for b3 being Subset of (RealVectSpace (X,Y)) holds
( b3 = BoundedFunctions (X,Y) iff for x being set holds
( x in b3 iff x is bounded Function of X, the carrier of Y ) );

registration
let X be non empty set ;
let Y be RealNormSpace;
cluster BoundedFunctions (X,Y) -> non empty ;
coherence
not BoundedFunctions (X,Y) is empty
proof end;
end;

theorem Th6: :: RSSPACE4:6
for X being non empty set
for Y being RealNormSpace holds BoundedFunctions (X,Y) is linearly-closed
proof end;

for X being non empty set
for Y being RealNormSpace holds RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #) is Subspace of RealVectSpace (X,Y) by ;

registration
let X be non empty set ;
let Y be RealNormSpace;
cluster RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #) -> right_complementable Abelian add-associative right_zeroed vector-distributive scalar-distributive scalar-associative scalar-unital ;
coherence
( RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #) is Abelian & RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #) is add-associative & RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #) is right_zeroed & RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #) is right_complementable & RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #) is vector-distributive & RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #) is scalar-distributive & RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #) is scalar-associative & RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #) is scalar-unital )
by ;
end;

definition
let X be non empty set ;
let Y be RealNormSpace;
func R_VectorSpace_of_BoundedFunctions (X,Y) -> RealLinearSpace equals :: RSSPACE4:def 6
RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #);
coherence
RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #) is RealLinearSpace
;
end;

:: deftheorem defines R_VectorSpace_of_BoundedFunctions RSSPACE4:def 6 :
for X being non empty set
for Y being RealNormSpace holds R_VectorSpace_of_BoundedFunctions (X,Y) = RLSStruct(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))) #);

registration
let X be non empty set ;
let Y be RealNormSpace;
coherence ;
end;

theorem Th8: :: RSSPACE4:8
for X being non empty set
for Y being RealNormSpace
for f, g, h being VECTOR of
for f9, g9, h9 being bounded Function of X, the carrier of Y st f9 = f & g9 = g & h9 = h holds
( h = f + g iff for x being Element of X holds h9 . x = (f9 . x) + (g9 . x) )
proof end;

theorem Th9: :: RSSPACE4:9
for X being non empty set
for Y being RealNormSpace
for f, h being VECTOR of
for f9, h9 being bounded Function of X, the carrier of Y st f9 = f & h9 = h holds
for a being Real holds
( h = a * f iff for x being Element of X holds h9 . x = a * (f9 . x) )
proof end;

theorem Th10: :: RSSPACE4:10
for X being non empty set
for Y being RealNormSpace holds 0. = X --> (0. Y)
proof end;

definition
let X be non empty set ;
let Y be RealNormSpace;
let f be object ;
assume A1: f in BoundedFunctions (X,Y) ;
func modetrans (f,X,Y) -> bounded Function of X, the carrier of Y equals :Def7: :: RSSPACE4:def 7
f;
coherence
f is bounded Function of X, the carrier of Y
by ;
end;

:: deftheorem Def7 defines modetrans RSSPACE4:def 7 :
for X being non empty set
for Y being RealNormSpace
for f being object st f in BoundedFunctions (X,Y) holds
modetrans (f,X,Y) = f;

definition
let X be non empty set ;
let Y be RealNormSpace;
let u be Function of X, the carrier of Y;
func PreNorms u -> non empty Subset of REAL equals :: RSSPACE4:def 8
{ ||.(u . t).|| where t is Element of X : verum } ;
coherence
{ ||.(u . t).|| where t is Element of X : verum } is non empty Subset of REAL
proof end;
end;

:: deftheorem defines PreNorms RSSPACE4:def 8 :
for X being non empty set
for Y being RealNormSpace
for u being Function of X, the carrier of Y holds PreNorms u = { ||.(u . t).|| where t is Element of X : verum } ;

theorem Th11: :: RSSPACE4:11
for X being non empty set
for Y being RealNormSpace
for g being bounded Function of X, the carrier of Y holds PreNorms g is bounded_above
proof end;

for X being non empty set
for Y being RealNormSpace
for g being Function of X, the carrier of Y holds
( g is bounded iff PreNorms g is bounded_above )
proof end;

definition
let X be non empty set ;
let Y be RealNormSpace;
func BoundedFunctionsNorm (X,Y) -> Function of (BoundedFunctions (X,Y)),REAL means :Def9: :: RSSPACE4:def 9
for x being object st x in BoundedFunctions (X,Y) holds
it . x = upper_bound (PreNorms (modetrans (x,X,Y)));
existence
ex b1 being Function of (BoundedFunctions (X,Y)),REAL st
for x being object st x in BoundedFunctions (X,Y) holds
b1 . x = upper_bound (PreNorms (modetrans (x,X,Y)))
proof end;
uniqueness
for b1, b2 being Function of (BoundedFunctions (X,Y)),REAL st ( for x being object st x in BoundedFunctions (X,Y) holds
b1 . x = upper_bound (PreNorms (modetrans (x,X,Y))) ) & ( for x being object st x in BoundedFunctions (X,Y) holds
b2 . x = upper_bound (PreNorms (modetrans (x,X,Y))) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def9 defines BoundedFunctionsNorm RSSPACE4:def 9 :
for X being non empty set
for Y being RealNormSpace
for b3 being Function of (BoundedFunctions (X,Y)),REAL holds
( b3 = BoundedFunctionsNorm (X,Y) iff for x being object st x in BoundedFunctions (X,Y) holds
b3 . x = upper_bound (PreNorms (modetrans (x,X,Y))) );

theorem Th13: :: RSSPACE4:13
for X being non empty set
for Y being RealNormSpace
for f being bounded Function of X, the carrier of Y holds modetrans (f,X,Y) = f
proof end;

theorem Th14: :: RSSPACE4:14
for X being non empty set
for Y being RealNormSpace
for f being bounded Function of X, the carrier of Y holds (BoundedFunctionsNorm (X,Y)) . f = upper_bound ()
proof end;

definition
let X be non empty set ;
let Y be RealNormSpace;
func R_NormSpace_of_BoundedFunctions (X,Y) -> non empty NORMSTR equals :: RSSPACE4:def 10
NORMSTR(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(BoundedFunctionsNorm (X,Y)) #);
coherence
NORMSTR(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(BoundedFunctionsNorm (X,Y)) #) is non empty NORMSTR
;
end;

:: deftheorem defines R_NormSpace_of_BoundedFunctions RSSPACE4:def 10 :
for X being non empty set
for Y being RealNormSpace holds R_NormSpace_of_BoundedFunctions (X,Y) = NORMSTR(# (BoundedFunctions (X,Y)),(Zero_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Add_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(Mult_ ((BoundedFunctions (X,Y)),(RealVectSpace (X,Y)))),(BoundedFunctionsNorm (X,Y)) #);

theorem Th15: :: RSSPACE4:15
for X being non empty set
for Y being RealNormSpace holds X --> (0. Y) = 0. ()
proof end;

theorem Th16: :: RSSPACE4:16
for X being non empty set
for Y being RealNormSpace
for f being Point of ()
for g being bounded Function of X, the carrier of Y st g = f holds
for t being Element of X holds ||.(g . t).|| <=
proof end;

for X being non empty set
for Y being RealNormSpace
for f being Point of () holds 0 <=
proof end;

theorem Th18: :: RSSPACE4:18
for X being non empty set
for Y being RealNormSpace
for f being Point of () st f = 0. () holds
0 =
proof end;

theorem Th19: :: RSSPACE4:19
for X being non empty set
for Y being RealNormSpace
for f, g, h being Point of ()
for f9, g9, h9 being bounded Function of X, the carrier of Y st f9 = f & g9 = g & h9 = h holds
( h = f + g iff for x being Element of X holds h9 . x = (f9 . x) + (g9 . x) )
proof end;

theorem Th20: :: RSSPACE4:20
for X being non empty set
for Y being RealNormSpace
for f, h being Point of ()
for f9, h9 being bounded Function of X, the carrier of Y st f9 = f & h9 = h holds
for a being Real holds
( h = a * f iff for x being Element of X holds h9 . x = a * (f9 . x) )
proof end;

theorem Th21: :: RSSPACE4:21
for X being non empty set
for Y being RealNormSpace
for f, g being Point of ()
for a being Real holds
( ( = 0 implies f = 0. () ) & ( f = 0. () implies = 0 ) & ||.(a * f).|| = |.a.| * & ||.(f + g).|| <= + )
proof end;

theorem Th22: :: RSSPACE4:22
for X being non empty set
for Y being RealNormSpace holds
( R_NormSpace_of_BoundedFunctions (X,Y) is reflexive & R_NormSpace_of_BoundedFunctions (X,Y) is discerning & R_NormSpace_of_BoundedFunctions (X,Y) is RealNormSpace-like ) by Th21;

theorem Th23: :: RSSPACE4:23
for X being non empty set
for Y being RealNormSpace holds R_NormSpace_of_BoundedFunctions (X,Y) is RealNormSpace
proof end;

registration
let X be non empty set ;
let Y be RealNormSpace;
coherence by Th23;
end;

theorem Th24: :: RSSPACE4:24
for X being non empty set
for Y being RealNormSpace
for f, g, h being Point of ()
for f9, g9, h9 being bounded Function of X, the carrier of Y st f9 = f & g9 = g & h9 = h holds
( h = f - g iff for x being Element of X holds h9 . x = (f9 . x) - (g9 . x) )
proof end;

Lm7: for e being Real
for seq being Real_Sequence st seq is convergent & ex k being Nat st
for i being Nat st k <= i holds
seq . i <= e holds
lim seq <= e

proof end;

theorem Th25: :: RSSPACE4:25
for X being non empty set
for Y being RealNormSpace st Y is complete holds
for seq being sequence of () st seq is Cauchy_sequence_by_Norm holds
seq is convergent
proof end;

theorem Th26: :: RSSPACE4:26
for X being non empty set
for Y being RealBanachSpace holds R_NormSpace_of_BoundedFunctions (X,Y) is RealBanachSpace
proof end;

registration
let X be non empty set ;
let Y be RealBanachSpace;
coherence by Th26;
end;