begin
definition
let X,
Y be non
empty RLSStruct ;
func Add_in_Prod_of_RLS (
X,
Y)
-> BinOp of
[: the carrier of X, the carrier of Y:] means :
Def1:
for
z1,
z2 being
Element of
[: the carrier of X, the carrier of Y:] for
x1,
x2 being
VECTOR of
X for
y1,
y2 being
VECTOR of
Y st
z1 = [x1,y1] &
z2 = [x2,y2] holds
it . (
z1,
z2)
= [( the addF of X . [x1,x2]),( the addF of Y . [y1,y2])];
existence
ex b1 being BinOp of [: the carrier of X, the carrier of Y:] st
for z1, z2 being Element of [: the carrier of X, the carrier of Y:]
for x1, x2 being VECTOR of X
for y1, y2 being VECTOR of Y st z1 = [x1,y1] & z2 = [x2,y2] holds
b1 . (z1,z2) = [( the addF of X . [x1,x2]),( the addF of Y . [y1,y2])]
uniqueness
for b1, b2 being BinOp of [: the carrier of X, the carrier of Y:] st ( for z1, z2 being Element of [: the carrier of X, the carrier of Y:]
for x1, x2 being VECTOR of X
for y1, y2 being VECTOR of Y st z1 = [x1,y1] & z2 = [x2,y2] holds
b1 . (z1,z2) = [( the addF of X . [x1,x2]),( the addF of Y . [y1,y2])] ) & ( for z1, z2 being Element of [: the carrier of X, the carrier of Y:]
for x1, x2 being VECTOR of X
for y1, y2 being VECTOR of Y st z1 = [x1,y1] & z2 = [x2,y2] holds
b2 . (z1,z2) = [( the addF of X . [x1,x2]),( the addF of Y . [y1,y2])] ) holds
b1 = b2
end;
:: deftheorem Def1 defines Add_in_Prod_of_RLS CONVFUN1:def 1 :
for X, Y being non empty RLSStruct
for b3 being BinOp of [: the carrier of X, the carrier of Y:] holds
( b3 = Add_in_Prod_of_RLS (X,Y) iff for z1, z2 being Element of [: the carrier of X, the carrier of Y:]
for x1, x2 being VECTOR of X
for y1, y2 being VECTOR of Y st z1 = [x1,y1] & z2 = [x2,y2] holds
b3 . (z1,z2) = [( the addF of X . [x1,x2]),( the addF of Y . [y1,y2])] );
definition
let X,
Y be non
empty RLSStruct ;
func Mult_in_Prod_of_RLS (
X,
Y)
-> Function of
[:REAL,[: the carrier of X, the carrier of Y:]:],
[: the carrier of X, the carrier of Y:] means :
Def2:
for
a being
Real for
z being
Element of
[: the carrier of X, the carrier of Y:] for
x being
VECTOR of
X for
y being
VECTOR of
Y st
z = [x,y] holds
it . (
a,
z)
= [( the Mult of X . [a,x]),( the Mult of Y . [a,y])];
existence
ex b1 being Function of [:REAL,[: the carrier of X, the carrier of Y:]:],[: the carrier of X, the carrier of Y:] st
for a being Real
for z being Element of [: the carrier of X, the carrier of Y:]
for x being VECTOR of X
for y being VECTOR of Y st z = [x,y] holds
b1 . (a,z) = [( the Mult of X . [a,x]),( the Mult of Y . [a,y])]
uniqueness
for b1, b2 being Function of [:REAL,[: the carrier of X, the carrier of Y:]:],[: the carrier of X, the carrier of Y:] st ( for a being Real
for z being Element of [: the carrier of X, the carrier of Y:]
for x being VECTOR of X
for y being VECTOR of Y st z = [x,y] holds
b1 . (a,z) = [( the Mult of X . [a,x]),( the Mult of Y . [a,y])] ) & ( for a being Real
for z being Element of [: the carrier of X, the carrier of Y:]
for x being VECTOR of X
for y being VECTOR of Y st z = [x,y] holds
b2 . (a,z) = [( the Mult of X . [a,x]),( the Mult of Y . [a,y])] ) holds
b1 = b2
end;
:: deftheorem Def2 defines Mult_in_Prod_of_RLS CONVFUN1:def 2 :
for X, Y being non empty RLSStruct
for b3 being Function of [:REAL,[: the carrier of X, the carrier of Y:]:],[: the carrier of X, the carrier of Y:] holds
( b3 = Mult_in_Prod_of_RLS (X,Y) iff for a being Real
for z being Element of [: the carrier of X, the carrier of Y:]
for x being VECTOR of X
for y being VECTOR of Y st z = [x,y] holds
b3 . (a,z) = [( the Mult of X . [a,x]),( the Mult of Y . [a,y])] );
definition
let X,
Y be non
empty RLSStruct ;
func Prod_of_RLS (
X,
Y)
-> RLSStruct equals
RLSStruct(#
[: the carrier of X, the carrier of Y:],
[(0. X),(0. Y)],
(Add_in_Prod_of_RLS (X,Y)),
(Mult_in_Prod_of_RLS (X,Y)) #);
correctness
coherence
RLSStruct(# [: the carrier of X, the carrier of Y:],[(0. X),(0. Y)],(Add_in_Prod_of_RLS (X,Y)),(Mult_in_Prod_of_RLS (X,Y)) #) is RLSStruct ;
;
end;
:: deftheorem defines Prod_of_RLS CONVFUN1:def 3 :
for X, Y being non empty RLSStruct holds Prod_of_RLS (X,Y) = RLSStruct(# [: the carrier of X, the carrier of Y:],[(0. X),(0. Y)],(Add_in_Prod_of_RLS (X,Y)),(Mult_in_Prod_of_RLS (X,Y)) #);
theorem
theorem Th2:
theorem Th3:
begin
:: deftheorem defines RLS_Real CONVFUN1:def 4 :
RLS_Real = RLSStruct(# REAL,0,addreal,multreal #);
Lm1:
for X being non empty RLSStruct
for x being VECTOR of X
for u being VECTOR of (Prod_of_RLS (X,RLS_Real))
for p, w being Real st u = [x,w] holds
p * u = [(p * x),(p * w)]
Lm2:
for X being non empty RLSStruct
for x1, x2 being VECTOR of X
for w1, w2 being Real
for u1, u2 being VECTOR of (Prod_of_RLS (X,RLS_Real)) st u1 = [x1,w1] & u2 = [x2,w2] holds
u1 + u2 = [(x1 + x2),(w1 + w2)]
Lm3:
for a being FinSequence of the carrier of RLS_Real
for b being FinSequence of REAL st len a = len b & ( for i being Element of NAT st i in dom a holds
a . i = b . i ) holds
Sum a = Sum b
begin
:: deftheorem CONVFUN1:def 5 :
canceled;
Lm4:
for F being FinSequence of ExtREAL
for x being Element of ExtREAL holds Sum (F ^ <*x*>) = (Sum F) + x
Lm5:
for F being FinSequence of ExtREAL st not -infty in rng F holds
Sum F <> -infty
Lm6:
for F being FinSequence of ExtREAL st +infty in rng F & not -infty in rng F holds
Sum F = +infty
Lm7:
for a being FinSequence of ExtREAL
for b being FinSequence of REAL st len a = len b & ( for i being Element of NAT st i in dom a holds
a . i = b . i ) holds
Sum a = Sum b
Lm8:
for n being Element of NAT
for a being FinSequence of ExtREAL
for b being FinSequence of the carrier of RLS_Real st len a = n & len b = n & ( for i being Element of NAT st i in Seg n holds
a . i = b . i ) holds
Sum a = Sum b
theorem
canceled;
theorem
canceled;
theorem
canceled;
theorem
canceled;
theorem
canceled;
Lm9:
for F being FinSequence of ExtREAL st rng F c= {0.} holds
Sum F = 0.
Lm10:
for F being FinSequence of REAL st rng F c= {0} holds
Sum F = 0
Lm11:
for X being RealLinearSpace
for F being FinSequence of the carrier of X st rng F c= {(0. X)} holds
Sum F = 0. X
begin
:: deftheorem defines epigraph CONVFUN1:def 6 :
for X being non empty RLSStruct
for f being Function of the carrier of X,ExtREAL holds epigraph f = { [x,y] where x is Element of X, y is Element of REAL : f . x <= R_EAL y } ;
:: deftheorem Def7 defines convex CONVFUN1:def 7 :
for X being non empty RLSStruct
for f being Function of the carrier of X,ExtREAL holds
( f is convex iff epigraph f is convex );
Lm12:
for w1, w2 being R_eal
for wr1, wr2, p1, p2 being Real st w1 = wr1 & w2 = wr2 holds
(p1 * wr1) + (p2 * wr2) = ((R_EAL p1) * w1) + ((R_EAL p2) * w2)
theorem Th9:
theorem
begin
theorem
begin
theorem Th12:
begin
Lm13:
for X being RealLinearSpace
for f being Function of the carrier of X,ExtREAL
for n being non empty Element of NAT
for p being FinSequence of REAL
for F being FinSequence of ExtREAL
for y being FinSequence of the carrier of X st len F = n & ( for x being VECTOR of X holds f . x <> -infty ) & ( for i being Element of NAT st i in Seg n holds
( p . i >= 0 & F . i = (R_EAL (p . i)) * (f . (y /. i)) ) ) holds
not -infty in rng F
theorem Th13:
Lm14:
for F being FinSequence of REAL ex s being Permutation of (dom F) ex n being Element of NAT st
for i being Element of NAT st i in dom F holds
( i in Seg n iff F . (s . i) <> 0 )
theorem