:: Dual Spaces and Hahn-Banach's Theorem
:: by Keiko Narita , Noboru Endou and Yasunari Shidama
::
:: Received March 31, 2014
:: Copyright (c) 2014-2019 Association of Mizar Users
:: (Stowarzyszenie Uzytkownikow Mizara, Bialystok, Poland).
:: This code can be distributed under the GNU General Public Licence
:: version 3.0 or later, or the Creative Commons Attribution-ShareAlike
:: License version 3.0 or later, subject to the binding interpretation
:: detailed in file COPYING.interpretation.
:: See COPYING.GPL and COPYING.CC-BY-SA for the full text of these
:: licenses, or see http://www.gnu.org/licenses/gpl.html and
:: http://creativecommons.org/licenses/by-sa/3.0/.
environ
vocabularies RLSUB_1, HAHNBAN, HAHNBAN1, UNIALG_1, MONOID_0, DUALSP01,
RLVECT_1, ARYTM_1, RELAT_1, FUNCT_1, RSSPACE, RSSPACE3, VECTSP_1, REAL_1,
TARSKI, MSSUBFAM, STRUCT_0, REALSET1, SEQ_1, FUNCOP_1, FCONT_1, NORMSP_0,
SEQ_2, FUNCSDOM, LOPBAN_1, ORDINAL2, ARYTM_3, ALGSTR_0, NORMSP_1,
FUNCT_2, PRE_TOPC, SUBSET_1, ZFMISC_1, NUMBERS, SEQ_4, XBOOLE_0, CARD_1,
SUPINF_2, MESFUNC1, COMPLEX1, XXREAL_0, XXREAL_2, NAT_1, REWRITE1,
VALUED_1, METRIC_1, RELAT_2, ASYMPT_1, FUNCT_7;
notations TARSKI, XBOOLE_0, ZFMISC_1, SUBSET_1, RELAT_1, FUNCT_1, FUNCT_2,
FUNCOP_1, REALSET1, NUMBERS, XCMPLX_0, XXREAL_0, XXREAL_2, XREAL_0,
NAT_1, COMPLEX1, VALUED_1, SEQ_1, SEQ_2, SEQ_4, STRUCT_0, ALGSTR_0,
NORMSP_0, NORMSP_1, PRE_TOPC, RLVECT_1, RLSUB_1, VECTSP_1, FUNCSDOM,
MONOID_0, HAHNBAN, RSSPACE, RSSPACE3, LOPBAN_1, HAHNBAN1;
constructors REAL_1, REALSET1, RSSPACE3, BINOP_2, RLSUB_1, LOPBAN_2, SEQ_1,
SEQ_2, SEQ_4, HAHNBAN, HAHNBAN1, MONOID_0, COMSEQ_2;
registrations STRUCT_0, XREAL_0, ALGSTR_0, NUMBERS, ORDINAL1, MEMBERED,
RELAT_1, XXREAL_0, VALUED_0, MONOID_0, RLVECT_1, VECTSP_1, FUNCT_2,
VALUED_1, FUNCOP_1, SEQ_4, HAHNBAN, HAHNBAN1, RELSET_1, FUNCT_1,
XCMPLX_0, NORMSP_0, NAT_1, NORMSP_1, SEQ_2;
requirements NUMERALS, BOOLE, SUBSET, REAL, ARITHM;
definitions ALGSTR_0, FUNCT_1, RLVECT_1, VECTSP_1, HAHNBAN, HAHNBAN1,
XXREAL_2;
equalities XBOOLE_0, BINOP_1, RLVECT_1, STRUCT_0, REALSET1, ALGSTR_0,
NORMSP_0, SEQ_1, VECTSP_1, FUNCSDOM;
expansions FUNCT_1, RLSUB_1, TARSKI, XBOOLE_0, FUNCT_2, SEQ_2, NORMSP_0,
NORMSP_1, VECTSP_1, RLVECT_1, ALGSTR_0;
theorems SEQ_4, FUNCT_1, SEQ_1, SEQ_2, ABSVALUE, ALGSTR_0, COMPLEX1, TARSKI,
RSSPACE3, XREAL_0, XXREAL_0, FUNCSDOM, NORMSP_1, LOPBAN_1, FUNCT_2,
XBOOLE_0, XREAL_1, XCMPLX_0, RLVECT_1, FUNCOP_1, VECTSP_1, HAHNBAN,
HAHNBAN1, RLSUB_1, RSSPACE, MONOID_0, NORMSP_0, ORDINAL1, NAT_1,
SUBSET_1;
schemes SEQ_1, FUNCT_2, XBOOLE_0;
begin :: Dual Spaces of Real Linear Spaces
reserve V for non empty RealLinearSpace;
definition
let X be RealLinearSpace;
func MultF_Real*(X) -> Function of
[:the carrier of F_Real,the carrier of X:], the carrier of X equals
the Mult of X;
correctness;
end;
theorem Lm01:
for X be RealLinearSpace holds
ModuleStr (# the carrier of X, the addF of X, the ZeroF of X,
MultF_Real*(X) #)
is VectSp of F_Real
proof
let X be RealLinearSpace;
set XP=ModuleStr (# the carrier of X, the addF of X, the ZeroF of X,
MultF_Real*(X) #);
Q1:XP is scalar-distributive vector-distributive
scalar-associative scalar-unital
proof
now let x,y be Element of F_Real;
let v be Element of XP;
reconsider v1=v as Element of X;
reconsider x1=x,y1=y as Real;
(x+y)*v = (x1+y1)*v1
= x1*v1+y1*v1 by RLVECT_1:def 6;
hence (x+y)*v = x*v+y*v;
end;
hence XP is scalar-distributive;
now let x be Element of F_Real;
let v,w be Element of XP;
reconsider v1=v,w1=w as Element of X;
reconsider x1=x as Real;
x*(v+w) = x1*(v1+w1)
.= x1*v1+x1*w1 by RLVECT_1:def 5;
hence x*(v+w) = x*v+x*w;
end;
hence XP is vector-distributive;
now let x,y be Element of F_Real;
let v be Element of XP;
reconsider v1=v as Element of X;
reconsider x1=x,y1=y as Real;
(x*y)*v = (x1*y1)*v1
.= x1*(y1*v1) by RLVECT_1:def 7;
hence (x*y)*v = x*(y*v);
end;
hence XP is scalar-associative;
now let v be Element of XP;
reconsider v1=v as Element of X;
(1.F_Real)*v = 1*v1;
hence (1.F_Real)*v = v by RLVECT_1:def 8;
end;
hence XP is scalar-unital;
end;
now let u,v,w be Element of XP;
reconsider u1=u,v1=v,w1=w as Element of X;
u+(v + w) = u1+(v1+w1)
.= (u1+v1)+w1 by RLVECT_1:def 3;
hence u+(v + w) = (u+v)+w;
end; then
Q2: XP is add-associative;
now let v be Element of XP;
reconsider v1=v as Element of X;
v + 0.XP = v1+0.X;
hence v + 0.XP = v;
end; then
Q3: XP is right_zeroed;
now let v be Element of XP;
reconsider v1=v as Element of X;
consider w1 be Element of X such that
A1: v1+w1= 0.X by ALGSTR_0:def 11;
reconsider w=w1 as Element of XP;
v + w = 0.XP by A1;
hence v is right_complementable;
end;
then
Q4: XP is right_complementable;
now let v,w be Element of XP;
reconsider v1=v,w1=w as Element of X;
v + w = v1+w1 .= w1+v1;
hence v + w = w+v;
end;
then XP is Abelian;
hence XP is VectSp of F_Real by Q1,Q2,Q3,Q4;
end;
definition
let X be RealLinearSpace;
func RLSp2RVSp X ->VectSp of F_Real equals
ModuleStr (# the carrier of X, the addF of X, the ZeroF of X,
MultF_Real*(X) #);
correctness by Lm01;
end;
definition
let X be ModuleStr over F_Real;
func MultReal*(X)
-> Function of [:REAL,the carrier of X:], the carrier of X equals
the lmult of X;
correctness;
end;
theorem Lm02:
for X be VectSp of F_Real holds
RLSStruct (# the carrier of X, the ZeroF of X,
the addF of X, MultReal*(X) #) is RealLinearSpace
proof
let X be VectSp of F_Real;
set XQ=RLSStruct (# the carrier of X, the ZeroF of X,
the addF of X, MultReal*(X) #);
A1: for vZ1,wZ1 be Element of X, v,w be Element of XQ
st v = vZ1 & w = wZ1 holds v + w = vZ1 + wZ1;
XQ is Abelian add-associative right_zeroed
right_complementable scalar-distributive vector-distributive
scalar-associative scalar-unital
proof
hereby let v,w be VECTOR of XQ;
reconsider vZ1 = v, wZ1 = w as Element of X;
thus v + w = wZ1 + vZ1 by A1
.= w + v;
end;
hereby let u,v,w be VECTOR of XQ;
reconsider uZ1 = u, vZ1 = v, wZ1 = w as Element of X;
(u + v) + w = (uZ1 + vZ1) + wZ1
.= uZ1 + (vZ1 + wZ1) by RLVECT_1:def 3;
hence (u + v) + w = u + (v + w);
end;
hereby let v be VECTOR of XQ;
reconsider vZ1 = v as Element of X;
thus v + 0.XQ = vZ1 + 0.X .= v;
end;
thus XQ is right_complementable
proof
let v be VECTOR of XQ;
reconsider vZ1 = v as Element of X;
consider wZ1 be Element of X such that
A2: vZ1 + wZ1 = 0.X by ALGSTR_0:def 11;
reconsider w = wZ1 as VECTOR of XQ;
take w;
thus v + w = 0.XQ by A2;
end;
hereby let a,b be Real, v be VECTOR of XQ;
reconsider vZ1=v as Element of X;
reconsider aZ1=a, bZ1=b as Element of F_Real by XREAL_0:def 1;
(a + b) * v = (aZ1 + bZ1) * vZ1
.= aZ1* vZ1 + bZ1* vZ1 by VECTSP_1:def 15;
hence (a + b) * v = a * v + b * v;
end;
hereby let a be Real, v,w be VECTOR of XQ;
reconsider aZ1=a as Element of F_Real by XREAL_0:def 1;
reconsider vZ1 = v, wZ1 = w as Element of X;
a * (v + w) = aZ1*(vZ1+wZ1)
.= aZ1*vZ1 + aZ1*wZ1 by VECTSP_1:def 14;
hence a * (v + w) =a*v + a*w;
end;
hereby let a,b be Real, v be VECTOR of XQ;
reconsider vZ1=v as Element of X;
reconsider aZ1=a, bZ1=b as Element of F_Real by XREAL_0:def 1;
(a * b) * v = (aZ1 * bZ1) * vZ1
.= aZ1 * (bZ1 * vZ1) by VECTSP_1:def 16;
hence (a * b) * v = a * (b * v);
end;
let v be VECTOR of XQ;
reconsider vZ1=v as Element of X;
thus 1 * v = 1.(F_Real) *vZ1
.= v by VECTSP_1:def 17;
end;
hence thesis;
end;
definition
let X be VectSp of F_Real;
func RVSp2RLSp X -> RealLinearSpace equals
RLSStruct (# the carrier of X, the ZeroF of X, the addF of X,
MultReal*(X) #);
correctness by Lm02;
end;
theorem
for X be RealLinearSpace, v,w be Element of X,
v1,w1 be Element of RLSp2RVSp X st
v=v1 & w=w1 holds v+w=v1+w1 & v-w = v1-w1
proof
let X be RealLinearSpace, v,w be Element of X,
v1,w1 be Element of RLSp2RVSp X;
assume AS: v=v1 & w=w1;
hence v+w=v1+w1;
-w = (-1)*w by RLVECT_1:16
.= (-1.F_Real)*w1 by AS
.= -w1 by VECTSP_1:14;
hence v-w = v1-w1 by AS;
end;
theorem
for X be VectSp of F_Real, v,w be Element of X,
v1,w1 be Element of RVSp2RLSp X st
v=v1 & w=w1 holds v+w = v1+w1 & v-w = v1-w1
proof
let X be VectSp of F_Real, v,w be Element of X,
v1,w1 be Element of RVSp2RLSp X;
assume AS: v=v1 & w=w1;
-w1 = (-1)*w1 by RLVECT_1:16
.= (-1.F_Real)*w by AS
.= -w by VECTSP_1:14;
hence v+w = v1+w1 & v-w = v1-w1 by AS;
end;
definition
let V be non empty RealLinearSpace;
func V*' -> strict non empty RealLinearSpace means :def2:
ex X be non empty VectSp of F_Real
st X = RLSp2RVSp V & it= RVSp2RLSp X*';
correctness
proof
reconsider X = RLSp2RVSp V as non empty VectSp of F_Real;
RVSp2RLSp X*' is non empty RealLinearSpace;
hence thesis;
end;
end;
theorem Th1:
for x be object holds
x in the carrier of V*' iff x is linear-Functional of V
proof
let x be object;
consider X be non empty VectSp of F_Real such that
AS1:X = RLSp2RVSp V & V*'= RVSp2RLSp X*' by def2;
x is linear-Functional of X iff x is linear-Functional of V
proof
hereby assume A21: x is linear-Functional of X;
then
reconsider f=x as Functional of V by AS1;
reconsider g=x as linear-Functional of X by A21;
A1: f is additive
proof
let v,w be Element of V;
reconsider v1=v,w1=w as Element of X by AS1;
f.(v+w) = g.(v1+w1) by AS1
.= g.v1 + g.w1 by VECTSP_1:def 20;
hence f.(v+w) = f.v+f.w;
end;
f is homogeneous
proof
let v be VECTOR of V, r be Real;
reconsider v1=v as Element of X by AS1;
reconsider r1 =r as Scalar of X by XREAL_0:def 1;
f.(r*v) = g.(r1*v1) by AS1
.= r1*g.v1 by HAHNBAN1:def 8;
hence f.(r*v) = r*f.v;
end;
hence x is linear-Functional of V by A1;
end;
assume
A21: x is linear-Functional of V; then
reconsider f=x as Functional of X by AS1;
reconsider g = x as linear-Functional of V by A21;
A1:f is additive
proof
let v,w be Element of X;
reconsider v1=v,w1=w as VECTOR of V by AS1;
f.(v+w) = g.(v1+w1) by AS1;
hence f.(v+w) = f.v+f.w by HAHNBAN:def 2;
end;
f is homogeneous
proof
let v be Element of X, r be Element of F_Real;
reconsider v1=v as Element of V by AS1;
reconsider r1=r as Element of REAL;
f.(r*v) = g.(r1*v1) by AS1;
hence f.(r*v) = r*f.v by HAHNBAN:def 3;
end;
hence x is linear-Functional of X by A1;
end;
hence thesis by AS1,HAHNBAN1:def 10;
end;
registration
let V be non empty RealLinearSpace;
cluster V*' -> constituted-Functions;
coherence
proof
the carrier of V*' is functional by Th1;
hence thesis by MONOID_0:80;
end;
end;
definition
let V be non empty RealLinearSpace;
let f be Element of V*';
let v be VECTOR of V;
redefine func f.v -> Element of REAL;
coherence
proof
reconsider f as Functional of V by Th1;
f.v is Element of REAL;
hence thesis;
end;
end;
theorem
for V be non empty RealLinearSpace, f,g,h be VECTOR of V*' holds
h = f+g iff for x be VECTOR of V holds h.x = f.x + g.x
proof
let V be non empty RealLinearSpace;
let f,g,h be VECTOR of V*';
consider Y be non empty VectSp of F_Real such that
AS1:Y = RLSp2RVSp V & V*'= RVSp2RLSp Y*' by def2;
reconsider f1=f, g1=g, h1=h as linear-Functional of Y by AS1,HAHNBAN1:def 10;
A2:now assume A3: h = f+g;
let x be Element of V;
reconsider x1=x as Element of Y by AS1;
h1 = f1+g1 by A3,AS1,HAHNBAN1:def 10;
then h1.x1=f1.x1+g1.x1 by HAHNBAN1:def 3;
hence h.x=f.x+g.x;
end;
now
assume for x be Element of V holds h.x=f.x+g.x;
then
for x be Element of Y holds h1.x=f1.x+g1.x by AS1;
then
h1 = f1+g1 by HAHNBAN1:def 3;
hence h=f+g by AS1,HAHNBAN1:def 10;
end;
hence thesis by A2;
end;
theorem
for V be non empty RealLinearSpace, f,h be VECTOR of V*', a be Real
holds h = a*f iff for x be VECTOR of V holds h.x = a * f.x
proof
let V be non empty RealLinearSpace, f,h be VECTOR of V*', a be Real;
reconsider a1=a as Element of F_Real by XREAL_0:def 1;
consider Y be non empty VectSp of F_Real such that
AS1:Y = RLSp2RVSp V & V*'= RVSp2RLSp Y*' by def2;
reconsider f1=f, h1=h as linear-Functional of Y by AS1,HAHNBAN1:def 10;
hereby assume A3: h = a*f;
hereby let x be Element of V;
reconsider x1=x as Element of Y by AS1;
h1 = a1*f1 by A3,AS1,HAHNBAN1:def 10;
then h1.x1=a1*f1.x1 by HAHNBAN1:def 6;
hence h.x=a*f.x;
end;
end;
assume for x be Element of V holds h.x=a*f.x;
then
for x be Element of Y holds h1.x=a1*f1.x by AS1;
then
h1 = a1*f1 by HAHNBAN1:def 6;
hence h=a*f by AS1,HAHNBAN1:def 10;
end;
theorem
for V be non empty RealLinearSpace holds 0.(V*') = (the carrier of V) --> 0
proof
let V be non empty RealLinearSpace;
consider Y be non empty VectSp of F_Real such that
AS1:Y = RLSp2RVSp V & V*'= RVSp2RLSp Y*' by def2;
0.(V*') = 0.(Y*') by AS1
.= 0Functional Y by HAHNBAN1:def 10
.= ([#]Y --> 0.(F_Real)) by HAHNBAN1:def 7;
hence 0.(V*') = ((the carrier of V) --> 0) by AS1;
end;
theorem Th23:
for X be RealLinearSpace holds
(the carrier of X) --> 0 is linear-Functional of X
proof
let X be RealLinearSpace;
set f=(the carrier of X) --> 0;
reconsider f as Functional of X by FUNCOP_1:45,XREAL_0:def 1;
A1: f is additive
proof
let x,y be VECTOR of X;
thus f.(x+y) = f.x+f.y;
end;
f is homogeneous
proof
let x be VECTOR of X, r be Real;
thus f.(r*x) = r*f.x;
end;
hence thesis by A1;
end;
definition
let X be RealLinearSpace;
func LinearFunctionals X -> Subset of RealVectSpace(the carrier of X) means
:Def7:
for x be object holds x in it iff x is linear-Functional of X;
existence
proof
defpred P[object] means $1 is linear-Functional of X;
consider IT be set such that
A1: for x be object holds x in IT
iff x in Funcs(the carrier of X,REAL) & P[x] from XBOOLE_0:sch 1;
for x be object st x in IT holds x in Funcs(the carrier of X,REAL) by A1;
then
reconsider IT as Subset of RealVectSpace(the carrier of X) by TARSKI:def 3;
take IT;
let x be object;
thus x in IT implies x is linear-Functional of X by A1;
assume
A3: x is linear-Functional of X;
then x in Funcs(the carrier of X,REAL) by FUNCT_2:8;
hence thesis by A1,A3;
end;
uniqueness
proof
let X1,X2 be Subset of RealVectSpace(the carrier of X);
assume that
A4: for x be object holds x in X1 iff x is linear-Functional of X and
A5: for x be object holds x in X2 iff x is linear-Functional of X;
now let x be object;
assume x in X1;
then x is linear-Functional of X by A4;
hence x in X2 by A5;
end;
then
A6: X1 c= X2;
now let x be object;
assume x in X2;
then x is linear-Functional of X by A5;
hence x in X1 by A4;
end;
then X2 c= X1;
hence thesis by A6;
end;
end;
registration
let X be RealNormSpace;
cluster LinearFunctionals X -> non empty;
coherence
proof
(the carrier of X) --> 0 is linear-Functional of X by Th23;
hence thesis by Def7;
end;
end;
registration
let X be RealLinearSpace;
cluster LinearFunctionals X -> non empty functional;
coherence
proof
(the carrier of X) --> 0 is linear-Functional of X by Th23;
hence LinearFunctionals X is non empty by Def7;
let x be object;
assume x in LinearFunctionals X;
hence thesis;
end;
end;
theorem Th17:
for X be RealLinearSpace holds LinearFunctionals X is linearly-closed
proof
let X be RealLinearSpace;
set W = LinearFunctionals X;
A1: for v,u be VECTOR of RealVectSpace(the carrier of X) st
v in LinearFunctionals X & u in LinearFunctionals X
holds v + u in LinearFunctionals X
proof
let v,u be VECTOR of RealVectSpace(the carrier of X) such that
A2: v in W & u in W;
reconsider f=v+u as Functional of X by FUNCT_2:66;
A3: f is additive
proof
let x,y be VECTOR of X;
reconsider vZ1=v, uZ1=u as Element of Funcs(the carrier of X,REAL);
A4: uZ1 is linear-Functional of X by A2,Def7;
reconsider uZ11=uZ1 as additive homogeneous Functional of X by A2,Def7;
reconsider x1=x, y1=y as Element of X;
A5: vZ1 is linear-Functional of X by A2,Def7;
f.(x+y) = uZ1.(x+y)+vZ1.(x+y) by FUNCSDOM:1
.= (uZ1.x+uZ1.y)+vZ1.(x+y) by A4,HAHNBAN:def 2
.= uZ1.x+uZ1.y+(vZ1.x+vZ1.y) by A5,HAHNBAN:def 2
.= uZ1.x+vZ1.x+uZ1.y+vZ1.y
.= f.x+ uZ1.y+vZ1.y by FUNCSDOM:1
.= f.x+ (uZ1.y+vZ1.y);
hence f.(x+y) = f.x+f.y by FUNCSDOM:1;
end;
f is homogeneous
proof
let x be VECTOR of X, s be Real;
reconsider v1 = v, u1 = u as Element of Funcs(the carrier of X,REAL);
A6: u1 is linear-Functional of X & v1 is linear-Functional of X by A2,Def7;
f.(s*x) = u1.(s*x)+v1.(s*x) by FUNCSDOM:1
.= (s*(u1.x))+v1.(s*x) by A6,HAHNBAN:def 3
.= s*u1.x+s*v1.x by A6,HAHNBAN:def 3
.= s*(u1.x+v1.x);
hence f.(s*x) = s*f.x by FUNCSDOM:1;
end;
hence v+u in W by A3,Def7;
end;
for a be Real, v be VECTOR of RealVectSpace(the carrier of X)
st v in W holds a * v in W
proof
let a be Real;
let v be VECTOR of RealVectSpace(the carrier of X) such that
A8: v in W;
reconsider f=a*v as Functional of X by FUNCT_2:66;
A9: f is additive
proof
let x,y be VECTOR of X;
reconsider vZ1=v as Element of Funcs(the carrier of X,REAL);
A10: vZ1 is linear-Functional of X by Def7,A8;
f.(x+y) = a*(vZ1.(x+y)) by FUNCSDOM:4
.= a*(vZ1.x+vZ1.y) by A10,HAHNBAN:def 2
.= a*vZ1.x+a*vZ1.y
.= f.x+a*vZ1.y by FUNCSDOM:4;
hence f.(x+y) = f.x+ f.y by FUNCSDOM:4;
end;
f is homogeneous
proof
let x be VECTOR of X, s be Real;
reconsider vZ1=v as Element of Funcs(the carrier of X,REAL);
A11: vZ1 is linear-Functional of X by Def7,A8;
f.(s*x) = a*vZ1.(s*x) by FUNCSDOM:4
.= a*(s*(vZ1.x)) by A11,HAHNBAN:def 3
.= s*(a*vZ1.x);
hence f.(s*x) = s*f.x by FUNCSDOM:4;
end;
hence thesis by A9,Def7;
end;
hence thesis by A1;
end;
theorem
for X be RealLinearSpace holds
RLSStruct (# LinearFunctionals X,
Zero_(LinearFunctionals X, RealVectSpace(the carrier of X)),
Add_(LinearFunctionals X, RealVectSpace(the carrier of X)),
Mult_(LinearFunctionals X, RealVectSpace(the carrier of X)) #)
is Subspace of RealVectSpace(the carrier of X) by Th17,RSSPACE:11;
registration
let X be RealLinearSpace;
cluster RLSStruct (# LinearFunctionals X,
Zero_(LinearFunctionals X, RealVectSpace(the carrier of X)),
Add_(LinearFunctionals X, RealVectSpace(the carrier of X)),
Mult_(LinearFunctionals X, RealVectSpace(the carrier of X)) #)
-> Abelian add-associative right_zeroed right_complementable
scalar-distributive vector-distributive scalar-associative scalar-unital;
coherence by Th17,RSSPACE:11;
end;
definition
let X be RealLinearSpace;
func X*' -> strict RealLinearSpace equals
RLSStruct (# LinearFunctionals X,
Zero_(LinearFunctionals X, RealVectSpace(the carrier of X)),
Add_(LinearFunctionals X, RealVectSpace(the carrier of X)),
Mult_(LinearFunctionals X, RealVectSpace(the carrier of X)) #);
coherence;
end;
registration
let X be RealLinearSpace;
cluster X*' -> constituted-Functions;
coherence by MONOID_0:80;
end;
definition
let X be RealLinearSpace;
let f be Element of X*';
let v be VECTOR of X;
redefine func f.v -> Element of REAL;
coherence
proof
reconsider f as Functional of X by Def7;
f.v is Element of REAL;
hence thesis;
end;
end;
theorem Th20b:
for X be RealLinearSpace, f,g,h be VECTOR of X*' holds
h = f+g iff for x be VECTOR of X holds h.x = f.x + g.x
proof
let X be RealLinearSpace, f,g,h be VECTOR of X*';
A1:X*' is Subspace of RealVectSpace(the carrier of X) by Th17,RSSPACE:11;
then reconsider f1=f, g1=g, h1=h as VECTOR
of RealVectSpace(the carrier of X) by RLSUB_1:10;
hereby assume
A3: h = f+g;
let x be Element of X;
h1=f1+g1 by A1,A3,RLSUB_1:13;
hence h.x=f.x+g.x by FUNCSDOM:1;
end;
assume for x be Element of X holds h.x=f.x+g.x;
then h1=f1+g1 by FUNCSDOM:1;
hence h =f+g by A1,RLSUB_1:13;
end;
theorem Th21b:
for X be RealLinearSpace, f,h be VECTOR of X*', a be Real
holds h = a*f iff for x be VECTOR of X holds h.x = a * f.x
proof
let X be RealLinearSpace;
let f,h be VECTOR of X*';
let a be Real;
A1: X*' is Subspace of RealVectSpace(the carrier of X) by Th17,RSSPACE:11;
then reconsider f1=f, h1=h as VECTOR
of RealVectSpace(the carrier of X) by RLSUB_1:10;
hereby assume
A3: h = a*f;
let x be Element of X;
h1=a*f1 by A1,A3,RLSUB_1:14;
hence h.x = a*f.x by FUNCSDOM:4;
end;
assume for x be Element of X holds h.x=a*f.x;
then h1 = a*f1 by FUNCSDOM:4;
hence h = a*f by A1,RLSUB_1:14;
end;
theorem Th22b:
for X be RealLinearSpace holds 0.(X*') = (the carrier of X) --> 0
proof
let X be RealLinearSpace;
A1: X*' is Subspace of RealVectSpace(the carrier of X) by Th17,RSSPACE:11;
0.(RealVectSpace(the carrier of X )) = (the carrier of X) --> 0;
hence thesis by A1,RLSUB_1:11;
end;
begin :: Dual Spaces of Real Normed Spaces
reserve S for Real_Sequence;
reserve k,n,m,m1 for Nat;
reserve g,h,r,x for Real;
definition
let S be Real_Sequence;
let x be Real;
func S - x -> Real_Sequence means :Def14:
for n holds it.n = S.n - x;
existence
proof
deffunc F(Nat) = S.$1 - x;
consider S be Real_Sequence such that
A1: for n be Nat holds S.n = F(n) from SEQ_1:sch 1;
take S;
let n;
thus thesis by A1;
end;
uniqueness
proof
let S1,S2 be Real_Sequence;
assume that
A2: for n holds S1.n = S.n - x and
A3: for n holds S2.n = S.n - x;
for n be Nat holds S1.n = S2.n
proof
let n be Nat;
S1.n = S.n - x by A2;
hence thesis by A3;
end;
hence thesis;
end;
end;
theorem Th121:
S is convergent implies S - x is convergent & lim (S-x) = (lim S) - x
proof
assume B1: S is convergent;
set g = lim S;
set h = g - x;
X1: now let r;
assume 0 < r;
then consider m1 such that
A2: for n st m1 <= n holds |.(S.n) - g.| < r by B1,SEQ_2:def 7;
take k = m1;
let n;
assume B3: k <= n;
|.(S.n) - g.| = |.((S.n) - x) - h.|
.= |.(S - x).n - h.| by Def14;
hence |.(S - x).n - h.| < r by A2,B3;
end;
hence S - x is convergent;
hence lim (S-x) = (lim S) - x by X1,SEQ_2:def 7;
end;
definition
let X be RealNormSpace;
let IT be Functional of X;
attr IT is Lipschitzian means :Def8:
ex K be Real st 0 <= K &
for x be VECTOR of X holds |. IT.x .| <= K * ||. x .||;
end;
theorem Th21:
for X be RealNormSpace, f be Functional of X st
(for x be VECTOR of X holds f.x=0) holds f is Lipschitzian
proof
let X be RealNormSpace;
let f be Functional of X;
assume
A1: for x be VECTOR of X holds f.x=0;
take 0;
thus thesis by A1,COMPLEX1:44;
end;
Th21X:
for X be RealNormSpace, F be Functional of X
st F = (the carrier of X) --> 0
holds F is linear-Functional of X & F is Lipschitzian
proof
let X be RealNormSpace,
F be Functional of X;
assume A1: F = (the carrier of X) --> 0; then
reconsider F as linear-Functional of X by Th23;
for x be VECTOR of X holds F.x =0 by A1;
hence thesis by Th21;
end;
registration
let X be RealNormSpace;
cluster Lipschitzian for linear-Functional of X;
existence
proof
set f=(the carrier of X) --> 0;
reconsider f as Function of the carrier of X,REAL
by FUNCOP_1:45,XREAL_0:def 1;
reconsider f as Functional of X;
reconsider f as linear-Functional of X by Th21X;
f is Lipschitzian by Th21X;
hence thesis;
end;
end;
definition
let X be RealNormSpace;
func BoundedLinearFunctionals X -> Subset of X*' means :Def9:
for x be set holds x in it
iff x is Lipschitzian linear-Functional of X;
existence
proof
defpred P[object] means $1 is
Lipschitzian linear-Functional of X;
consider IT be set such that
A1: for x be object holds x in IT
iff x in LinearFunctionals X & P[x] from XBOOLE_0:sch 1;
take IT;
for x be object st x in IT holds x in LinearFunctionals X by A1;
hence IT is Subset of X*' by TARSKI:def 3;
let x be set;
thus x in IT implies x is Lipschitzian linear-Functional of X by A1;
assume
A2: x is Lipschitzian linear-Functional of X;
then x in LinearFunctionals X by Def7;
hence thesis by A1,A2;
end;
uniqueness
proof
let X1,X2 be Subset of X*';
assume that
A3: for x be set holds x in X1 iff
x is Lipschitzian linear-Functional of X and
A4: for x be set holds x in X2 iff
x is Lipschitzian linear-Functional of X;
now let x be object;
assume x in X2;
then x is Lipschitzian linear-Functional of X by A4;
hence x in X1 by A3;
end;
then
A5: X2 c= X1;
now let x be object;
assume x in X1;
then x is Lipschitzian linear-Functional of X by A3;
hence x in X2 by A4;
end;
then X1 c= X2;
hence thesis by A5;
end;
end;
registration
let X be RealNormSpace;
cluster BoundedLinearFunctionals X -> non empty;
coherence
proof
set f = the Lipschitzian linear-Functional of X;
f in BoundedLinearFunctionals X by Def9;
hence thesis;
end;
end;
theorem Th22:
for X be RealNormSpace holds BoundedLinearFunctionals X is linearly-closed
proof
let X be RealNormSpace;
set W = BoundedLinearFunctionals X;
A1: for v,u be VECTOR of X*' st v in W & u in W holds v + u in W
proof
let v,u be VECTOR of X*' such that
A2: v in W & u in W;
reconsider f=v+u as linear-Functional of X by Def7;
f is Lipschitzian
proof
reconsider v1=v, u1=u as Lipschitzian Functional of X by A2,Def9;
consider K2 be Real such that
A4: 0 <= K2 and
A5: for x be VECTOR of X holds |. v1.x .| <= K2*||. x .|| by Def8;
consider K1 be Real such that
A6: 0 <= K1 and
A7: for x be VECTOR of X holds |. u1.x .| <= K1*||. x .|| by Def8;
take K3=K1+K2;
now
let x be VECTOR of X;
A8: |. u1.x+v1.x .| <= |. u1.x .|+ |. v1.x .| by COMPLEX1:56;
A9: |. v1.x .| <= K2*||. x .|| by A5;
|. u1.x .| <= K1*||. x .|| by A7;
then
A10: |. u1.x .| + |. v1.x .| <= K1*||. x .|| +K2*||. x .||
by A9,XREAL_1:7;
|. f.x .| =|. u1.x+v1.x .| by Th20b;
hence |. f.x .| <= K3*||. x .|| by A8,A10,XXREAL_0:2;
end;
hence thesis by A6,A4;
end;
hence thesis by Def9;
end;
for a be Real, v be VECTOR of X*' st v in W holds a * v in W
proof
let a be Real;
let v be VECTOR of X*' such that
A11: v in W;
reconsider f=a*v as linear-Functional of X by Def7;
f is Lipschitzian
proof
reconsider v1=v as Lipschitzian Functional of X by A11,Def9;
consider K be Real such that
A12: 0 <= K and
A13: for x be VECTOR of X holds |. v1.x .| <= K*||. x .|| by Def8;
take |.a.|*K;
A14: now
let x be VECTOR of X;
0 <=|.a.| by COMPLEX1:46; then
A15: |.a.|* |. v1.x .| <= |.a.|* (K*||. x .||) by A13,XREAL_1:64;
|. a*v1.x .| = |.a.|* |. v1.x .| by COMPLEX1:65;
hence |. f.x .| <= |.a.|* K*||. x .|| by A15,Th21b;
end;
0 <=|.a.| by COMPLEX1:46;
hence thesis by A12,A14;
end;
hence thesis by Def9;
end;
hence thesis by A1;
end;
theorem
for X be RealNormSpace holds
RLSStruct (# BoundedLinearFunctionals X,
Zero_(BoundedLinearFunctionals X, X*'),
Add_(BoundedLinearFunctionals X, X*'),
Mult_(BoundedLinearFunctionals X, X*') #) is Subspace of X*'
by Th22,RSSPACE:11;
registration
let X be RealNormSpace;
cluster RLSStruct (# BoundedLinearFunctionals X,
Zero_(BoundedLinearFunctionals X, X*'),
Add_(BoundedLinearFunctionals X, X*'),
Mult_(BoundedLinearFunctionals X, X*') #)
-> Abelian add-associative right_zeroed right_complementable
vector-distributive scalar-distributive scalar-associative
scalar-unital;
coherence by Th22,RSSPACE:11;
end;
definition
let X be RealNormSpace;
func R_VectorSpace_of_BoundedLinearFunctionals X ->
strict RealLinearSpace equals
RLSStruct (# BoundedLinearFunctionals X,
Zero_(BoundedLinearFunctionals X, X*'),
Add_(BoundedLinearFunctionals X, X*'),
Mult_(BoundedLinearFunctionals X, X*') #);
coherence;
end;
registration
let X be RealNormSpace;
cluster -> Function-like Relation-like for Element of
R_VectorSpace_of_BoundedLinearFunctionals X;
coherence;
end;
definition
let X be RealNormSpace;
let f be Element of R_VectorSpace_of_BoundedLinearFunctionals X;
let v be VECTOR of X;
redefine func f.v -> Element of REAL;
coherence
proof
reconsider f as Functional of X by Def9;
f.v is Element of REAL;
hence thesis;
end;
end;
theorem Th24:
for X be RealNormSpace,
f,g,h be VECTOR of R_VectorSpace_of_BoundedLinearFunctionals X
holds h = f+g iff for x be VECTOR of X holds h.x = f.x + g.x
proof
let X be RealNormSpace;
let f,g,h be VECTOR of R_VectorSpace_of_BoundedLinearFunctionals X;
A1: R_VectorSpace_of_BoundedLinearFunctionals X is Subspace of X*'
by Th22,RSSPACE:11;
then reconsider f1=f, h1=h, g1=g as VECTOR of X*' by RLSUB_1:10;
hereby
assume
A2: h = f+g;
let x be Element of X;
h1=f1+g1 by A1,A2,RLSUB_1:13;
hence h.x=f.x+g.x by Th20b;
end;
assume for x be Element of X holds h.x=f.x+g.x;
then h1=f1+g1 by Th20b;
hence thesis by A1,RLSUB_1:13;
end;
theorem Th25:
for X be RealNormSpace,
f,h be VECTOR of R_VectorSpace_of_BoundedLinearFunctionals X,
a be Real
holds h = a*f iff for x be VECTOR of X holds h.x = a * f.x
proof
let X be RealNormSpace;
let f,h be VECTOR of R_VectorSpace_of_BoundedLinearFunctionals X;
let a be Real;
A1: R_VectorSpace_of_BoundedLinearFunctionals X is Subspace of X*'
by Th22,RSSPACE:11;
then reconsider f1=f, h1=h as VECTOR of X*' by RLSUB_1:10;
hereby
assume
A2: h = a*f;
let x be Element of X;
h1=a*f1 by A1,A2,RLSUB_1:14;
hence h.x=a*f.x by Th21b;
end;
assume for x be Element of X holds h.x=a*f.x;
then h1=a*f1 by Th21b;
hence thesis by A1,RLSUB_1:14;
end;
theorem Th26:
for X be RealNormSpace holds
0.(R_VectorSpace_of_BoundedLinearFunctionals X) = (the carrier of X) --> 0
proof
let X be RealNormSpace;
A1: 0.(X*') =(the carrier of X) -->0 by Th22b;
R_VectorSpace_of_BoundedLinearFunctionals X is Subspace of X*'
by Th22,RSSPACE:11;
hence thesis by A1,RLSUB_1:11;
end;
definition
let X be RealNormSpace;
let f be object;
func Bound2Lipschitz(f,X) -> Lipschitzian linear-Functional of X equals
In(f,BoundedLinearFunctionals X);
coherence by Def9;
end;
definition
let X be RealNormSpace;
let u be linear-Functional of X;
func PreNorms u -> non empty Subset of REAL equals
{|.u.t.| where t is VECTOR of X : ||.t.|| <= 1 };
coherence
proof
A1: now
let x be object;
now
assume x in {|.u.t.| where t is VECTOR of X : ||.t.|| <= 1 };
then ex t be VECTOR of X st x=|.u.t.| & ||.t.|| <= 1;
hence x in REAL by XREAL_0:def 1;
end;
hence x in {|.u.t.| where t is VECTOR of X : ||.t.|| <= 1 } implies x
in REAL;
end;
||.0.X.|| = 0; then
|.u.(0.X).| in {|.u.t.| where t is VECTOR of X : ||.t.|| <= 1 };
hence thesis by A1,TARSKI:def 3;
end;
end;
Th27:
for X be RealNormSpace, g be Lipschitzian linear-Functional of X
holds PreNorms g is bounded_above
proof
let X be RealNormSpace;
let g be Lipschitzian linear-Functional of X;
consider K be Real such that
A1: 0 <= K & for x be VECTOR of X holds |. g.x .| <= K*||. x .|| by Def8;
take K;
let r be ExtReal;
assume r in PreNorms g;
then consider t be VECTOR of X such that
A3: r=|.g.t.| & ||.t.|| <= 1;
A5: |.g.t.| <= K*||. t .|| by A1;
K*||. t .|| <= K *1 by A1,A3,XREAL_1:64;
hence r <=K by A3,A5,XXREAL_0:2;
end;
registration let X be RealNormSpace,
g be Lipschitzian linear-Functional of X;
cluster PreNorms g -> bounded_above;
coherence by Th27;
end;
theorem
for X be RealNormSpace, g be linear-Functional of X
holds g is Lipschitzian iff PreNorms g is bounded_above
proof
let X be RealNormSpace;
let g be linear-Functional of X;
now
reconsider K=upper_bound PreNorms g as Real;
assume
A1: PreNorms g is bounded_above;
A2: now
let t be VECTOR of X;
per cases;
suppose
A3: t = 0.X; then
A4: ||.t.|| = 0;
g.t = g.(0*0.X) by A3
.=0*g.(0.X) by HAHNBAN:def 3
.=0;
hence |.g.t.| <= K*||.t.|| by A4,COMPLEX1:44;
end;
suppose
A5: t <> 0.X;
reconsider t1= ( ||.t.||")*t as VECTOR of X;
A6: ||.t.|| <> 0 by A5,NORMSP_0:def 5;
A7: |.g.t.|/||.t.||*||.t.|| = |.g.t.|*||.t.||"*||.t.|| by XCMPLX_0:def 9
.= |.g.t.|*(||.t.||"*||.t.||)
.= |.g.t.|*1 by A6,XCMPLX_0:def 7
.= |.g.t.|;
A8: |. ||.t.||".| = |. 1*||.t.||".| .=|. 1/||.t.||.| by XCMPLX_0:def 9
.= 1/||.t.|| by ABSVALUE:def 1
.= 1*||.t.||" by XCMPLX_0:def 9
.= ||.t.||";
||.t1.|| =|. ||.t.||".|*||.t.|| by NORMSP_1:def 1
.= 1 by A6,A8,XCMPLX_0:def 7; then
A9: |.g.t1.| in {|.g.s.| where s is VECTOR of X : ||.s.|| <= 1 };
|.g.t.|/||.t.|| = |.g.t.|*||.t.||" by XCMPLX_0:def 9
.= |. ||.t.||"*g.t .| by A8,COMPLEX1:65
.= |.g.t1.| by HAHNBAN:def 3;
then |.g.t.|/||.t.|| <= K by A1,A9,SEQ_4:def 1;
hence |.g.t.| <= K *||.t.|| by A7,XREAL_1:64;
end;
end;
take K;
0 <= K
proof
consider r0 be object such that
A10: r0 in PreNorms g by XBOOLE_0:def 1;
reconsider r0 as Real by A10;
now
let r be Real;
assume r in PreNorms g;
then ex t be VECTOR of X st r=|.g.t.| & ||.t.|| <= 1;
hence 0 <= r by COMPLEX1:46;
end;
then 0 <= r0 by A10;
hence thesis by A1,A10,SEQ_4:def 1;
end;
hence g is Lipschitzian by A2;
end;
hence thesis;
end;
definition
let X be RealNormSpace;
func BoundedLinearFunctionalsNorm X
-> Function of BoundedLinearFunctionals X,REAL means :Def13:
for x be object st x in BoundedLinearFunctionals X holds
it.x = upper_bound PreNorms(Bound2Lipschitz(x,X));
existence
proof
deffunc F(object) = upper_bound PreNorms(Bound2Lipschitz($1,X));
A1: for z be object st z in BoundedLinearFunctionals X holds F(z) in REAL
by XREAL_0:def 1;
thus ex f be Function of BoundedLinearFunctionals X,REAL st
for x be object st x in BoundedLinearFunctionals X holds f.x = F(x)
from FUNCT_2:sch 2(A1);
end;
uniqueness
proof
let NORM1,NORM2 be Function of BoundedLinearFunctionals X,REAL such that
A2: for x be object st x in BoundedLinearFunctionals X holds NORM1.x =
upper_bound PreNorms(Bound2Lipschitz(x,X)) and
A3: for x be object st x in BoundedLinearFunctionals X holds NORM2.x =
upper_bound PreNorms(Bound2Lipschitz(x,X));
for z be object st z in BoundedLinearFunctionals X
holds NORM1.z = NORM2 .z
proof
let z be object such that
A5: z in BoundedLinearFunctionals X;
NORM1.z = upper_bound PreNorms(Bound2Lipschitz(z,X)) by A2,A5;
hence thesis by A3,A5;
end;
hence thesis;
end;
end;
theorem Th29:
for X be RealNormSpace, f be Lipschitzian linear-Functional of X
holds Bound2Lipschitz(f,X)=f
proof
let X be RealNormSpace;
let f be Lipschitzian linear-Functional of X;
f in BoundedLinearFunctionals X by Def9;
hence thesis by SUBSET_1:def 8;
end;
theorem Th30:
for X be RealNormSpace, f be Lipschitzian linear-Functional of X
holds (BoundedLinearFunctionalsNorm X).f = upper_bound PreNorms f
proof
let X be RealNormSpace;
let f be Lipschitzian linear-Functional of X;
reconsider f9=f as set;
f in BoundedLinearFunctionals X by Def9;
hence (BoundedLinearFunctionalsNorm X).f =
upper_bound PreNorms(Bound2Lipschitz(f9,X)) by Def13
.= upper_bound PreNorms f by Th29;
end;
definition
let X be RealNormSpace;
func DualSp X -> non empty NORMSTR equals
NORMSTR (# BoundedLinearFunctionals X,
Zero_(BoundedLinearFunctionals X, X*'),
Add_(BoundedLinearFunctionals X, X*'),
Mult_(BoundedLinearFunctionals X, X*'),
BoundedLinearFunctionalsNorm X #);
coherence;
end;
theorem Th31:
for X be RealNormSpace holds (the carrier of X) --> 0 = 0.(DualSp X)
proof
let X be RealNormSpace;
(the carrier of X) --> 0
= 0.R_VectorSpace_of_BoundedLinearFunctionals X by Th26
.= 0.(DualSp X);
hence thesis;
end;
theorem Th32:
for X be RealNormSpace, f be Point of DualSp X,
g be Lipschitzian linear-Functional of X
st g=f holds for t be VECTOR of X holds |.g.t.| <= ||.f.|| * ||.t.||
proof
let X be RealNormSpace;
let f be Point of DualSp X;
let g be Lipschitzian linear-Functional of X such that
A1: g=f;
now
let t be VECTOR of X;
per cases;
suppose
A3: t = 0.X; then
A4: ||.t.|| = 0;
g.t =g.(0*0.X) by A3
.=0*g.(0.X) by HAHNBAN:def 3
.=0;
hence |.g.t.| <= ||.f.||*||.t.|| by A4,COMPLEX1:44;
end;
suppose
A5: t <> 0.X;
reconsider t1= ( ||.t.||")*t as VECTOR of X;
A6: ||.t.|| <> 0 by A5,NORMSP_0:def 5;
A7: |. ||.t.||".| =|. 1*||.t.||".| .=|. 1/||.t.||.| by XCMPLX_0:def 9
.=1/||.t.|| by ABSVALUE:def 1
.=1*||.t.||" by XCMPLX_0:def 9
.=||.t.||";
A8: |.g.t.|/||.t.|| = |.g.t.|*||.t.||" by XCMPLX_0:def 9
.=|. ||.t.||"*g.t.| by A7,COMPLEX1:65
.=|.g.t1.| by HAHNBAN:def 3;
||.t1.|| =|. ||.t.||".|*||.t.|| by NORMSP_1:def 1
.=1 by A6,A7,XCMPLX_0:def 7;
then |.g.t.|/||.t.|| in {|.g.s.| where s is VECTOR of X : ||.s.||
<= 1 } by A8;
then |.g.t.|/||.t.|| <= upper_bound PreNorms g by SEQ_4:def 1;
then
A9: |.g.t.|/||.t.|| <= ||.f.|| by A1,Th30;
|.g.t.|/||.t.||*||.t.|| = |.g.t.|*||.t.||"*||.t.|| by XCMPLX_0:def 9
.=|.g.t.|*(||.t.||"*||.t.||)
.=|.g.t.|*1 by A6,XCMPLX_0:def 7
.=|.g.t.|;
hence |.g.t.| <= ||.f.||*||.t.|| by A9,XREAL_1:64;
end;
end;
hence thesis;
end;
theorem Th33:
for X be RealNormSpace, f be Point of DualSp X holds 0 <= ||.f.||
proof
let X be RealNormSpace;
let f be Point of DualSp X;
reconsider g=f as Lipschitzian linear-Functional of X by Def9;
consider r0 be object such that
A1: r0 in PreNorms g by XBOOLE_0:def 1;
reconsider r0 as Real by A1;
A3: (BoundedLinearFunctionalsNorm X).f = upper_bound PreNorms g by Th30;
now
let r be Real;
assume r in PreNorms g;
then ex t be VECTOR of X st r=|.g.t.| & ||.t.|| <= 1;
hence 0 <= r by COMPLEX1:46;
end;
then 0 <= r0 by A1;
hence thesis by A1,SEQ_4:def 1,A3;
end;
theorem Th34:
for X, Y be RealNormSpace for f be Point of DualSp X
st f = 0.(DualSp X) holds 0 = ||.f.||
proof
let X, Y be RealNormSpace;
let f be Point of DualSp X such that
A1: f = 0.(DualSp X);
thus ||.f.|| = 0
proof
reconsider g=f as Lipschitzian linear-Functional of X by Def9;
set z = (the carrier of X) --> 0;
reconsider z as Function of the carrier of X,REAL
by FUNCOP_1:45,XREAL_0:def 1;
consider r0 be object such that
A2: r0 in PreNorms g by XBOOLE_0:def 1;
reconsider r0 as Real by A2;
A3: (for s be Real st s in PreNorms g holds s <= 0) implies upper_bound
PreNorms g <= 0 by SEQ_4:45;
A5: z=g by A1,Th31;
A6: now
let r be Real;
assume r in PreNorms g;
then ex t be VECTOR of X st r=|.g.t.| & ||.t.|| <= 1;
hence 0 <= r & r <=0 by A5,COMPLEX1:44;
end;
then 0 <= r0 by A2;
then upper_bound PreNorms g = 0 by A6,A2,A3,SEQ_4:def 1;
hence thesis by Th30;
end;
end;
registration
let X be RealNormSpace;
cluster -> Function-like Relation-like for Element of DualSp X;
coherence;
end;
definition
let X be RealNormSpace;
let f be Element of DualSp X;
let v be VECTOR of X;
redefine func f.v -> Element of REAL;
coherence
proof
reconsider f as linear-Functional of X by Def9;
f.v is Element of REAL;
hence thesis;
end;
end;
theorem Th35:
for X be RealNormSpace, f,g,h be Point of DualSp X
holds h = f+g iff for x be VECTOR of X holds h.x = f.x + g.x
proof
let X be RealNormSpace;
let f,g,h be Point of DualSp X;
reconsider f1=f, g1=g, h1=h as VECTOR of
R_VectorSpace_of_BoundedLinearFunctionals X;
h=f+g iff h1=f1+g1;
hence thesis by Th24;
end;
theorem Th36:
for X be RealNormSpace, f,h be Point of DualSp X, a be Real
holds h = a*f iff for x be VECTOR of X holds h.x = a * f.x
proof
let X be RealNormSpace;
let f,h be Point of DualSp X;
let a be Real;
reconsider f1=f, h1=h
as VECTOR of R_VectorSpace_of_BoundedLinearFunctionals X;
h=a*f iff h1=a*f1;
hence thesis by Th25;
end;
theorem Th37:
for X be RealNormSpace, f,g be Point of DualSp X, a be Real holds
( ||.f.|| = 0 iff f = 0.(DualSp X) ) &
||.a*f.|| = |.a.| * ||.f.|| & ||.f+g.|| <= ||.f.|| + ||.g.||
proof
let X be RealNormSpace;
let f,g be Point of DualSp X;
let a be Real;
A1: now
assume
A2: f = 0.(DualSp X);
reconsider g=f as Lipschitzian linear-Functional of X by Def9;
set z = (the carrier of X) --> 0;
reconsider z as Function of the carrier of X,REAL
by FUNCOP_1:45,XREAL_0:def 1;
consider r0 be object such that
A3: r0 in PreNorms g by XBOOLE_0:def 1;
reconsider r0 as Real by A3;
A4: (for s be Real st s in PreNorms g holds s <= 0)
implies upper_bound PreNorms g <= 0 by SEQ_4:45;
A6: z=g by A2,Th31;
A7: now
let r be Real;
assume r in PreNorms g;
then consider t be VECTOR of X such that
A8: r=|.g.t.| and ||.t.|| <= 1;
thus 0 <= r & r <=0 by A8,A6,COMPLEX1:44;
end;
then 0<=r0 by A3;
then upper_bound PreNorms g = 0 by A7,A3,A4,SEQ_4:def 1;
hence ||.f.|| = 0 by Th30;
end;
A9: ||.f+g.|| <= ||.f.|| + ||.g.||
proof
reconsider f1=f, g1=g, h1=f+g as Lipschitzian linear-Functional of X
by Def9;
A10: ( for s be Real st s in PreNorms h1 holds s <= ||.f.|| + ||.g.||)
implies upper_bound PreNorms h1 <= ||.f.|| + ||.g.|| by SEQ_4:45;
A11: now
let t be VECTOR of X such that
A12: ||.t.|| <= 1;
0 <= ||.f.|| & 0 <= ||.g.|| by Th33;
then ||.f.||*||.t.|| <= ||.f.||*1
& ||.g.||*||.t.|| <= ||.g.||*1 by A12,XREAL_1:64;
then
A14: ||.f.||*||.t.|| + ||.g.||*||.t.|| <= ||.f.||*1 + ||.g.||*1 by XREAL_1:7;
A15: |.f1.t+g1.t.| <=|.f1.t.|+|.g1.t.| by COMPLEX1:56;
|.g1.t.|<= ||.g.||*||.t.|| & |.f1.t.|<= ||.f.||*||.t.|| by Th32;
then |.f1.t.|+|.g1.t.| <= ||.f.||*||.t.|| + ||.g.||*||.t.||
by XREAL_1:7;
then
A17: |.f1.t.|+|.g1.t.| <= ||.f.|| + ||.g.|| by A14,XXREAL_0:2;
|.h1.t.|= |.f1.t+g1.t.| by Th35;
hence |.h1.t.| <= ||.f.|| + ||.g.|| by A15,A17,XXREAL_0:2;
end;
now
let r be Real;
assume r in PreNorms h1;
then ex t be VECTOR of X st r=|.h1.t.| & ||.t.|| <= 1;
hence r <= ||.f.|| + ||.g.|| by A11;
end;
hence thesis by A10,Th30;
end;
A19: ||.a*f.|| = |.a.| * ||.f.||
proof
reconsider f1=f, h1=a*f as Lipschitzian linear-Functional of X by Def9;
A21: now
A22: 0 <= ||.f.|| by Th33;
let t be VECTOR of X;
assume ||.t.|| <= 1; then
A23: ||.f.||*||.t.|| <= ||.f.||*1 by A22,XREAL_1:64;
|.f1.t.|<= ||.f.||*||.t.|| by Th32; then
A24: |.f1.t.| <= ||.f.|| by A23,XXREAL_0:2;
A25: |.a*f1.t.| =|.a.|*|.f1.t.| by COMPLEX1:65;
A26: 0<= |.a.| by COMPLEX1:46;
|.h1.t.|= |.a*f1.t.| by Th36;
hence |.h1.t.| <= |.a.|*||.f.|| by A25,A24,A26,XREAL_1:64;
end;
A27: now
let r be Real;
assume r in PreNorms h1;
then ex t be VECTOR of X st r=|.h1.t.| & ||.t.|| <= 1;
hence r <= |.a.|*||.f.|| by A21;
end;
A28: now
per cases;
case
A29: a <> 0;
A30: now
A31: 0 <= ||.a*f.|| by Th33;
let t be VECTOR of X;
assume ||.t.|| <= 1; then
A32: ||.a*f.||*||.t.|| <= ||.a*f.||*1 by A31,XREAL_1:64;
|.h1.t.|<= ||.a*f.||*||.t.|| by Th32; then
A33: |.h1.t.| <= ||.a*f.|| by A32,XXREAL_0:2;
h1.t=a*f1.t by Th36; then
A34: a"*h1.t = (a"* a)*f1.t
.= 1*f1.t by A29,XCMPLX_0:def 7
.= f1.t;
A35: |.a".| =|.1*a".| .=|. 1/a.| by XCMPLX_0:def 9
.=1/|.a.| by ABSVALUE:7
.=1*|.a.|" by XCMPLX_0:def 9
.=|.a.|";
A36: 0<= |.a".| by COMPLEX1:46;
|.a"*h1.t.| =|.a".|*|.h1.t.| by COMPLEX1:65;
hence |.f1.t.| <= |.a.|"*||.a*f.|| by A34,A33,A36,A35,XREAL_1:64;
end;
A37: now
let r be Real;
assume r in PreNorms f1;
then ex t be VECTOR of X st r=|.f1.t.| & ||.t.|| <= 1;
hence r <= |.a.|"*||.a*f.|| by A30;
end;
A38: ( for s be Real st s in PreNorms f1 holds s <= |.a.|"*
||.a*f.|| ) implies upper_bound PreNorms f1 <= |.a.|"*||.a*f.||
by SEQ_4:45;
A39: 0 <= |.a.| by COMPLEX1:46;
||.f.|| <=|.a.|"*||.a*f.|| by A37,A38,Th30;
then |.a.|*||.f.|| <=|.a.|*(|.a.|"*||.a*f.||) by A39,XREAL_1:64;
then
A40: |.a.|*||.f.|| <=(|.a.|*|.a.|")*||.a*f.||;
|.a.| <>0 by A29,COMPLEX1:47;
then |.a.|*||.f.|| <=1*||.a*f.|| by A40,XCMPLX_0:def 7;
hence |.a.|* ||.f.|| <=||.a*f.||;
end;
case
A41: a=0;
reconsider fz=f as
VECTOR of R_VectorSpace_of_BoundedLinearFunctionals X;
A42: a*f = a*fz
.= 0.R_VectorSpace_of_BoundedLinearFunctionals X by A41,RLVECT_1:10
.= 0.(DualSp X);
thus |.a.|* ||.f.|| =0 * ||.f.|| by A41,ABSVALUE:2
.=||.a*f.|| by A42,Th34;
end;
end;
(BoundedLinearFunctionalsNorm X).(a*f) = upper_bound PreNorms h1 by Th30;
then ||.a*f.|| <= |.a.|*||.f.|| by A27,SEQ_4:45;
hence thesis by A28,XXREAL_0:1;
end;
now
reconsider g=f as Lipschitzian linear-Functional of X by Def9;
set z = (the carrier of X) --> 0;
reconsider z as Function of the carrier of X,REAL
by FUNCOP_1:45,XREAL_0:def 1;
assume
A43: ||.f.|| = 0;
now
let t be VECTOR of X;
|.g.t.| <= ||.f.|| *||.t.|| by Th32;
then |.g.t.| = 0 by A43,COMPLEX1:46;
hence g.t = 0 by COMPLEX1:45
.= z.t;
end;
then g=z;
hence f=0.(DualSp X) by Th31;
end;
hence thesis by A1,A19,A9;
end;
registration
let X be RealNormSpace;
cluster DualSp X -> reflexive discerning RealNormSpace-like;
correctness by Th37;
end;
theorem Th39:
for X be RealNormSpace holds DualSp X is RealNormSpace
proof
let X be RealNormSpace;
RLSStruct (# BoundedLinearFunctionals X,
Zero_(BoundedLinearFunctionals X, X*'),
Add_(BoundedLinearFunctionals X, X*'),
Mult_(BoundedLinearFunctionals X, X*') #) is RealLinearSpace;
hence thesis by RSSPACE3:2;
end;
registration
let X be RealNormSpace;
cluster DualSp X -> reflexive discerning RealNormSpace-like
vector-distributive scalar-distributive scalar-associative scalar-unital
Abelian add-associative right_zeroed right_complementable;
coherence by Th39;
end;
theorem Th40:
for X be RealNormSpace, f,g,h be Point of DualSp X
holds h = f-g iff for x be VECTOR of X holds h.x = f.x - g.x
proof
let X be RealNormSpace;
let f,g,h be Point of DualSp X;
reconsider f9=f,g9=g,h9=h as Lipschitzian linear-Functional of X by Def9;
hereby
assume h=f-g; then
h+g=f-(g-g) by RLVECT_1:29;
then
A11: h+g=f-0.DualSp X by RLVECT_1:15;
now
let x be VECTOR of X;
f9.x=h9.x + g9.x by A11,Th35;
hence f9.x-g9.x=h9.x;
end;
hence for x be VECTOR of X holds h.x = f.x - g.x;
end;
assume
A2: for x be VECTOR of X holds h.x = f.x - g.x;
now
let x be VECTOR of X;
h9.x = f9.x - g9.x by A2;
hence h9.x + g9.x= f9.x;
end;
then
f=h+g by Th35; then
f-g=h+(g-g) by RLVECT_1:def 3;
then f-g=h+0.(DualSp X) by RLVECT_1:15;
hence thesis;
end;
Lm3: for e be Real, seq be Real_Sequence st
( seq is convergent
& ex k be Nat st for i be Nat st k <= i holds seq.i <=e )
holds lim seq <=e
proof
let e be Real;
let seq be Real_Sequence such that
A1: seq is convergent and
A2: ex k be Nat st for i be Nat st k <= i holds
seq.i <=e;
consider k be Nat such that
A3: for i be Nat st k <= i holds seq.i <=e by A2;
reconsider ee=e as Element of REAL by XREAL_0:def 1;
set cseq = seq_const e;
A4: lim cseq = cseq.0 by SEQ_4:26
.= e;
A5: now
let i be Nat;
A6: (seq ^\k).i = seq.(k+i) by NAT_1:def 3;
seq.(k+i) <=e by A3,NAT_1:11;
hence (seq ^\k) .i <= cseq.i by A6,SEQ_1:57;
end;
lim (seq ^\k)=lim seq by A1,SEQ_4:20;
hence thesis by A1,A5,A4,SEQ_2:18;
end;
definition let X be RealNormSpace;
let s be sequence of DualSp X, n be Nat;
redefine func s.n -> Element of DualSp X;
coherence
proof reconsider n as Element of NAT by ORDINAL1:def 12;
s.n is Element of DualSp X;
hence thesis;
end;
end;
theorem Th42:
for X be RealNormSpace, seq be sequence of DualSp X
st seq is Cauchy_sequence_by_Norm holds seq is convergent
proof
let X be RealNormSpace;
let vseq be sequence of DualSp X such that
A2: vseq is Cauchy_sequence_by_Norm;
defpred P[set, set] means ex xseq be sequence of REAL st
(for n be Nat holds xseq.n=(Bound2Lipschitz((vseq.n),X)).$1 ) &
xseq is convergent & $2= lim xseq;
A3: for x be Element of X ex y be Element of REAL st P[x,y]
proof
let x be Element of X;
deffunc F(Nat) = (Bound2Lipschitz((vseq.$1),X)).x;
consider xseq be Real_Sequence such that
A4: for n be Nat holds xseq.n = F(n) from SEQ_1:sch 1;
reconsider y = lim xseq as Element of REAL by XREAL_0:def 1;
take y;
A6: for m,k be Nat holds |.xseq.m-xseq.k.| <= ||.vseq.m -
vseq.k.|| * ||.x.||
proof
let m,k be Nat;
reconsider h1=vseq.m-vseq.k as Lipschitzian linear-Functional of X
by Def9;
A7: xseq.k =(Bound2Lipschitz(vseq.k,X)).x
& xseq.m =(Bound2Lipschitz(vseq.m,X)).x by A4;
vseq.m is Lipschitzian linear-Functional of X
& vseq.k is Lipschitzian linear-Functional of X by Def9;
then
Bound2Lipschitz(vseq.m,X)=vseq.m &
Bound2Lipschitz(vseq.k,X)=vseq.k by Th29;
then xseq.m - xseq.k = h1.x by A7,Th40;
hence thesis by Th32;
end;
now
let e be Real such that
A10: e > 0;
per cases;
suppose
A11: x=0.X;
reconsider k=0 as Nat;
take k;
thus for n be Nat st n >= k holds |.xseq.n - xseq.k.| < e
proof
let n be Nat such that
n >= k;
A12: xseq.k =(Bound2Lipschitz((vseq.k),X)).(0 * x) by A4,A11
.=0* (Bound2Lipschitz((vseq.k),X)).x by HAHNBAN:def 3;
xseq.n =(Bound2Lipschitz((vseq.n),X)).(0*x) by A4,A11
.=0*(Bound2Lipschitz((vseq.n),X)).x by HAHNBAN:def 3;
hence thesis by A10,A12,COMPLEX1:44;
end;
end;
suppose x <>0.X; then
A13: ||.x.|| <> 0 by NORMSP_0:def 5; then
consider k be Nat such that
X2: for n,m be Nat st n >= k & m>=k holds
||.(vseq.n) - (vseq.m).|| < e/||.x.|| by A10,A2,RSSPACE3:8;
take k;
thus for n be Nat st n >= k holds |.xseq.n-xseq.k.| < e
proof
let n be Nat;
assume n >=k; then
||.(vseq.n) - (vseq.k).|| < e/||.x.|| by X2; then
A18: ||.(vseq.n) - (vseq.k).|| * ||.x.|| < e/||.x.|| * ||.x.||
by A13,XREAL_1:68;
A19: e/||.x.|| * ||.x.|| = e*||.x.||"* ||.x.|| by XCMPLX_0:def 9
.= e*(||.x.||"* ||.x.||)
.= e*1 by A13,XCMPLX_0:def 7;
|.xseq.n-xseq.k.| <= ||.(vseq.n) - (vseq.k).|| * ||.x.|| by A6;
hence thesis by A18,A19,XXREAL_0:2;
end;
end;
end;
hence thesis by A4,SEQ_4:41;
end;
consider f be Function of the carrier of X,REAL such that
A20: for x be Element of X holds P[x,f.x] from FUNCT_2:sch 3(A3);
reconsider tseq=f as Function of the carrier of X,REAL;
A21: now
let x,y be VECTOR of X;
consider xseq be sequence of REAL such that
A22: ( for n be Nat holds xseq.n=(Bound2Lipschitz(vseq.n,X)).x )
& xseq is convergent & tseq.x = lim xseq by A20;
consider zseq be sequence of REAL such that
A25: ( for n be Nat holds zseq.n=(Bound2Lipschitz(vseq.n,X)).(x+y) )
& zseq is convergent & tseq.(x+y) = lim zseq by A20;
consider yseq be sequence of REAL such that
A27: ( for n be Nat holds yseq.n=(Bound2Lipschitz(vseq.n,X)).y )
& yseq is convergent & tseq.y = lim yseq by A20;
now
let n be Nat;
thus zseq.n=(Bound2Lipschitz(vseq.n,X)).(x+y) by A25
.= (Bound2Lipschitz(vseq.n,X)).x+(Bound2Lipschitz(vseq.n,X)).y
by HAHNBAN:def 2
.= xseq.n + (Bound2Lipschitz(vseq.n,X)).y by A22
.= xseq.n +yseq.n by A27;
end;
then zseq=xseq+yseq by SEQ_1:7;
hence tseq.(x+y)=tseq.x+tseq.y by A22,A27,A25,SEQ_2:6;
end;
now
let x be VECTOR of X;
let a be Real;
consider xseq be sequence of REAL such that
A30: ( for n be Nat holds xseq.n=(Bound2Lipschitz(vseq.n,X)).x )
& xseq is convergent & tseq.x = lim xseq by A20;
consider zseq be sequence of REAL such that
A33: ( for n be Nat holds zseq.n=(Bound2Lipschitz(vseq.n,X)).(a*x) )
& zseq is convergent & tseq.(a*x) = lim zseq by A20;
now
let n be Nat;
thus zseq.n=(Bound2Lipschitz((vseq.n),X)).(a*x) by A33
.= a*(Bound2Lipschitz((vseq.n),X)).x by HAHNBAN:def 3
.= a*xseq.n by A30;
end;
then zseq=a(#)xseq by SEQ_1:9;
hence tseq.(a*x)=a*tseq.x by A30,A33,SEQ_2:8;
end;
then reconsider tseq as linear-Functional of X by A21,HAHNBAN:def 2,def 3;
B40: now
let e be Real;
assume e >0; then
consider k be Nat such that
A36: for n,m be Nat st n >= k & m >= k holds ||.vseq.n - vseq.m.|| < e
by A2,RSSPACE3:8;
take k;
hereby let m be Nat;
assume m >= k; then
A37: ||.(vseq.m) - (vseq.k).|| =0;
hence ||.vseq.||.n >=0 by NORMSP_0:def 4;
end;
hence thesis by B40,SEQ_4:41,A42,SEQ_2:17;
end;
A54: for e be Real
st e > 0 ex k be Nat st for n be Nat st n >= k
holds for x be VECTOR of X holds
|.(Bound2Lipschitz((vseq.n),X)).x - tseq.x.| <= e* ||.x.||
proof
let e be Real;
assume e > 0;
then consider k be Nat such that
A55: for n, m be Nat st n >= k & m >= k holds ||.vseq.n - vseq.m.|| < e
by A2,RSSPACE3:8;
take k;
now
let n be Nat such that
A56: n >= k;
now
let x be VECTOR of X;
consider xseq be sequence of REAL such that
A57: for n be Nat holds xseq.n=(Bound2Lipschitz(vseq.n,X)). x
& xseq is convergent & tseq.x = lim xseq by A20;
A60: for m,k be Nat holds
|.xseq.m-xseq.k.| <= ||.vseq.m - vseq.k.|| * ||.x.||
proof
let m,k be Nat;
reconsider h1=vseq.m-vseq.k as Lipschitzian linear-Functional of X
by Def9;
A61: xseq.k =(Bound2Lipschitz((vseq.k),X)).x
& xseq.m =(Bound2Lipschitz((vseq.m),X)).x by A57;
vseq.m is Lipschitzian linear-Functional of X
& vseq.k is Lipschitzian linear-Functional of X by Def9;
then Bound2Lipschitz(vseq.m,X)=vseq.m &
Bound2Lipschitz(vseq.k,X)=vseq.k by Th29;
then xseq.m - xseq.k =h1.x by A61,Th40;
hence thesis by Th32;
end;
A64: for m be Nat st m >=k holds |.xseq.n-xseq.m.| <= e *||.x.||
proof
let m be Nat;
assume m >=k;
then ||.vseq.n - vseq.m.|| = k holds rseq.m <= e * ||.x.||
proof
let m be Nat such that
A71: m >=k;
rseq.m = |.xseq.m-xseq.n.| by A67
.= |.xseq.n-xseq.m.| by COMPLEX1:60;
hence thesis by A64,A71;
end;
then lim rseq <= e * ||.x.|| by A69,A68,Lm3;
hence thesis by A70,COMPLEX1:60;
end;
hence |.(Bound2Lipschitz((vseq.n),X)).x - tseq.x.|
<= e* ||.x.|| by A57;
end;
hence
for x be VECTOR of X holds |.(Bound2Lipschitz((vseq.n),X)).x - tseq.x.|
<= e* ||.x.||;
end;
hence thesis;
end;
reconsider tseq as Lipschitzian linear-Functional of X by A41;
reconsider tv=tseq as Point of DualSp X by Def9;
A72: for e be Real st e > 0
ex k be Nat st for n be Nat st n >= k holds ||.vseq.n - tv.|| <= e
proof
let e be Real such that
A73: e > 0;
consider k be Nat such that
A74: for n be Nat st n >= k holds for x be VECTOR of X
holds |.(Bound2Lipschitz((vseq.n),X)).x - tseq.x.| <= e* ||.x.||
by A54,A73;
now
set g1=tseq;
let n be Nat such that
A75: n >= k;
reconsider h1=vseq.n-tv as Lipschitzian linear-Functional of X by Def9;
set f1=Bound2Lipschitz((vseq.n),X);
A76: now
let t be VECTOR of X;
assume ||.t.|| <= 1; then
A77: e*||.t.|| <= e*1 by A73,XREAL_1:64;
A78: |.f1.t-g1.t.| <=e* ||.t.|| by A74,A75;
vseq.n is Lipschitzian linear-Functional of X by Def9;
then Bound2Lipschitz((vseq.n),X)=vseq.n by Th29;
then |.h1.t.|= |.f1.t-g1.t.| by Th40;
hence |.h1.t.| <=e by A78,A77,XXREAL_0:2;
end;
A79: now
let r be Real;
assume r in PreNorms h1;
then ex t be VECTOR of X st r=|.h1.t.| & ||.t.|| <= 1;
hence r <=e by A76;
end;
(for s be Real st s in PreNorms h1 holds s <= e) implies
upper_bound PreNorms h1 <=e by SEQ_4:45;
hence ||.vseq.n-tv.|| <=e by A79,Th30;
end;
hence thesis;
end;
for e be Real st e > 0 ex m be Nat st for n be Nat st n >= m
holds ||.(vseq.n) - tv.|| < e
proof
let e be Real;
assume A81: e > 0; then
consider m be Nat such that
A82: for n be Nat st n >= m holds ||.(vseq.n) - tv.|| <= e/2 by A72;
take m;
hereby let n be Nat;
assume n >= m;
then ||.(vseq.n) - tv.|| <= e/2 & e/2 < e by A82,A81,XREAL_1:216;
hence ||.(vseq.n) - tv.|| < e by XXREAL_0:2;
end;
end;
hence thesis;
end;
theorem Th43:
for X be RealNormSpace holds DualSp X is RealBanachSpace
proof
let X be RealNormSpace;
for seq be sequence of DualSp X st seq
is Cauchy_sequence_by_Norm holds seq is convergent by Th42;
hence thesis by LOPBAN_1:def 15;
end;
registration
let X be RealNormSpace;
cluster DualSp X -> complete;
coherence by Th43;
end;
begin :: Hahn-Banach's Extension Theorem
definition
let V be RealNormSpace;
mode SubRealNormSpace of V -> RealNormSpace means :DefSubSP:
the carrier of it c= the carrier of V
& 0.it = 0.V
& the addF of it = (the addF of V)||the carrier of it
& the Mult of it = (the Mult of V) | [:REAL, the carrier of it:]
& the normF of it = (the normF of V) | (the carrier of it);
existence
proof
the addF of V = (the addF of V)||the carrier of V
& the Mult of V = (the Mult of V) | [:REAL, the carrier of V:]
& the normF of V = (the normF of V) | (the carrier of V);
hence thesis;
end;
end;
theorem Th44:
for V be RealNormSpace, X be SubRealNormSpace of V,
f be Lipschitzian linear-Functional of X,
F be Point of DualSp X
st f = F holds
ex g be Lipschitzian linear-Functional of V, G be Point of DualSp V
st g = G & g|(the carrier of X) = f & ||.G.||=||.F.||
proof
let V be RealNormSpace, X be SubRealNormSpace of V,
f be Lipschitzian linear-Functional of X,
F be Point of DualSp X such that
A1:f=F;
reconsider X0 = X as RealLinearSpace;
B1: the carrier of X0 c= the carrier of V
& 0.X0 = 0.V
& the addF of X0 = (the addF of V)||the carrier of X0
& the Mult of X0 = (the Mult of V) | [:REAL, the carrier of X0:]
by DefSubSP; then
reconsider X0 as Subspace of V by RLSUB_1:def 2;
reconsider fi0=f as linear-Functional of X0;
deffunc F(Element of the carrier of V) = ||.F.|| * ||.$1.||;
D0:for v be Element of the carrier of V
holds F(v) in REAL by XREAL_0:def 1;
consider q be Function of the carrier of V,REAL such that
D1: for v be Element of the carrier of V holds q.v = F(v)
from FUNCT_2:sch 8(D0);
q is Banach-Functional of V
proof
E0: q is subadditive
proof
let x,y be VECTOR of V;
E2: q.x = ||.F.|| * ||.x.|| & q.y = ||.F.|| * ||.y.|| by D1;
||.F.|| * ||.x+y.|| <= ||.F.|| * (||.x.|| + ||.y.||)
by XREAL_1:64,NORMSP_1:def 1;
hence thesis by D1,E2;
end;
q is absolutely_homogeneous
proof
let x be VECTOR of V, r be Real;
E5: ||.r*x.|| = |.r.| * ||.x.|| by NORMSP_1:def 1;
q.(r*x) = ||.F.|| * ||.r*x.|| by D1
.= |.r.| * (||.F.|| * ||.x.||) by E5;
hence thesis by D1;
end;
hence thesis by E0;
end; then
reconsider q as Banach-Functional of V;
for x be VECTOR of X0, v be VECTOR of V st x=v holds fi0.x <= q.v
proof
let x0 be VECTOR of X0, v be VECTOR of V;
assume D21: x0=v;
reconsider x=x0 as VECTOR of X;
D22: fi0.x0 <= |. fi0.x0 .| by ABSVALUE:4;
D23:|. fi0.x .| <= ||.F.|| * ||.x.|| by A1,Th32;
||.x.|| = ((the normF of V) | (the carrier of X)).v by D21,DefSubSP
.= ||.v.|| by FUNCT_1:49,D21;
then
|. fi0.x0 .| <= q.v by D1,D23;
hence thesis by D22,XXREAL_0:2;
end; then
consider g be linear-Functional of V such that
A3: g|the carrier of X0=fi0 &
for x be VECTOR of V holds g.x <= q.x by HAHNBAN:22;
B4: for x be VECTOR of V holds |. g.x .| <= ||.F.|| * ||.x.||
proof
let x be VECTOR of V;
g.x <= q.x by A3; then
A31: g.x <= ||.F.|| * ||.x.|| by D1;
A32: -(g.x) = (-1)* (g.x)
.= g.((-1)*x) by HAHNBAN:def 3;
g.((-1)*x) <= q.((-1)*x) by A3;
then g.((-1)*x) <= ||.F.|| * ||.(-1)*x.|| by D1;
then g.((-1)*x) <= ||.F.|| * ||.-x.|| by RLVECT_1:16;
then -(g.x) <= ||.F.|| * ||.x.|| by A32,NORMSP_1:2;
then - (||.F.|| * ||.x.||) <= g.x by XREAL_1:26;
hence thesis by ABSVALUE:5,A31;
end;
then
reconsider g as Lipschitzian linear-Functional of V by Def8;
reconsider G=g as Point of DualSp V by Def9;
now let r be Real;
assume r in PreNorms g; then
consider t be VECTOR of V such that
C1: r = |.g.t.| and
C2: ||.t.|| <= 1;
C3: |.g.t.| <= ||.F.|| * ||.t.|| by B4;
||.F.|| * ||.t.|| <= ||.F.|| * 1 by C2,XREAL_1:64;
hence r <= ||.F.|| by C1,C3,XXREAL_0:2;
end; then
upper_bound PreNorms g
<= (BoundedLinearFunctionalsNorm X).f by A1,SEQ_4:45;
then
A41: (BoundedLinearFunctionalsNorm V).g
<= (BoundedLinearFunctionalsNorm X).f by Th30;
now let r be object;
assume r in PreNorms f; then
consider t be VECTOR of X such that
C1: r = |.f.t.| and
C2: ||.t.|| <= 1;
reconsider td=t as VECTOR of V by B1;
||.t.|| = ((the normF of V) | (the carrier of X)).td by DefSubSP
.= ||.td.|| by FUNCT_1:49;
then
r = |.g.td.| & ||.td.|| <= 1 by C1,A3,FUNCT_1:49,C2;
hence r in PreNorms g;
end; then
A42: PreNorms f c= PreNorms g;
upper_bound PreNorms f
<= upper_bound PreNorms g by A42,SEQ_4:48; then
(BoundedLinearFunctionalsNorm X).f
<= upper_bound PreNorms g by Th30; then
B4: (BoundedLinearFunctionalsNorm X).f
<= (BoundedLinearFunctionalsNorm V).g by Th30;
take g,G;
thus thesis by A3,A1,A41,XXREAL_0:1,B4;
end;
::$N Hahn-Banach's extension theorem (real normed spaces)
theorem
for V be RealNormSpace, X be SubRealNormSpace of V,
f be Lipschitzian linear-Functional of X,
F be Point of DualSp X
st ( f = F & for x be VECTOR of X, v be VECTOR of V
st x=v holds f.x <= ||.v.|| )
holds
ex g be Lipschitzian linear-Functional of V, G be Point of DualSp V
st g = G & g|(the carrier of X) = f
& for x be VECTOR of V holds g.x <= ||.x.|| & ||.G.||=||.F.||
proof
let V be RealNormSpace, X be SubRealNormSpace of V,
f be Lipschitzian linear-Functional of X,
F be Point of DualSp X such that
A11: f=F and
A12: for x be VECTOR of X, v be VECTOR of V st x=v
holds f.x <= ||.v.||;
consider g be Lipschitzian linear-Functional of V,
G be Point of DualSp V such that
A2: g=G &
g|the carrier of X=f & ||.G.||=||.F.|| by A11,Th44;
reconsider X0 = X as RealLinearSpace;
B1: the carrier of X0 c= the carrier of V
& 0.X0 = 0.V
& the addF of X0 = (the addF of V)||the carrier of X0
& the Mult of X0 = (the Mult of V) | [:REAL, the carrier of X0:]
by DefSubSP;
now let r be Real;
assume r in PreNorms f; then
consider t be VECTOR of X such that
C1: r = |.f.t.| & ||.t.|| <= 1;
reconsider td=t as VECTOR of V by B1;
C7: ||.t.|| = ((the normF of V) | (the carrier of X)).td by DefSubSP
.= ||.td.|| by FUNCT_1:49;
C5: -(f.t) = (-1)* (f.t)
.= f.((-1)*t) by HAHNBAN:def 3;
reconsider t0=t as VECTOR of X0;
D6: X0 is Subspace of V by B1,RLSUB_1:def 2;
(-1)*td = -td & (-1)*t = -t by RLVECT_1:16; then
(-1)*td = (-1)*t by RLSUB_1:15,D6; then
f.((-1)*t) <= ||.(-1)*td.|| by A12; then
f.((-1)*t) <= ||.-td.|| by RLVECT_1:16; then
-(f.t) <= ||.td.|| by C5,NORMSP_1:2; then
- (||.td.||) <= f.t by XREAL_1:26; then
|.f.t.| <= ||.td.|| by A12,ABSVALUE:5;
hence r <= 1 by C1,C7,XXREAL_0:2;
end; then
upper_bound PreNorms f <= 1 by SEQ_4:45; then
A3: ||.G.|| <= 1 by A2,A11,Th30;
for x be VECTOR of V holds g.x <= ||.x.||
proof
let x be VECTOR of V;
C1: g.x <= |.g.x.| by ABSVALUE:4;
|.g.x.| <= ||.G.|| * ||.x.|| by A2,Th32; then
C2: g.x <= ||.G.|| * ||.x.|| by C1,XXREAL_0:2;
||.G.|| * ||.x.|| <= 1 * ||.x.|| by A3,XREAL_1:64;
hence thesis by C2,XXREAL_0:2;
end;
hence thesis by A2;
end;