:: LOPBAN_2 semantic presentation

definition
let c1 be non empty set ;
let c2, c3 be Element of Funcs c1,c1;
redefine func * as c3 * c2 -> Element of Funcs a1,a1;
coherence
c3 * c2 is Element of Funcs c1,c1
proof end;
end;

theorem Th1: :: LOPBAN_2:1
for b1, b2, b3 being RealLinearSpace
for b4 being LinearOperator of b1,b2
for b5 being LinearOperator of b2,b3 holds b5 * b4 is LinearOperator of b1,b3
proof end;

theorem Th2: :: LOPBAN_2:2
for b1, b2, b3 being RealNormSpace
for b4 being bounded LinearOperator of b1,b2
for b5 being bounded LinearOperator of b2,b3 holds
( b5 * b4 is bounded LinearOperator of b1,b3 & ( for b6 being VECTOR of b1 holds
( ||.((b5 * b4) . b6).|| <= (((BoundedLinearOperatorsNorm b2,b3) . b5) * ((BoundedLinearOperatorsNorm b1,b2) . b4)) * ||.b6.|| & (BoundedLinearOperatorsNorm b1,b3) . (b5 * b4) <= ((BoundedLinearOperatorsNorm b2,b3) . b5) * ((BoundedLinearOperatorsNorm b1,b2) . b4) ) ) )
proof end;

definition
let c1 be RealNormSpace;
let c2, c3 be bounded LinearOperator of c1,c1;
redefine func * as c3 * c2 -> bounded LinearOperator of a1,a1;
correctness
coherence
c3 * c2 is bounded LinearOperator of c1,c1
;
by Th2;
end;

definition
let c1 be RealNormSpace;
let c2, c3 be Element of BoundedLinearOperators c1,c1;
func c2 + c3 -> Element of BoundedLinearOperators a1,a1 equals :: LOPBAN_2:def 1
(Add_ (BoundedLinearOperators a1,a1),(R_VectorSpace_of_LinearOperators a1,a1)) . a2,a3;
correctness
coherence
(Add_ (BoundedLinearOperators c1,c1),(R_VectorSpace_of_LinearOperators c1,c1)) . c2,c3 is Element of BoundedLinearOperators c1,c1
;
;
end;

:: deftheorem Def1 defines + LOPBAN_2:def 1 :
for b1 being RealNormSpace
for b2, b3 being Element of BoundedLinearOperators b1,b1 holds b2 + b3 = (Add_ (BoundedLinearOperators b1,b1),(R_VectorSpace_of_LinearOperators b1,b1)) . b2,b3;

definition
let c1 be RealNormSpace;
let c2, c3 be Element of BoundedLinearOperators c1,c1;
func c3 * c2 -> Element of BoundedLinearOperators a1,a1 equals :: LOPBAN_2:def 2
(modetrans a3,a1,a1) * (modetrans a2,a1,a1);
correctness
coherence
(modetrans c3,c1,c1) * (modetrans c2,c1,c1) is Element of BoundedLinearOperators c1,c1
;
by LOPBAN_1:def 10;
end;

:: deftheorem Def2 defines * LOPBAN_2:def 2 :
for b1 being RealNormSpace
for b2, b3 being Element of BoundedLinearOperators b1,b1 holds b3 * b2 = (modetrans b3,b1,b1) * (modetrans b2,b1,b1);

definition
let c1 be RealNormSpace;
let c2 be Element of BoundedLinearOperators c1,c1;
let c3 be Real;
func c3 * c2 -> Element of BoundedLinearOperators a1,a1 equals :: LOPBAN_2:def 3
(Mult_ (BoundedLinearOperators a1,a1),(R_VectorSpace_of_LinearOperators a1,a1)) . a3,a2;
correctness
coherence
(Mult_ (BoundedLinearOperators c1,c1),(R_VectorSpace_of_LinearOperators c1,c1)) . c3,c2 is Element of BoundedLinearOperators c1,c1
;
;
end;

