:: NORMSP_1 semantic presentation

definition
attr a1 is strict;
struct NORMSTR -> RLSStruct ;
aggr NORMSTR(# carrier, Zero, add, Mult, norm #) -> NORMSTR ;
sel norm c1 -> Function of the carrier of a1, REAL ;
end;

registration
cluster non empty NORMSTR ;
existence
not for b1 being NORMSTR holds b1 is empty
proof end;
end;

deffunc H1( NORMSTR ) -> Element of the carrier of a1 = 0. a1;

definition
let c1 be non empty NORMSTR ;
let c2 be Point of c1;
func ||.c2.|| -> Real equals :: NORMSP_1:def 1
the norm of a1 . a2;
coherence
the norm of c1 . c2 is Real
;
end;

:: deftheorem Def1 defines ||. NORMSP_1:def 1 :
for b1 being non empty NORMSTR
for b2 being Point of b1 holds ||.b2.|| = the norm of b1 . b2;

consider c1 being RealLinearSpace;

Lemma1: the carrier of ((0). c1) = {(0. c1)}
by RLSUB_1:def 3;

reconsider c2 = the carrier of ((0). c1) --> 0 as Function of the carrier of ((0). c1), REAL by FUNCOP_1:57;

Lemma2: for b1 being VECTOR of ((0). c1) holds c2 . b1 = 0
by FUNCOP_1:13;

0. c1 is VECTOR of ((0). c1)
by Lemma1, TARSKI:def 1;

then Lemma3: c2 . (0. c1) = 0
by Lemma2;

Lemma4: for b1 being VECTOR of ((0). c1)
for b2 being Real holds c2 . (b2 * b1) = (abs b2) * (c2 . b1)
proof end;

Lemma5: for b1, b2 being VECTOR of ((0). c1) holds c2 . (b1 + b2) <= (c2 . b1) + (c2 . b2)
proof end;

reconsider c3 = NORMSTR(# the carrier of ((0). c1),the Zero of ((0). c1),the add of ((0). c1),the Mult of ((0). c1),c2 #) as non empty NORMSTR by STRUCT_0:def 1;

E6: now
let c4, c5 be Point of c3;
let c6 be Real;
reconsider c7 = c4, c8 = c5 as VECTOR of ((0). c1) ;
thus ( ||.c4.|| = 0 iff c4 = H1(c3) )
proof
H1(c3) = the Zero of c3
.= 0. ((0). c1)
.= 0. c1 by RLSUB_1:19 ;
hence ( ||.c4.|| = 0 iff c4 = H1(c3) ) by Lemma1, Lemma3, TARSKI:def 1;
end;
c6 * c4 = the Mult of c3 . [c6,c7]
.= c6 * c7 ;
hence ||.(c6 * c4).|| = (abs c6) * ||.c4.|| by Lemma4;
c4 + c5 = the add of c3 . [c4,c5]
.= c7 + c8 ;
hence ||.(c4 + c5).|| <= ||.c4.|| + ||.c5.|| by Lemma5;
end;

definition
let c4 be non empty NORMSTR ;
attr a1 is RealNormSpace-like means :Def2: :: NORMSP_1:def 2
for b1, b2 being Point of a1
for b3 being Real holds
( ( ||.b1.|| = 0 implies b1 = 0. a1 ) & ( b1 = 0. a1 implies ||.b1.|| = 0 ) & ||.(b3 * b1).|| = (abs b3) * ||.b1.|| & ||.(b1 + b2).|| <= ||.b1.|| + ||.b2.|| );
end;

:: deftheorem Def2 defines RealNormSpace-like NORMSP_1:def 2 :
for b1 being non empty NORMSTR holds
( b1 is RealNormSpace-like iff for b2, b3 being Point of b1
for b4 being Real holds
( ( ||.b2.|| = 0 implies b2 = 0. b1 ) & ( b2 = 0. b1 implies ||.b2.|| = 0 ) & ||.(b4 * b2).|| = (abs b4) * ||.b2.|| & ||.(b2 + b3).|| <= ||.b2.|| + ||.b3.|| ) );

registration
cluster non empty Abelian add-associative right_zeroed right_complementable RealLinearSpace-like strict RealNormSpace-like NORMSTR ;
existence
ex b1 being non empty NORMSTR st
( b1 is RealNormSpace-like & b1 is RealLinearSpace-like & b1 is Abelian & b1 is add-associative & b1 is right_zeroed & b1 is right_complementable & b1 is strict )
proof end;
end;

definition
mode RealNormSpace is non empty Abelian add-associative right_zeroed right_complementable RealLinearSpace-like RealNormSpace-like NORMSTR ;
end;

theorem Th1: :: NORMSP_1:1
canceled;

theorem Th2: :: NORMSP_1:2
canceled;

theorem Th3: :: NORMSP_1:3
canceled;

theorem Th4: :: NORMSP_1:4
canceled;

theorem Th5: :: NORMSP_1:5
for b1 being RealNormSpace holds ||.(0. b1).|| = 0 by Def2;

theorem Th6: :: NORMSP_1:6
for b1 being RealNormSpace
for b2 being Point of b1 holds ||.(- b2).|| = ||.b2.||
proof end;

theorem Th7: :: NORMSP_1:7
for b1 being RealNormSpace
for b2, b3 being Point of b1 holds ||.(b2 - b3).|| <= ||.b2.|| + ||.b3.||
proof end;

theorem Th8: :: NORMSP_1:8
for b1 being RealNormSpace
for b2 being Point of b1 holds 0 <= ||.b2.||
proof end;

theorem Th9: :: NORMSP_1:9
for b1, b2 being Real
for b3 being RealNormSpace
for b4, b5 being Point of b3 holds ||.((b1 * b4) + (b2 * b5)).|| <= ((abs b1) * ||.b4.||) + ((abs b2) * ||.b5.||)
proof end;

theorem Th10: :: NORMSP_1:10
for b1 being RealNormSpace
for b2, b3 being Point of b1 holds
( ||.(b2 - b3).|| = 0 iff b2 = b3 )
proof end;

theorem Th11: :: NORMSP_1:11
for b1 being RealNormSpace
for b2, b3 being Point of b1 holds ||.(b2 - b3).|| = ||.(b3 - b2).||
proof end;

theorem Th12: :: NORMSP_1:12
for b1 being RealNormSpace
for b2, b3 being Point of b1 holds ||.b2.|| - ||.b3.|| <= ||.(b2 - b3).||
proof end;

theorem Th13: :: NORMSP_1:13
for b1 being RealNormSpace
for b2, b3 being Point of b1 holds abs (||.b2.|| - ||.b3.||) <= ||.(b2 - b3).||
proof end;

theorem Th14: :: NORMSP_1:14
for b1 being RealNormSpace
for b2, b3, b4 being Point of b1 holds ||.(b2 - b3).|| <= ||.(b2 - b4).|| + ||.(b4 - b3).||
proof end;

theorem Th15: :: NORMSP_1:15
for b1 being RealNormSpace
for b2, b3 being Point of b1 st b2 <> b3 holds
||.(b2 - b3).|| <> 0 by Th10;

definition
let c4 be 1-sorted ;
mode sequence of a1 is Function of NAT ,the carrier of a1;
end;

theorem Th16: :: NORMSP_1:16
canceled;

theorem Th17: :: NORMSP_1:17
for b1 being Function
for b2 being non empty 1-sorted
for b3 being Element of b2 holds
( b1 is sequence of b2 iff ( dom b1 = NAT & ( for b4 being set st b4 in NAT holds
b1 . b4 is Element of b2 ) ) )
proof end;

theorem Th18: :: NORMSP_1:18
canceled;

theorem Th19: :: NORMSP_1:19
for b1 being non empty 1-sorted
for b2 being Element of b1 ex b3 being sequence of b1 st rng b3 = {b2}
proof end;

theorem Th20: :: NORMSP_1:20
for b1 being non empty 1-sorted
for b2 being sequence of b1 st ex b3 being Element of b1 st
for b4 being Nat holds b2 . b4 = b3 holds
ex b3 being Element of b1 st rng b2 = {b3}
proof end;

theorem Th21: :: NORMSP_1:21
for b1 being non empty 1-sorted
for b2 being sequence of b1 st ex b3 being Element of b1 st rng b2 = {b3} holds
for b3 being Nat holds b2 . b3 = b2 . (b3 + 1)
proof end;

theorem Th22: :: NORMSP_1:22
for b1 being non empty 1-sorted
for b2 being sequence of b1 st ( for b3 being Nat holds b2 . b3 = b2 . (b3 + 1) ) holds
for b3, b4 being Nat holds b2 . b3 = b2 . (b3 + b4)
proof end;

theorem Th23: :: NORMSP_1:23
for b1 being non empty 1-sorted
for b2 being sequence of b1 st ( for b3, b4 being Nat holds b2 . b3 = b2 . (b3 + b4) ) holds
for b3, b4 being Nat holds b2 . b3 = b2 . b4
proof end;

theorem Th24: :: NORMSP_1:24
for b1 being non empty 1-sorted
for b2 being sequence of b1 st ( for b3, b4 being Nat holds b2 . b3 = b2 . b4 ) holds
ex b3 being Element of b1 st
for b4 being Nat holds b2 . b4 = b3
proof end;

theorem Th25: :: NORMSP_1:25
for b1 being RealNormSpace ex b2 being sequence of b1 st rng b2 = {(0. b1)} by Th19;

definition
let c4 be non empty 1-sorted ;
let c5 be sequence of c4;
canceled;
redefine attr constant as a2 is constant means :Def4: :: NORMSP_1:def 4
ex b1 being Element of a1 st
for b2 being Nat holds a2 . b2 = b1;
compatibility
( c5 is constant iff ex b1 being Element of c4 st
for b2 being Nat holds c5 . b2 = b1 )
proof end;
end;

:: deftheorem Def3 NORMSP_1:def 3 :
canceled;

:: deftheorem Def4 defines constant NORMSP_1:def 4 :
for b1 being non empty 1-sorted
for b2 being sequence of b1 holds
( b2 is constant iff ex b3 being Element of b1 st
for b4 being Nat holds b2 . b4 = b3 );

theorem Th26: :: NORMSP_1:26
canceled;

theorem Th27: :: NORMSP_1:27
for b1 being non empty 1-sorted
for b2 being sequence of b1 holds
( b2 is constant iff ex b3 being Element of b1 st rng b2 = {b3} )
proof end;

Lemma23: for b1 being non empty 1-sorted
for b2 being sequence of b1
for b3 being Nat holds b2 . b3 is Element of b1
;

definition
let c4 be non empty 1-sorted ;
let c5 be sequence of c4;
let c6 be Nat;
redefine func . as c2 . c3 -> Element of a1;
coherence
c5 . c6 is Element of c4
by Lemma23;
end;

definition
let c4 be RealLinearSpace;
let c5, c6 be sequence of c4;
func c2 + c3 -> sequence of a1 means :Def5: :: NORMSP_1:def 5
for b1 being Nat holds a4 . b1 = (a2 . b1) + (a3 . b1);
existence
ex b1 being sequence of c4 st
for b2 being Nat holds b1 . b2 = (c5 . b2) + (c6 . b2)
proof end;
uniqueness
for b1, b2 being sequence of c4 st ( for b3 being Nat holds b1 . b3 = (c5 . b3) + (c6 . b3) ) & ( for b3 being Nat holds b2 . b3 = (c5 . b3) + (c6 . b3) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def5 defines + NORMSP_1:def 5 :
for b1 being RealLinearSpace
for b2, b3, b4 being sequence of b1 holds
( b4 = b2 + b3 iff for b5 being Nat holds b4 . b5 = (b2 . b5) + (b3 . b5) );

definition
let c4 be RealLinearSpace;
let c5, c6 be sequence of c4;
func c2 - c3 -> sequence of a1 means :Def6: :: NORMSP_1:def 6
for b1 being Nat holds a4 . b1 = (a2 . b1) - (a3 . b1);
existence
ex b1 being sequence of c4 st
for b2 being Nat holds b1 . b2 = (c5 . b2) - (c6 . b2)
proof end;
uniqueness
for b1, b2 being sequence of c4 st ( for b3 being Nat holds b1 . b3 = (c5 . b3) - (c6 . b3) ) & ( for b3 being Nat holds b2 . b3 = (c5 . b3) - (c6 . b3) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def6 defines - NORMSP_1:def 6 :
for b1 being RealLinearSpace
for b2, b3, b4 being sequence of b1 holds
( b4 = b2 - b3 iff for b5 being Nat holds b4 . b5 = (b2 . b5) - (b3 . b5) );

definition
let c4 be RealLinearSpace;
let c5 be sequence of c4;
let c6 be Element of c4;
func c2 - c3 -> sequence of a1 means :Def7: :: NORMSP_1:def 7
for b1 being Nat holds a4 . b1 = (a2 . b1) - a3;
existence
ex b1 being sequence of c4 st
for b2 being Nat holds b1 . b2 = (c5 . b2) - c6
proof end;
uniqueness
for b1, b2 being sequence of c4 st ( for b3 being Nat holds b1 . b3 = (c5 . b3) - c6 ) & ( for b3 being Nat holds b2 . b3 = (c5 . b3) - c6 ) holds
b1 = b2
proof end;
end;

:: deftheorem Def7 defines - NORMSP_1:def 7 :
for b1 being RealLinearSpace
for b2 being sequence of b1
for b3 being Element of b1
for b4 being sequence of b1 holds
( b4 = b2 - b3 iff for b5 being Nat holds b4 . b5 = (b2 . b5) - b3 );

definition
let c4 be RealLinearSpace;
let c5 be sequence of c4;
let c6 be Real;
func c3 * c2 -> sequence of a1 means :Def8: :: NORMSP_1:def 8
for b1 being Nat holds a4 . b1 = a3 * (a2 . b1);
existence
ex b1 being sequence of c4 st
for b2 being Nat holds b1 . b2 = c6 * (c5 . b2)
proof end;
uniqueness
for b1, b2 being sequence of c4 st ( for b3 being Nat holds b1 . b3 = c6 * (c5 . b3) ) & ( for b3 being Nat holds b2 . b3 = c6 * (c5 . b3) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def8 defines * NORMSP_1:def 8 :
for b1 being RealLinearSpace
for b2 being sequence of b1
for b3 being Real
for b4 being sequence of b1 holds
( b4 = b3 * b2 iff for b5 being Nat holds b4 . b5 = b3 * (b2 . b5) );

definition
let c4 be RealNormSpace;
let c5 be sequence of c4;
attr a2 is convergent means :Def9: :: NORMSP_1:def 9
ex b1 being Point of a1 st
for b2 being Real st 0 < b2 holds
ex b3 being Nat st
for b4 being Nat st b3 <= b4 holds
||.((a2 . b4) - b1).|| < b2;
end;

:: deftheorem Def9 defines convergent NORMSP_1:def 9 :
for b1 being RealNormSpace
for b2 being sequence of b1 holds
( b2 is convergent iff ex b3 being Point of b1 st
for b4 being Real st 0 < b4 holds
ex b5 being Nat st
for b6 being Nat st b5 <= b6 holds
||.((b2 . b6) - b3).|| < b4 );

theorem Th28: :: NORMSP_1:28
canceled;

theorem Th29: :: NORMSP_1:29
canceled;

theorem Th30: :: NORMSP_1:30
canceled;

theorem Th31: :: NORMSP_1:31
canceled;

theorem Th32: :: NORMSP_1:32
canceled;

theorem Th33: :: NORMSP_1:33
canceled;

theorem Th34: :: NORMSP_1:34
for b1 being RealNormSpace
for b2, b3 being sequence of b1 st b2 is convergent & b3 is convergent holds
b2 + b3 is convergent
proof end;

theorem Th35: :: NORMSP_1:35
for b1 being RealNormSpace
for b2, b3 being sequence of b1 st b2 is convergent & b3 is convergent holds
b2 - b3 is convergent
proof end;

theorem Th36: :: NORMSP_1:36
for b1 being RealNormSpace
for b2 being Point of b1
for b3 being sequence of b1 st b3 is convergent holds
b3 - b2 is convergent
proof end;

theorem Th37: :: NORMSP_1:37
for b1 being Real
for b2 being RealNormSpace
for b3 being sequence of b2 st b3 is convergent holds
b1 * b3 is convergent
proof end;

definition
let c4 be RealNormSpace;
let c5 be sequence of c4;
func ||.c2.|| -> Real_Sequence means :Def10: :: NORMSP_1:def 10
for b1 being Nat holds a3 . b1 = ||.(a2 . b1).||;
existence
ex b1 being Real_Sequence st
for b2 being Nat holds b1 . b2 = ||.(c5 . b2).||
proof end;
uniqueness
for b1, b2 being Real_Sequence st ( for b3 being Nat holds b1 . b3 = ||.(c5 . b3).|| ) & ( for b3 being Nat holds b2 . b3 = ||.(c5 . b3).|| ) holds
b1 = b2
proof end;
end;

:: deftheorem Def10 defines ||. NORMSP_1:def 10 :
for b1 being RealNormSpace
for b2 being sequence of b1
for b3 being Real_Sequence holds
( b3 = ||.b2.|| iff for b4 being Nat holds b3 . b4 = ||.(b2 . b4).|| );

theorem Th38: :: NORMSP_1:38
canceled;

theorem Th39: :: NORMSP_1:39
for b1 being RealNormSpace
for b2 being sequence of b1 st b2 is convergent holds
||.b2.|| is convergent
proof end;

definition
let c4 be RealNormSpace;
let c5 be sequence of c4;
assume E35: c5 is convergent ;
func lim c2 -> Point of a1 means :Def11: :: NORMSP_1:def 11
for b1 being Real st 0 < b1 holds
ex b2 being Nat st
for b3 being Nat st b2 <= b3 holds
||.((a2 . b3) - a3).|| < b1;
existence
ex b1 being Point of c4 st
for b2 being Real st 0 < b2 holds
ex b3 being Nat st
for b4 being Nat st b3 <= b4 holds
||.((c5 . b4) - b1).|| < b2
by E35, Def9;
uniqueness
for b1, b2 being Point of c4 st ( for b3 being Real st 0 < b3 holds
ex b4 being Nat st
for b5 being Nat st b4 <= b5 holds
||.((c5 . b5) - b1).|| < b3 ) & ( for b3 being Real st 0 < b3 holds
ex b4 being Nat st
for b5 being Nat st b4 <= b5 holds
||.((c5 . b5) - b2).|| < b3 ) holds
b1 = b2
proof end;
end;

:: deftheorem Def11 defines lim NORMSP_1:def 11 :
for b1 being RealNormSpace
for b2 being sequence of b1 st b2 is convergent holds
for b3 being Point of b1 holds
( b3 = lim b2 iff for b4 being Real st 0 < b4 holds
ex b5 being Nat st
for b6 being Nat st b5 <= b6 holds
||.((b2 . b6) - b3).|| < b4 );

theorem Th40: :: NORMSP_1:40
canceled;

theorem Th41: :: NORMSP_1:41
for b1 being RealNormSpace
for b2 being Point of b1
for b3 being sequence of b1 st b3 is convergent & lim b3 = b2 holds
( ||.(b3 - b2).|| is convergent & lim ||.(b3 - b2).|| = 0 )
proof end;

theorem Th42: :: NORMSP_1:42
for b1 being RealNormSpace
for b2, b3 being sequence of b1 st b2 is convergent & b3 is convergent holds
lim (b2 + b3) = (lim b2) + (lim b3)
proof end;

theorem Th43: :: NORMSP_1:43
for b1 being RealNormSpace
for b2, b3 being sequence of b1 st b2 is convergent & b3 is convergent holds
lim (b2 - b3) = (lim b2) - (lim b3)
proof end;

theorem Th44: :: NORMSP_1:44
for b1 being RealNormSpace
for b2 being Point of b1
for b3 being sequence of b1 st b3 is convergent holds
lim (b3 - b2) = (lim b3) - b2
proof end;

theorem Th45: :: NORMSP_1:45
for b1 being Real
for b2 being RealNormSpace
for b3 being sequence of b2 st b3 is convergent holds
lim (b1 * b3) = b1 * (lim b3)
proof end;