:: deftheorem Def3 defines * LOPBAN_2:def 3 :
for b1 being RealNormSpace
for b2 being Element of BoundedLinearOperators b1,b1
for b3 being Real holds b3 * b2 = (Mult_ (BoundedLinearOperators b1,b1),(R_VectorSpace_of_LinearOperators b1,b1)) . b3,b2;

definition
let c1 be RealNormSpace;
func FuncMult c1 -> BinOp of BoundedLinearOperators a1,a1 means :Def4: :: LOPBAN_2:def 4
for b1, b2 being Element of BoundedLinearOperators a1,a1 holds a2 . b1,b2 = b1 * b2;
existence
ex b1 being BinOp of BoundedLinearOperators c1,c1 st
for b2, b3 being Element of BoundedLinearOperators c1,c1 holds b1 . b2,b3 = b2 * b3
proof end;
uniqueness
for b1, b2 being BinOp of BoundedLinearOperators c1,c1 st ( for b3, b4 being Element of BoundedLinearOperators c1,c1 holds b1 . b3,b4 = b3 * b4 ) & ( for b3, b4 being Element of BoundedLinearOperators c1,c1 holds b2 . b3,b4 = b3 * b4 ) holds
b1 = b2
proof end;
end;

:: deftheorem Def4 defines FuncMult LOPBAN_2:def 4 :
for b1 being RealNormSpace
for b2 being BinOp of BoundedLinearOperators b1,b1 holds
( b2 = FuncMult b1 iff for b3, b4 being Element of BoundedLinearOperators b1,b1 holds b2 . b3,b4 = b3 * b4 );

theorem Th3: :: LOPBAN_2:3
for b1 being RealNormSpace holds id the carrier of b1 is bounded LinearOperator of b1,b1
proof end;

definition
let c1 be RealNormSpace;
func FuncUnit c1 -> Element of BoundedLinearOperators a1,a1 equals :: LOPBAN_2:def 5
id the carrier of a1;
coherence
id the carrier of c1 is Element of BoundedLinearOperators c1,c1
proof end;
end;

:: deftheorem Def5 defines FuncUnit LOPBAN_2:def 5 :
for b1 being RealNormSpace holds FuncUnit b1 = id the carrier of b1;

theorem Th4: :: LOPBAN_2:4
for b1 being RealNormSpace
for b2, b3, b4 being bounded LinearOperator of b1,b1 holds
( b4 = b2 * b3 iff for b5 being VECTOR of b1 holds b4 . b5 = b2 . (b3 . b5) )
proof end;

theorem Th5: :: LOPBAN_2:5
for b1 being RealNormSpace
for b2, b3, b4 being bounded LinearOperator of b1,b1 holds b2 * (b3 * b4) = (b2 * b3) * b4
proof end;

theorem Th6: :: LOPBAN_2:6
for b1 being RealNormSpace
for b2 being bounded LinearOperator of b1,b1 holds
( b2 * (id the carrier of b1) = b2 & (id the carrier of b1) * b2 = b2 )
proof end;

theorem Th7: :: LOPBAN_2:7
for b1 being RealNormSpace
for b2, b3, b4 being Element of BoundedLinearOperators b1,b1 holds b2 * (b3 * b4) = (b2 * b3) * b4
proof end;

theorem Th8: :: LOPBAN_2:8
for b1 being RealNormSpace
for b2 being Element of BoundedLinearOperators b1,b1 holds
( b2 * (FuncUnit b1) = b2 & (FuncUnit b1) * b2 = b2 )
proof end;

theorem Th9: :: LOPBAN_2:9
for b1 being RealNormSpace
for b2, b3, b4 being Element of BoundedLinearOperators b1,b1 holds b2 * (b3 + b4) = (b2 * b3) + (b2 * b4)
proof end;

theorem Th10: :: LOPBAN_2:10
for b1 being RealNormSpace
for b2, b3, b4 being Element of BoundedLinearOperators b1,b1 holds (b3 + b4) * b2 = (b3 * b2) + (b4 * b2)
proof end;

theorem Th11: :: LOPBAN_2:11
for b1 being RealNormSpace
for b2, b3 being Element of BoundedLinearOperators b1,b1
for b4, b5 being Real holds (b4 * b5) * (b2 * b3) = (b4 * b2) * (b5 * b3)
proof end;

theorem Th12: :: LOPBAN_2:12
for b1 being RealNormSpace
for b2, b3 being Element of BoundedLinearOperators b1,b1
for b4 being Real holds b4 * (b2 * b3) = (b4 * b2) * b3
proof end;

definition
let c1 be RealNormSpace;
func Ring_of_BoundedLinearOperators c1 -> doubleLoopStr equals :: LOPBAN_2:def 6
doubleLoopStr(# (BoundedLinearOperators a1,a1),(Add_ (BoundedLinearOperators a1,a1),(R_VectorSpace_of_LinearOperators a1,a1)),(FuncMult a1),(FuncUnit a1),(Zero_ (BoundedLinearOperators a1,a1),(R_VectorSpace_of_LinearOperators a1,a1)) #);
correctness
coherence
doubleLoopStr(# (BoundedLinearOperators c1,c1),(Add_ (BoundedLinearOperators c1,c1),(R_VectorSpace_of_LinearOperators c1,c1)),(FuncMult c1),(FuncUnit c1),(Zero_ (BoundedLinearOperators c1,c1),(R_VectorSpace_of_LinearOperators c1,c1)) #) is doubleLoopStr
;
;
end;

:: deftheorem Def6 defines Ring_of_BoundedLinearOperators LOPBAN_2:def 6 :
for b1 being RealNormSpace holds Ring_of_BoundedLinearOperators b1 = doubleLoopStr(# (BoundedLinearOperators b1,b1),(Add_ (BoundedLinearOperators b1,b1),(R_VectorSpace_of_LinearOperators b1,b1)),(FuncMult b1),(FuncUnit b1),(Zero_ (BoundedLinearOperators b1,b1),(R_VectorSpace_of_LinearOperators b1,b1)) #);

registration
let c1 be RealNormSpace;
cluster Ring_of_BoundedLinearOperators a1 -> non empty strict ;
coherence
( not Ring_of_BoundedLinearOperators c1 is empty & Ring_of_BoundedLinearOperators c1 is strict )
proof end;
end;

E14: now
let c1 be RealNormSpace;
set c2 = Ring_of_BoundedLinearOperators c1;
let c3, c4 be Element of (Ring_of_BoundedLinearOperators c1);
assume E15: c4 = FuncUnit c1 ;
reconsider c5 = c3 as Element of BoundedLinearOperators c1,c1 ;
thus c3 * c4 = the mult of (Ring_of_BoundedLinearOperators c1) . c3,c4
.= (FuncMult c1) . c5,(FuncUnit c1) by E15
.= c5 * (FuncUnit c1) by Def4
.= c3 by Th8 ;
thus c4 * c3 = the mult of (Ring_of_BoundedLinearOperators c1) . c4,c3
.= (FuncMult c1) . (FuncUnit c1),c5 by E15
.= (FuncUnit c1) * c5 by Def4
.= c3 by Th8 ;
end;

registration
let c1 be RealNormSpace;
cluster Ring_of_BoundedLinearOperators a1 -> non empty unital strict ;
coherence
Ring_of_BoundedLinearOperators c1 is unital
proof end;
end;

E15: now
let c1 be RealNormSpace;
set c2 = Ring_of_BoundedLinearOperators c1;
reconsider c3 = FuncUnit c1 as Element of (Ring_of_BoundedLinearOperators c1) ;
for b1 being Element of (Ring_of_BoundedLinearOperators c1) holds
( b1 * c3 = b1 & c3 * b1 = b1 ) by Lemma14;
hence 1. (Ring_of_BoundedLinearOperators c1) = FuncUnit c1 by GROUP_1:def 5;
end;

theorem Th13: :: LOPBAN_2:13
for b1 being RealNormSpace
for b2, b3, b4 being Element of (Ring_of_BoundedLinearOperators b1) holds
( b2 + b3 = b3 + b2 & (b2 + b3) + b4 = b2 + (b3 + b4) & b2 + (0. (Ring_of_BoundedLinearOperators b1)) = b2 & ex b5 being Element of (Ring_of_BoundedLinearOperators b1) st b2 + b5 = 0. (Ring_of_BoundedLinearOperators b1) & (b2 * b3) * b4 = b2 * (b3 * b4) & b2 * (1. (Ring_of_BoundedLinearOperators b1)) = b2 & (1. (Ring_of_BoundedLinearOperators b1)) * b2 = b2 & b2 * (b3 + b4) = (b2 * b3) + (b2 * b4) & (b3 + b4) * b2 = (b3 * b2) + (b4 * b2) )
proof end;

theorem Th14: :: LOPBAN_2:14
for b1 being RealNormSpace holds Ring_of_BoundedLinearOperators b1 is Ring
proof end;

registration
let c1 be RealNormSpace;
cluster Ring_of_BoundedLinearOperators a1 -> non empty Abelian add-associative right_zeroed right_complementable unital associative strict right_unital distributive left_unital ;
coherence
( Ring_of_BoundedLinearOperators c1 is Abelian & Ring_of_BoundedLinearOperators c1 is add-associative & Ring_of_BoundedLinearOperators c1 is right_zeroed & Ring_of_BoundedLinearOperators c1 is right_complementable & Ring_of_BoundedLinearOperators c1 is associative & Ring_of_BoundedLinearOperators c1 is left_unital & Ring_of_BoundedLinearOperators c1 is right_unital & Ring_of_BoundedLinearOperators c1 is distributive )
by Th14;
end;

definition
let c1 be RealNormSpace;
func R_Algebra_of_BoundedLinearOperators c1 -> AlgebraStr equals :: LOPBAN_2:def 7
AlgebraStr(# (BoundedLinearOperators a1,a1),(FuncMult a1),(Add_ (BoundedLinearOperators a1,a1),(R_VectorSpace_of_LinearOperators a1,a1)),(Mult_ (BoundedLinearOperators a1,a1),(R_VectorSpace_of_LinearOperators a1,a1)),(FuncUnit a1),(Zero_ (BoundedLinearOperators a1,a1),(R_VectorSpace_of_LinearOperators a1,a1)) #);
correctness
coherence
AlgebraStr(# (BoundedLinearOperators c1,c1),(FuncMult c1),(Add_ (BoundedLinearOperators c1,c1),(R_VectorSpace_of_LinearOperators c1,c1)),(Mult_ (BoundedLinearOperators c1,c1),(R_VectorSpace_of_LinearOperators c1,c1)),(FuncUnit c1),(Zero_ (BoundedLinearOperators c1,c1),(R_VectorSpace_of_LinearOperators c1,c1)) #) is AlgebraStr
;
;
end;

:: deftheorem Def7 defines R_Algebra_of_BoundedLinearOperators LOPBAN_2:def 7 :
for b1 being RealNormSpace holds R_Algebra_of_BoundedLinearOperators b1 = AlgebraStr(# (BoundedLinearOperators b1,b1),(FuncMult b1),(Add_ (BoundedLinearOperators b1,b1),(R_VectorSpace_of_LinearOperators b1,b1)),(Mult_ (BoundedLinearOperators b1,b1),(R_VectorSpace_of_LinearOperators b1,b1)),(FuncUnit b1),(Zero_ (BoundedLinearOperators b1,b1),(R_VectorSpace_of_LinearOperators b1,b1)) #);

registration
let c1 be RealNormSpace;
cluster R_Algebra_of_BoundedLinearOperators a1 -> non empty strict ;
coherence
( not R_Algebra_of_BoundedLinearOperators c1 is empty & R_Algebra_of_BoundedLinearOperators c1 is strict )
proof end;
end;

E18: now
let c1 be RealNormSpace;
set c2 = R_Algebra_of_BoundedLinearOperators c1;
let c3, c4 be Element of (R_Algebra_of_BoundedLinearOperators c1);
assume E19: c4 = FuncUnit c1 ;
reconsider c5 = c3 as Element of BoundedLinearOperators c1,c1 ;
thus c3 * c4 = the mult of (R_Algebra_of_BoundedLinearOperators c1) . c3,c4
.= (FuncMult c1) . c5,(FuncUnit c1) by E19
.= c5 * (FuncUnit c1) by Def4
.= c3 by Th8 ;
thus c4 * c3 = the mult of (R_Algebra_of_BoundedLinearOperators c1) . c4,c3
.= (FuncMult c1) . (FuncUnit c1),c5 by E19
.= (FuncUnit c1) * c5 by Def4
.= c3 by Th8 ;
end;

registration
let c1 be RealNormSpace;
cluster R_Algebra_of_BoundedLinearOperators a1 -> non empty unital strict ;
coherence
R_Algebra_of_BoundedLinearOperators c1 is unital
proof end;
end;

E19: now
let c1 be RealNormSpace;
set c2 = R_Algebra_of_BoundedLinearOperators c1;
reconsider c3 = FuncUnit c1 as Element of (R_Algebra_of_BoundedLinearOperators c1) ;
for b1 being Element of (R_Algebra_of_BoundedLinearOperators c1) holds
( b1 * c3 = b1 & c3 * b1 = b1 ) by Lemma18;
hence 1. (R_Algebra_of_BoundedLinearOperators c1) = FuncUnit c1 by GROUP_1:def 5;
end;

theorem Th15: :: LOPBAN_2:15
for b1 being RealNormSpace
for b2, b3, b4 being Element of (R_Algebra_of_BoundedLinearOperators b1)
for b5, b6 being Real holds
( b2 + b3 = b3 + b2 & (b2 + b3) + b4 = b2 + (b3 + b4) & b2 + (0. (R_Algebra_of_BoundedLinearOperators b1)) = b2 & ex b7 being Element of (R_Algebra_of_BoundedLinearOperators b1) st b2 + b7 = 0. (R_Algebra_of_BoundedLinearOperators b1) & (b2 * b3) * b4 = b2 * (b3 * b4) & b2 * (1. (R_Algebra_of_BoundedLinearOperators b1)) = b2 & (1. (R_Algebra_of_BoundedLinearOperators b1)) * b2 = b2 & b2 * (b3 + b4) = (b2 * b3) + (b2 * b4) & (b3 + b4) * b2 = (b3 * b2) + (b4 * b2) & b5 * (b2 * b3) = (b5 * b2) * b3 & b5 * (b2 + b3) = (b5 * b2) + (b5 * b3) & (b5 + b6) * b2 = (b5 * b2) + (b6 * b2) & (b5 * b6) * b2 = b5 * (b6 * b2) & (b5 * b6) * (b2 * b3) = (b5 * b2) * (b6 * b3) )
proof end;

definition
mode BLAlgebra is non empty Abelian add-associative right_zeroed right_complementable associative Algebra-like AlgebraStr ;
end;

theorem Th16: :: LOPBAN_2:16
for b1 being RealNormSpace holds R_Algebra_of_BoundedLinearOperators b1 is BLAlgebra
proof end;

registration
cluster l1_Space -> complete ;
coherence
l1_Space is complete
proof end;
end;

registration
cluster l1_Space -> non trivial complete ;
coherence
not l1_Space is trivial
proof end;
end;

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

theorem Th17: :: LOPBAN_2:17
for b1 being non trivial RealNormSpace ex b2 being VECTOR of b1 st ||.b2.|| = 1
proof end;

theorem Th18: :: LOPBAN_2:18
for b1 being non trivial RealNormSpace holds (BoundedLinearOperatorsNorm b1,b1) . (id the carrier of b1) = 1
proof end;

definition
attr a1 is strict;
struct Normed_AlgebraStr -> AlgebraStr , NORMSTR ;
aggr Normed_AlgebraStr(# carrier, mult, add, Mult, unity, Zero, norm #) -> Normed_AlgebraStr ;
end;

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

definition
let c1 be RealNormSpace;
func R_Normed_Algebra_of_BoundedLinearOperators c1 -> Normed_AlgebraStr equals :: LOPBAN_2:def 8
Normed_AlgebraStr(# (BoundedLinearOperators a1,a1),(FuncMult a1),(Add_ (BoundedLinearOperators a1,a1),(R_VectorSpace_of_LinearOperators a1,a1)),(Mult_ (BoundedLinearOperators a1,a1),(R_VectorSpace_of_LinearOperators a1,a1)),(FuncUnit a1),(Zero_ (BoundedLinearOperators a1,a1),(R_VectorSpace_of_LinearOperators a1,a1)),(BoundedLinearOperatorsNorm a1,a1) #);
correctness
coherence
Normed_AlgebraStr(# (BoundedLinearOperators c1,c1),(FuncMult c1),(Add_ (BoundedLinearOperators c1,c1),(R_VectorSpace_of_LinearOperators c1,c1)),(Mult_ (BoundedLinearOperators c1,c1),(R_VectorSpace_of_LinearOperators c1,c1)),(FuncUnit c1),(Zero_ (BoundedLinearOperators c1,c1),(R_VectorSpace_of_LinearOperators c1,c1)),(BoundedLinearOperatorsNorm c1,c1) #) is Normed_AlgebraStr
;
;
end;

:: deftheorem Def8 defines R_Normed_Algebra_of_BoundedLinearOperators LOPBAN_2:def 8 :
for b1 being RealNormSpace holds R_Normed_Algebra_of_BoundedLinearOperators b1 = Normed_AlgebraStr(# (BoundedLinearOperators b1,b1),(FuncMult b1),(Add_ (BoundedLinearOperators b1,b1),(R_VectorSpace_of_LinearOperators b1,b1)),(Mult_ (BoundedLinearOperators b1,b1),(R_VectorSpace_of_LinearOperators b1,b1)),(FuncUnit b1),(Zero_ (BoundedLinearOperators b1,b1),(R_VectorSpace_of_LinearOperators b1,b1)),(BoundedLinearOperatorsNorm b1,b1) #);

registration
let c1 be RealNormSpace;
cluster R_Normed_Algebra_of_BoundedLinearOperators a1 -> non empty strict ;
coherence
( not R_Normed_Algebra_of_BoundedLinearOperators c1 is empty & R_Normed_Algebra_of_BoundedLinearOperators c1 is strict )
proof end;
end;

E23: now
let c1 be RealNormSpace;
set c2 = R_Normed_Algebra_of_BoundedLinearOperators c1;
let c3, c4 be Element of (R_Normed_Algebra_of_BoundedLinearOperators c1);
assume E24: c4 = FuncUnit c1 ;
reconsider c5 = c3 as Element of BoundedLinearOperators c1,c1 ;
thus c3 * c4 = the mult of (R_Normed_Algebra_of_BoundedLinearOperators c1) . c3,c4
.= (FuncMult c1) . c5,(FuncUnit c1) by E24
.= c5 * (FuncUnit c1) by Def4
.= c3 by Th8 ;
thus c4 * c3 = the mult of (R_Normed_Algebra_of_BoundedLinearOperators c1) . c4,c3
.= (FuncMult c1) . (FuncUnit c1),c5 by E24
.= (FuncUnit c1) * c5 by Def4
.= c3 by Th8 ;
end;

registration
let c1 be RealNormSpace;
cluster R_Normed_Algebra_of_BoundedLinearOperators a1 -> non empty unital strict ;
coherence
R_Normed_Algebra_of_BoundedLinearOperators c1 is unital
proof end;
end;

E24: now
let c1 be RealNormSpace;
set c2 = R_Normed_Algebra_of_BoundedLinearOperators c1;
reconsider c3 = FuncUnit c1 as Element of (R_Normed_Algebra_of_BoundedLinearOperators c1) ;
for b1 being Element of (R_Normed_Algebra_of_BoundedLinearOperators c1) holds
( b1 * c3 = b1 & c3 * b1 = b1 ) by Lemma23;
hence 1. (R_Normed_Algebra_of_BoundedLinearOperators c1) = FuncUnit c1 by GROUP_1:def 5;
end;

theorem Th19: :: LOPBAN_2:19
for b1 being RealNormSpace
for b2, b3, b4 being Element of (R_Normed_Algebra_of_BoundedLinearOperators b1)
for b5, b6 being Real holds
( b2 + b3 = b3 + b2 & (b2 + b3) + b4 = b2 + (b3 + b4) & b2 + (0. (R_Normed_Algebra_of_BoundedLinearOperators b1)) = b2 & ex b7 being Element of (R_Normed_Algebra_of_BoundedLinearOperators b1) st b2 + b7 = 0. (R_Normed_Algebra_of_BoundedLinearOperators b1) & (b2 * b3) * b4 = b2 * (b3 * b4) & b2 * (1. (R_Normed_Algebra_of_BoundedLinearOperators b1)) = b2 & (1. (R_Normed_Algebra_of_BoundedLinearOperators b1)) * b2 = b2 & b2 * (b3 + b4) = (b2 * b3) + (b2 * b4) & (b3 + b4) * b2 = (b3 * b2) + (b4 * b2) & b5 * (b2 * b3) = (b5 * b2) * b3 & (b5 * b6) * (b2 * b3) = (b5 * b2) * (b6 * b3) & b5 * (b2 + b3) = (b5 * b2) + (b5 * b3) & (b5 + b6) * b2 = (b5 * b2) + (b6 * b2) & (b5 * b6) * b2 = b5 * (b6 * b2) & 1 * b2 = b2 )
proof end;

theorem Th20: :: LOPBAN_2:20
for b1 being RealNormSpace holds
( R_Normed_Algebra_of_BoundedLinearOperators b1 is RealNormSpace-like & R_Normed_Algebra_of_BoundedLinearOperators b1 is Abelian & R_Normed_Algebra_of_BoundedLinearOperators b1 is add-associative & R_Normed_Algebra_of_BoundedLinearOperators b1 is right_zeroed & R_Normed_Algebra_of_BoundedLinearOperators b1 is right_complementable & R_Normed_Algebra_of_BoundedLinearOperators b1 is associative & R_Normed_Algebra_of_BoundedLinearOperators b1 is Algebra-like & R_Normed_Algebra_of_BoundedLinearOperators b1 is RealLinearSpace-like )
proof end;

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

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

registration
let c1 be RealNormSpace;
cluster R_Normed_Algebra_of_BoundedLinearOperators a1 -> non empty Abelian add-associative right_zeroed right_complementable RealLinearSpace-like unital associative Algebra-like RealNormSpace-like strict ;
correctness
coherence
( R_Normed_Algebra_of_BoundedLinearOperators c1 is RealNormSpace-like & R_Normed_Algebra_of_BoundedLinearOperators c1 is Abelian & R_Normed_Algebra_of_BoundedLinearOperators c1 is add-associative & R_Normed_Algebra_of_BoundedLinearOperators c1 is right_zeroed & R_Normed_Algebra_of_BoundedLinearOperators c1 is right_complementable & R_Normed_Algebra_of_BoundedLinearOperators c1 is associative & R_Normed_Algebra_of_BoundedLinearOperators c1 is Algebra-like & R_Normed_Algebra_of_BoundedLinearOperators c1 is RealLinearSpace-like )
;
by Th20;
end;

definition
let c1 be non empty Normed_AlgebraStr ;
attr a1 is Banach_Algebra-like_1 means :: LOPBAN_2:def 9
for b1, b2 being Element of a1 holds ||.(b1 * b2).|| <= ||.b1.|| * ||.b2.||;
attr a1 is Banach_Algebra-like_2 means :: LOPBAN_2:def 10
||.(1. a1).|| = 1;
attr a1 is Banach_Algebra-like_3 means :: LOPBAN_2:def 11
for b1 being Real
for b2, b3 being Element of a1 holds b1 * (b2 * b3) = b2 * (b1 * b3);
end;

:: deftheorem Def9 defines Banach_Algebra-like_1 LOPBAN_2:def 9 :
for b1 being non empty Normed_AlgebraStr holds
( b1 is Banach_Algebra-like_1 iff for b2, b3 being Element of b1 holds ||.(b2 * b3).|| <= ||.b2.|| * ||.b3.|| );

:: deftheorem Def10 defines Banach_Algebra-like_2 LOPBAN_2:def 10 :
for b1 being non empty Normed_AlgebraStr holds
( b1 is Banach_Algebra-like_2 iff ||.(1. b1).|| = 1 );

:: deftheorem Def11 defines Banach_Algebra-like_3 LOPBAN_2:def 11 :
for b1 being non empty Normed_AlgebraStr holds
( b1 is Banach_Algebra-like_3 iff for b2 being Real
for b3, b4 being Element of b1 holds b2 * (b3 * b4) = b3 * (b2 * b4) );

definition
let c1 be Normed_Algebra;
attr a1 is Banach_Algebra-like means :Def12: :: LOPBAN_2:def 12
( a1 is Banach_Algebra-like_1 & a1 is Banach_Algebra-like_2 & a1 is Banach_Algebra-like_3 & a1 is left_unital & a1 is left-distributive & a1 is complete );
end;

:: deftheorem Def12 defines Banach_Algebra-like LOPBAN_2:def 12 :
for b1 being Normed_Algebra holds
( b1 is Banach_Algebra-like iff ( b1 is Banach_Algebra-like_1 & b1 is Banach_Algebra-like_2 & b1 is Banach_Algebra-like_3 & b1 is left_unital & b1 is left-distributive & b1 is complete ) );

registration
cluster Banach_Algebra-like -> left-distributive left_unital complete Banach_Algebra-like_1 Banach_Algebra-like_2 Banach_Algebra-like_3 Normed_AlgebraStr ;
coherence
for b1 being Normed_Algebra st b1 is Banach_Algebra-like holds
( b1 is Banach_Algebra-like_1 & b1 is Banach_Algebra-like_2 & b1 is Banach_Algebra-like_3 & b1 is left-distributive & b1 is left_unital & b1 is complete )
by Def12;
cluster left-distributive left_unital complete Banach_Algebra-like_1 Banach_Algebra-like_2 Banach_Algebra-like_3 -> Banach_Algebra-like Normed_AlgebraStr ;
coherence
for b1 being Normed_Algebra st b1 is Banach_Algebra-like_1 & b1 is Banach_Algebra-like_2 & b1 is Banach_Algebra-like_3 & b1 is left-distributive & b1 is left_unital & b1 is complete holds
b1 is Banach_Algebra-like
by Def12;
end;

registration
let c1 be non trivial RealBanachSpace;
cluster R_Normed_Algebra_of_BoundedLinearOperators a1 -> non empty Abelian add-associative right_zeroed right_complementable RealLinearSpace-like unital associative left-distributive Algebra-like RealNormSpace-like complete strict Banach_Algebra-like_1 Banach_Algebra-like_2 Banach_Algebra-like_3 Banach_Algebra-like ;
coherence
R_Normed_Algebra_of_BoundedLinearOperators c1 is Banach_Algebra-like
proof end;
end;

registration
cluster left-distributive left_unital complete Banach_Algebra-like_1 Banach_Algebra-like_2 Banach_Algebra-like_3 Banach_Algebra-like Normed_AlgebraStr ;
existence
ex b1 being Normed_Algebra st b1 is Banach_Algebra-like
proof end;
end;

definition
mode Banach_Algebra is Banach_Algebra-like Normed_Algebra;
end;

theorem Th21: :: LOPBAN_2:21
for b1 being RealNormSpace holds 1. (Ring_of_BoundedLinearOperators b1) = FuncUnit b1 by Lemma15;

theorem Th22: :: LOPBAN_2:22
for b1 being RealNormSpace holds 1. (R_Algebra_of_BoundedLinearOperators b1) = FuncUnit b1 by Lemma19;

theorem Th23: :: LOPBAN_2:23
for b1 being RealNormSpace holds 1. (R_Normed_Algebra_of_BoundedLinearOperators b1) = FuncUnit b1 by Lemma24;