:: Arithmetic Operations on Functions from Sets into Functional Sets
:: by Artur Korni{\l}owicz
::
:: Copyright (c) 2008-2021 Association of Mizar Users

Lm1: now :: thesis: for X1, X2, X3 being set holds X1 /\ (X2 /\ X3) = (X1 /\ X2) /\ (X1 /\ X3)
let X1, X2, X3 be set ; :: thesis: X1 /\ (X2 /\ X3) = (X1 /\ X2) /\ (X1 /\ X3)
thus X1 /\ (X2 /\ X3) = ((X1 /\ X1) /\ X2) /\ X3 by XBOOLE_1:16
.= (X1 /\ (X1 /\ X2)) /\ X3 by XBOOLE_1:16
.= (X1 /\ X2) /\ (X1 /\ X3) by XBOOLE_1:16 ; :: thesis: verum
end;

definition
let Y be functional set ;
func DOMS Y -> set equals :: VALUED_2:def 1
union { (dom f) where f is Element of Y : verum } ;
coherence
union { (dom f) where f is Element of Y : verum } is set
;
end;

:: deftheorem defines DOMS VALUED_2:def 1 :
for Y being functional set holds DOMS Y = union { (dom f) where f is Element of Y : verum } ;

definition
let X be set ;
attr X is complex-functions-membered means :Def2: :: VALUED_2:def 2
for x being object st x in X holds
x is complex-valued Function;
end;

:: deftheorem Def2 defines complex-functions-membered VALUED_2:def 2 :
for X being set holds
( X is complex-functions-membered iff for x being object st x in X holds
x is complex-valued Function );

definition
let X be set ;
attr X is ext-real-functions-membered means :Def3: :: VALUED_2:def 3
for x being object st x in X holds
x is ext-real-valued Function;
end;

:: deftheorem Def3 defines ext-real-functions-membered VALUED_2:def 3 :
for X being set holds
( X is ext-real-functions-membered iff for x being object st x in X holds
x is ext-real-valued Function );

definition
let X be set ;
attr X is real-functions-membered means :Def4: :: VALUED_2:def 4
for x being object st x in X holds
x is real-valued Function;
end;

:: deftheorem Def4 defines real-functions-membered VALUED_2:def 4 :
for X being set holds
( X is real-functions-membered iff for x being object st x in X holds
x is real-valued Function );

definition
let X be set ;
attr X is rational-functions-membered means :Def5: :: VALUED_2:def 5
for x being object st x in X holds
x is RAT -valued Function;
end;

:: deftheorem Def5 defines rational-functions-membered VALUED_2:def 5 :
for X being set holds
( X is rational-functions-membered iff for x being object st x in X holds
x is RAT -valued Function );

definition
let X be set ;
attr X is integer-functions-membered means :Def6: :: VALUED_2:def 6
for x being object st x in X holds
x is INT -valued Function;
end;

:: deftheorem Def6 defines integer-functions-membered VALUED_2:def 6 :
for X being set holds
( X is integer-functions-membered iff for x being object st x in X holds
x is INT -valued Function );

definition
let X be set ;
attr X is natural-functions-membered means :Def7: :: VALUED_2:def 7
for x being object st x in X holds
x is natural-valued Function;
end;

:: deftheorem Def7 defines natural-functions-membered VALUED_2:def 7 :
for X being set holds
( X is natural-functions-membered iff for x being object st x in X holds
x is natural-valued Function );

registration
coherence
for b1 being set st b1 is natural-functions-membered holds
b1 is integer-functions-membered
proof end;
coherence
for b1 being set st b1 is integer-functions-membered holds
b1 is rational-functions-membered
proof end;
coherence
for b1 being set st b1 is rational-functions-membered holds
b1 is real-functions-membered
;
coherence
for b1 being set st b1 is real-functions-membered holds
b1 is complex-functions-membered
;
coherence
for b1 being set st b1 is real-functions-membered holds
b1 is ext-real-functions-membered
;
end;

registration
coherence
for b1 being set st b1 is empty holds
b1 is natural-functions-membered
;
end;

registration end;

registration
coherence
for b1 being set st b1 is complex-functions-membered holds
b1 is functional
proof end;
coherence
for b1 being set st b1 is ext-real-functions-membered holds
b1 is functional
proof end;
end;

set ff = the natural-valued Function;

registration
existence
ex b1 being set st
( b1 is natural-functions-membered & not b1 is empty )
proof end;
end;

registration
let X be complex-functions-membered set ;
cluster -> complex-functions-membered for Element of K19(X);
coherence
for b1 being Subset of X holds b1 is complex-functions-membered
by Def2;
end;

registration
let X be ext-real-functions-membered set ;
cluster -> ext-real-functions-membered for Element of K19(X);
coherence
for b1 being Subset of X holds b1 is ext-real-functions-membered
by Def3;
end;

registration
let X be real-functions-membered set ;
cluster -> real-functions-membered for Element of K19(X);
coherence
for b1 being Subset of X holds b1 is real-functions-membered
by Def4;
end;

registration
let X be rational-functions-membered set ;
cluster -> rational-functions-membered for Element of K19(X);
coherence
for b1 being Subset of X holds b1 is rational-functions-membered
by Def5;
end;

registration
let X be integer-functions-membered set ;
cluster -> integer-functions-membered for Element of K19(X);
coherence
for b1 being Subset of X holds b1 is integer-functions-membered
by Def6;
end;

registration
let X be natural-functions-membered set ;
cluster -> natural-functions-membered for Element of K19(X);
coherence
for b1 being Subset of X holds b1 is natural-functions-membered
by Def7;
end;

definition
set A = COMPLEX ;
let D be set ;
defpred S1[ object ] means $1 is PartFunc of D,COMPLEX; func C_PFuncs D -> set means :Def8: :: VALUED_2:def 8 for f being object holds ( f in it iff f is PartFunc of D,COMPLEX ); existence ex b1 being set st for f being object holds ( f in b1 iff f is PartFunc of D,COMPLEX ) proof end; uniqueness for b1, b2 being set st ( for f being object holds ( f in b1 iff f is PartFunc of D,COMPLEX ) ) & ( for f being object holds ( f in b2 iff f is PartFunc of D,COMPLEX ) ) holds b1 = b2 proof end; end; :: deftheorem Def8 defines C_PFuncs VALUED_2:def 8 : for D, b2 being set holds ( b2 = C_PFuncs D iff for f being object holds ( f in b2 iff f is PartFunc of D,COMPLEX ) ); definition set A = COMPLEX ; let D be set ; defpred S1[ object ] means$1 is Function of D,COMPLEX;
func C_Funcs D -> set means :Def9: :: VALUED_2:def 9
for f being object holds
( f in it iff f is Function of D,COMPLEX );
existence
ex b1 being set st
for f being object holds
( f in b1 iff f is Function of D,COMPLEX )
proof end;
uniqueness
for b1, b2 being set st ( for f being object holds
( f in b1 iff f is Function of D,COMPLEX ) ) & ( for f being object holds
( f in b2 iff f is Function of D,COMPLEX ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def9 defines C_Funcs VALUED_2:def 9 :
for D, b2 being set holds
( b2 = C_Funcs D iff for f being object holds
( f in b2 iff f is Function of D,COMPLEX ) );

definition
set A = ExtREAL ;
let D be set ;
defpred S1[ object ] means $1 is PartFunc of D,ExtREAL; func E_PFuncs D -> set means :Def10: :: VALUED_2:def 10 for f being object holds ( f in it iff f is PartFunc of D,ExtREAL ); existence ex b1 being set st for f being object holds ( f in b1 iff f is PartFunc of D,ExtREAL ) proof end; uniqueness for b1, b2 being set st ( for f being object holds ( f in b1 iff f is PartFunc of D,ExtREAL ) ) & ( for f being object holds ( f in b2 iff f is PartFunc of D,ExtREAL ) ) holds b1 = b2 proof end; end; :: deftheorem Def10 defines E_PFuncs VALUED_2:def 10 : for D, b2 being set holds ( b2 = E_PFuncs D iff for f being object holds ( f in b2 iff f is PartFunc of D,ExtREAL ) ); definition set A = ExtREAL ; let D be set ; defpred S1[ object ] means$1 is Function of D,ExtREAL;
func E_Funcs D -> set means :Def11: :: VALUED_2:def 11
for f being object holds
( f in it iff f is Function of D,ExtREAL );
existence
ex b1 being set st
for f being object holds
( f in b1 iff f is Function of D,ExtREAL )
proof end;
uniqueness
for b1, b2 being set st ( for f being object holds
( f in b1 iff f is Function of D,ExtREAL ) ) & ( for f being object holds
( f in b2 iff f is Function of D,ExtREAL ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def11 defines E_Funcs VALUED_2:def 11 :
for D, b2 being set holds
( b2 = E_Funcs D iff for f being object holds
( f in b2 iff f is Function of D,ExtREAL ) );

definition
set A = REAL ;
let D be set ;
defpred S1[ object ] means $1 is PartFunc of D,REAL; func R_PFuncs D -> set means :Def12: :: VALUED_2:def 12 for f being object holds ( f in it iff f is PartFunc of D,REAL ); existence ex b1 being set st for f being object holds ( f in b1 iff f is PartFunc of D,REAL ) proof end; uniqueness for b1, b2 being set st ( for f being object holds ( f in b1 iff f is PartFunc of D,REAL ) ) & ( for f being object holds ( f in b2 iff f is PartFunc of D,REAL ) ) holds b1 = b2 proof end; end; :: deftheorem Def12 defines R_PFuncs VALUED_2:def 12 : for D, b2 being set holds ( b2 = R_PFuncs D iff for f being object holds ( f in b2 iff f is PartFunc of D,REAL ) ); definition set A = REAL ; let D be set ; defpred S1[ object ] means$1 is Function of D,REAL;
func R_Funcs D -> set means :Def13: :: VALUED_2:def 13
for f being object holds
( f in it iff f is Function of D,REAL );
existence
ex b1 being set st
for f being object holds
( f in b1 iff f is Function of D,REAL )
proof end;
uniqueness
for b1, b2 being set st ( for f being object holds
( f in b1 iff f is Function of D,REAL ) ) & ( for f being object holds
( f in b2 iff f is Function of D,REAL ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def13 defines R_Funcs VALUED_2:def 13 :
for D, b2 being set holds
( b2 = R_Funcs D iff for f being object holds
( f in b2 iff f is Function of D,REAL ) );

definition
set A = RAT ;
let D be set ;
defpred S1[ object ] means $1 is PartFunc of D,RAT; func Q_PFuncs D -> set means :Def14: :: VALUED_2:def 14 for f being object holds ( f in it iff f is PartFunc of D,RAT ); existence ex b1 being set st for f being object holds ( f in b1 iff f is PartFunc of D,RAT ) proof end; uniqueness for b1, b2 being set st ( for f being object holds ( f in b1 iff f is PartFunc of D,RAT ) ) & ( for f being object holds ( f in b2 iff f is PartFunc of D,RAT ) ) holds b1 = b2 proof end; end; :: deftheorem Def14 defines Q_PFuncs VALUED_2:def 14 : for D, b2 being set holds ( b2 = Q_PFuncs D iff for f being object holds ( f in b2 iff f is PartFunc of D,RAT ) ); definition set A = RAT ; let D be set ; defpred S1[ object ] means$1 is Function of D,RAT;
func Q_Funcs D -> set means :Def15: :: VALUED_2:def 15
for f being object holds
( f in it iff f is Function of D,RAT );
existence
ex b1 being set st
for f being object holds
( f in b1 iff f is Function of D,RAT )
proof end;
uniqueness
for b1, b2 being set st ( for f being object holds
( f in b1 iff f is Function of D,RAT ) ) & ( for f being object holds
( f in b2 iff f is Function of D,RAT ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def15 defines Q_Funcs VALUED_2:def 15 :
for D, b2 being set holds
( b2 = Q_Funcs D iff for f being object holds
( f in b2 iff f is Function of D,RAT ) );

definition
set A = INT ;
let D be set ;
defpred S1[ object ] means $1 is PartFunc of D,INT; func I_PFuncs D -> set means :Def16: :: VALUED_2:def 16 for f being object holds ( f in it iff f is PartFunc of D,INT ); existence ex b1 being set st for f being object holds ( f in b1 iff f is PartFunc of D,INT ) proof end; uniqueness for b1, b2 being set st ( for f being object holds ( f in b1 iff f is PartFunc of D,INT ) ) & ( for f being object holds ( f in b2 iff f is PartFunc of D,INT ) ) holds b1 = b2 proof end; end; :: deftheorem Def16 defines I_PFuncs VALUED_2:def 16 : for D, b2 being set holds ( b2 = I_PFuncs D iff for f being object holds ( f in b2 iff f is PartFunc of D,INT ) ); definition set A = INT ; let D be set ; defpred S1[ object ] means$1 is Function of D,INT;
func I_Funcs D -> set means :Def17: :: VALUED_2:def 17
for f being object holds
( f in it iff f is Function of D,INT );
existence
ex b1 being set st
for f being object holds
( f in b1 iff f is Function of D,INT )
proof end;
uniqueness
for b1, b2 being set st ( for f being object holds
( f in b1 iff f is Function of D,INT ) ) & ( for f being object holds
( f in b2 iff f is Function of D,INT ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def17 defines I_Funcs VALUED_2:def 17 :
for D, b2 being set holds
( b2 = I_Funcs D iff for f being object holds
( f in b2 iff f is Function of D,INT ) );

definition
set A = NAT ;
let D be set ;
defpred S1[ object ] means $1 is PartFunc of D,NAT; func N_PFuncs D -> set means :Def18: :: VALUED_2:def 18 for f being object holds ( f in it iff f is PartFunc of D,NAT ); existence ex b1 being set st for f being object holds ( f in b1 iff f is PartFunc of D,NAT ) proof end; uniqueness for b1, b2 being set st ( for f being object holds ( f in b1 iff f is PartFunc of D,NAT ) ) & ( for f being object holds ( f in b2 iff f is PartFunc of D,NAT ) ) holds b1 = b2 proof end; end; :: deftheorem Def18 defines N_PFuncs VALUED_2:def 18 : for D, b2 being set holds ( b2 = N_PFuncs D iff for f being object holds ( f in b2 iff f is PartFunc of D,NAT ) ); definition set A = NAT ; let D be set ; defpred S1[ object ] means$1 is Function of D,NAT;
func N_Funcs D -> set means :Def19: :: VALUED_2:def 19
for f being object holds
( f in it iff f is Function of D,NAT );
existence
ex b1 being set st
for f being object holds
( f in b1 iff f is Function of D,NAT )
proof end;
uniqueness
for b1, b2 being set st ( for f being object holds
( f in b1 iff f is Function of D,NAT ) ) & ( for f being object holds
( f in b2 iff f is Function of D,NAT ) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def19 defines N_Funcs VALUED_2:def 19 :
for D, b2 being set holds
( b2 = N_Funcs D iff for f being object holds
( f in b2 iff f is Function of D,NAT ) );

theorem Th1: :: VALUED_2:1
for X being set holds C_Funcs X is Subset of ()
proof end;

theorem Th2: :: VALUED_2:2
for X being set holds E_Funcs X is Subset of ()
proof end;

theorem Th3: :: VALUED_2:3
for X being set holds R_Funcs X is Subset of ()
proof end;

theorem Th4: :: VALUED_2:4
for X being set holds Q_Funcs X is Subset of ()
proof end;

theorem Th5: :: VALUED_2:5
for X being set holds I_Funcs X is Subset of ()
proof end;

theorem Th6: :: VALUED_2:6
for X being set holds N_Funcs X is Subset of ()
proof end;

registration
let X be set ;
coherence by Def8;
coherence
proof end;
coherence by Def10;
coherence
proof end;
coherence by Def12;
coherence
proof end;
coherence by Def14;
coherence
proof end;
coherence by Def16;
coherence
proof end;
coherence by Def18;
coherence
proof end;
end;

registration
let X be complex-functions-membered set ;
cluster -> complex-valued for Element of X;
coherence
for b1 being Element of X holds b1 is complex-valued
proof end;
end;

registration
let X be ext-real-functions-membered set ;
cluster -> ext-real-valued for Element of X;
coherence
for b1 being Element of X holds b1 is ext-real-valued
proof end;
end;

registration
let X be real-functions-membered set ;
cluster -> real-valued for Element of X;
coherence
for b1 being Element of X holds b1 is real-valued
proof end;
end;

registration
let X be rational-functions-membered set ;
cluster -> RAT -valued for Element of X;
coherence
for b1 being Element of X holds b1 is RAT -valued
proof end;
end;

registration
let X be integer-functions-membered set ;
cluster -> INT -valued for Element of X;
coherence
for b1 being Element of X holds b1 is INT -valued
proof end;
end;

registration
let X be natural-functions-membered set ;
cluster -> natural-valued for Element of X;
coherence
for b1 being Element of X holds b1 is natural-valued
proof end;
end;

registration
let X be set ;
let x be object ;
let Y be complex-functions-membered set ;
let f be PartFunc of X,Y;
coherence
( f . x is Function-like & f . x is Relation-like )
;
end;

registration
let X be set ;
let x be object ;
let Y be ext-real-functions-membered set ;
let f be PartFunc of X,Y;
coherence
( f . x is Function-like & f . x is Relation-like )
;
end;

registration
let X be set ;
let x be object ;
let Y be complex-functions-membered set ;
let f be PartFunc of X,Y;
coherence
f . x is complex-valued
proof end;
end;

registration
let X be set ;
let x be object ;
let Y be ext-real-functions-membered set ;
let f be PartFunc of X,Y;
coherence
f . x is ext-real-valued
proof end;
end;

registration
let X be set ;
let x be object ;
let Y be real-functions-membered set ;
let f be PartFunc of X,Y;
cluster f . x -> real-valued ;
coherence
f . x is real-valued
proof end;
end;

registration
let X be set ;
let x be object ;
let Y be rational-functions-membered set ;
let f be PartFunc of X,Y;
cluster f . x -> RAT -valued ;
coherence
f . x is RAT -valued
proof end;
end;

registration
let X be set ;
let x be object ;
let Y be integer-functions-membered set ;
let f be PartFunc of X,Y;
cluster f . x -> INT -valued ;
coherence
f . x is INT -valued
proof end;
end;

registration
let X be set ;
let x be object ;
let Y be natural-functions-membered set ;
let f be PartFunc of X,Y;
coherence
f . x is natural-valued
proof end;
end;

registration
let X be set ;
let Y be complex-membered set ;
coherence
PFuncs (X,Y) is complex-functions-membered
proof end;
end;

registration
let X be set ;
let Y be ext-real-membered set ;
coherence
proof end;
end;

registration
let X be set ;
let Y be real-membered set ;
coherence
PFuncs (X,Y) is real-functions-membered
proof end;
end;

registration
let X be set ;
let Y be rational-membered set ;
coherence
proof end;
end;

registration
let X be set ;
let Y be integer-membered set ;
coherence
PFuncs (X,Y) is integer-functions-membered
proof end;
end;

registration
let X be set ;
let Y be natural-membered set ;
coherence
PFuncs (X,Y) is natural-functions-membered
proof end;
end;

registration
let X be set ;
let Y be complex-membered set ;
coherence
Funcs (X,Y) is complex-functions-membered
proof end;
end;

registration
let X be set ;
let Y be ext-real-membered set ;
coherence
Funcs (X,Y) is ext-real-functions-membered
proof end;
end;

registration
let X be set ;
let Y be real-membered set ;
coherence
Funcs (X,Y) is real-functions-membered
proof end;
end;

registration
let X be set ;
let Y be rational-membered set ;
coherence
Funcs (X,Y) is rational-functions-membered
proof end;
end;

registration
let X be set ;
let Y be integer-membered set ;
coherence
Funcs (X,Y) is integer-functions-membered
proof end;
end;

registration
let X be set ;
let Y be natural-membered set ;
coherence
Funcs (X,Y) is natural-functions-membered
proof end;
end;

definition
let R be Relation;
attr R is complex-functions-valued means :Def20: :: VALUED_2:def 20
rng R is complex-functions-membered ;
attr R is real-functions-valued means :Def22: :: VALUED_2:def 22
rng R is real-functions-membered ;
attr R is integer-functions-valued means :Def24: :: VALUED_2:def 24
rng R is integer-functions-membered ;
attr R is natural-functions-valued means :Def25: :: VALUED_2:def 25
rng R is natural-functions-membered ;
end;

:: deftheorem Def20 defines complex-functions-valued VALUED_2:def 20 :
for R being Relation holds
( R is complex-functions-valued iff rng R is complex-functions-membered );

:: deftheorem Def21 defines ext-real-functions-valued VALUED_2:def 21 :
for R being Relation holds
( R is ext-real-functions-valued iff rng R is ext-real-functions-membered );

:: deftheorem Def22 defines real-functions-valued VALUED_2:def 22 :
for R being Relation holds
( R is real-functions-valued iff rng R is real-functions-membered );

:: deftheorem Def23 defines rational-functions-valued VALUED_2:def 23 :
for R being Relation holds
( R is rational-functions-valued iff rng R is rational-functions-membered );

:: deftheorem Def24 defines integer-functions-valued VALUED_2:def 24 :
for R being Relation holds
( R is integer-functions-valued iff rng R is integer-functions-membered );

:: deftheorem Def25 defines natural-functions-valued VALUED_2:def 25 :
for R being Relation holds
( R is natural-functions-valued iff rng R is natural-functions-membered );

registration
let Y be complex-functions-membered set ;
coherence
for b1 being Y -valued Function holds b1 is complex-functions-valued
proof end;
end;

definition
let f be Function;
redefine attr f is complex-functions-valued means :: VALUED_2:def 26
for x being object st x in dom f holds
f . x is complex-valued Function;
compatibility
( f is complex-functions-valued iff for x being object st x in dom f holds
f . x is complex-valued Function )
proof end;
redefine attr f is ext-real-functions-valued means :: VALUED_2:def 27
for x being object st x in dom f holds
f . x is ext-real-valued Function;
compatibility
( f is ext-real-functions-valued iff for x being object st x in dom f holds
f . x is ext-real-valued Function )
proof end;
redefine attr f is real-functions-valued means :: VALUED_2:def 28
for x being object st x in dom f holds
f . x is real-valued Function;
compatibility
( f is real-functions-valued iff for x being object st x in dom f holds
f . x is real-valued Function )
proof end;
redefine attr f is rational-functions-valued means :: VALUED_2:def 29
for x being object st x in dom f holds
f . x is RAT -valued Function;
compatibility
( f is rational-functions-valued iff for x being object st x in dom f holds
f . x is RAT -valued Function )
proof end;
redefine attr f is integer-functions-valued means :: VALUED_2:def 30
for x being object st x in dom f holds
f . x is INT -valued Function;
compatibility
( f is integer-functions-valued iff for x being object st x in dom f holds
f . x is INT -valued Function )
proof end;
redefine attr f is natural-functions-valued means :: VALUED_2:def 31
for x being object st x in dom f holds
f . x is natural-valued Function;
compatibility
( f is natural-functions-valued iff for x being object st x in dom f holds
f . x is natural-valued Function )
proof end;
end;

:: deftheorem defines complex-functions-valued VALUED_2:def 26 :
for f being Function holds
( f is complex-functions-valued iff for x being object st x in dom f holds
f . x is complex-valued Function );

:: deftheorem defines ext-real-functions-valued VALUED_2:def 27 :
for f being Function holds
( f is ext-real-functions-valued iff for x being object st x in dom f holds
f . x is ext-real-valued Function );

:: deftheorem defines real-functions-valued VALUED_2:def 28 :
for f being Function holds
( f is real-functions-valued iff for x being object st x in dom f holds
f . x is real-valued Function );

:: deftheorem defines rational-functions-valued VALUED_2:def 29 :
for f being Function holds
( f is rational-functions-valued iff for x being object st x in dom f holds
f . x is RAT -valued Function );

:: deftheorem defines integer-functions-valued VALUED_2:def 30 :
for f being Function holds
( f is integer-functions-valued iff for x being object st x in dom f holds
f . x is INT -valued Function );

:: deftheorem defines natural-functions-valued VALUED_2:def 31 :
for f being Function holds
( f is natural-functions-valued iff for x being object st x in dom f holds
f . x is natural-valued Function );

registration
coherence
for b1 being Relation st b1 is natural-functions-valued holds
b1 is integer-functions-valued
;
coherence
for b1 being Relation st b1 is integer-functions-valued holds
b1 is rational-functions-valued
;
coherence
for b1 being Relation st b1 is rational-functions-valued holds
b1 is real-functions-valued
;
coherence
for b1 being Relation st b1 is real-functions-valued holds
b1 is ext-real-functions-valued
;
coherence
for b1 being Relation st b1 is real-functions-valued holds
b1 is complex-functions-valued
;
end;

registration
coherence
for b1 being Relation st b1 is empty holds
b1 is natural-functions-valued
;
end;

registration
existence
ex b1 being Function st b1 is natural-functions-valued
proof end;
end;

registration
let R be complex-functions-valued Relation;
coherence by Def20;
end;

registration
let R be ext-real-functions-valued Relation;
coherence by Def21;
end;

registration
let R be real-functions-valued Relation;
coherence by Def22;
end;

registration
let R be rational-functions-valued Relation;
coherence by Def23;
end;

registration
let R be integer-functions-valued Relation;
coherence by Def24;
end;

registration
let R be natural-functions-valued Relation;
coherence by Def25;
end;

registration
let X be set ;
let Y be complex-functions-membered set ;
cluster Function-like -> complex-functions-valued for Element of K19(K20(X,Y));
coherence
for b1 being PartFunc of X,Y holds b1 is complex-functions-valued
;
end;

registration
let X be set ;
let Y be ext-real-functions-membered set ;
cluster Function-like -> ext-real-functions-valued for Element of K19(K20(X,Y));
coherence
for b1 being PartFunc of X,Y holds b1 is ext-real-functions-valued
;
end;

registration
let X be set ;
let Y be real-functions-membered set ;
cluster Function-like -> real-functions-valued for Element of K19(K20(X,Y));
coherence
for b1 being PartFunc of X,Y holds b1 is real-functions-valued
;
end;

registration
let X be set ;
let Y be rational-functions-membered set ;
cluster Function-like -> rational-functions-valued for Element of K19(K20(X,Y));
coherence
for b1 being PartFunc of X,Y holds b1 is rational-functions-valued
;
end;

registration
let X be set ;
let Y be integer-functions-membered set ;
cluster Function-like -> integer-functions-valued for Element of K19(K20(X,Y));
coherence
for b1 being PartFunc of X,Y holds b1 is integer-functions-valued
;
end;

registration
let X be set ;
let Y be natural-functions-membered set ;
cluster Function-like -> natural-functions-valued for Element of K19(K20(X,Y));
coherence
for b1 being PartFunc of X,Y holds b1 is natural-functions-valued
;
end;

registration
coherence
for b1 being Function st b1 is complex-functions-valued holds
b1 is Function-yielding
proof end;
coherence
for b1 being Function st b1 is real-functions-valued holds
b1 is Function-yielding
;
coherence
for b1 being Function st b1 is ext-real-functions-valued holds
b1 is Function-yielding
proof end;
end;

registration
let f be complex-functions-valued Function;
let x be object ;
coherence
( f . x is Function-like & f . x is Relation-like )
proof end;
end;

registration
let f be ext-real-functions-valued Function;
let x be object ;
coherence
( f . x is Function-like & f . x is Relation-like )
proof end;
end;

registration
let f be complex-functions-valued Function;
let x be object ;
coherence
f . x is complex-valued
proof end;
end;

registration
let f be ext-real-functions-valued Function;
let x be object ;
coherence
f . x is ext-real-valued
proof end;
end;

registration
let f be real-functions-valued Function;
let x be object ;
cluster f . x -> real-valued ;
coherence
f . x is real-valued
proof end;
end;

registration
let f be rational-functions-valued Function;
let x be object ;
cluster f . x -> RAT -valued ;
coherence
f . x is RAT -valued
proof end;
end;

registration
let f be integer-functions-valued Function;
let x be object ;
cluster f . x -> INT -valued ;
coherence
f . x is INT -valued
proof end;
end;

registration
let f be natural-functions-valued Function;
let x be object ;
coherence
f . x is natural-valued
proof end;
end;

registration
let f be real-functions-valued Function;
let x, y be object ;
cluster f . (x,y) -> real-valued for Function;
coherence
for b1 being Function st b1 = f . (x,y) holds
b1 is real-valued
;
end;

theorem Th7: :: VALUED_2:7
for c1, c2 being Complex
for g being complex-valued Function st g <> {} & g + c1 = g + c2 holds
c1 = c2
proof end;

theorem Th8: :: VALUED_2:8
for c1, c2 being Complex
for g being complex-valued Function st g <> {} & g - c1 = g - c2 holds
c1 = c2
proof end;

theorem Th9: :: VALUED_2:9
for c1, c2 being Complex
for g being complex-valued Function st g <> {} & g is non-empty & g (#) c1 = g (#) c2 holds
c1 = c2
proof end;

theorem Th10: :: VALUED_2:10
for c being Complex
for g being complex-valued Function holds - (g + c) = (- g) - c
proof end;

theorem Th11: :: VALUED_2:11
for c being Complex
for g being complex-valued Function holds - (g - c) = (- g) + c
proof end;

theorem Th12: :: VALUED_2:12
for c1, c2 being Complex
for g being complex-valued Function holds (g + c1) + c2 = g + (c1 + c2)
proof end;

theorem Th13: :: VALUED_2:13
for c1, c2 being Complex
for g being complex-valued Function holds (g + c1) - c2 = g + (c1 - c2)
proof end;

theorem Th14: :: VALUED_2:14
for c1, c2 being Complex
for g being complex-valued Function holds (g - c1) + c2 = g - (c1 - c2)
proof end;

theorem Th15: :: VALUED_2:15
for c1, c2 being Complex
for g being complex-valued Function holds (g - c1) - c2 = g - (c1 + c2)
proof end;

theorem Th16: :: VALUED_2:16
for c1, c2 being Complex
for g being complex-valued Function holds (g (#) c1) (#) c2 = g (#) (c1 * c2)
proof end;

theorem Th17: :: VALUED_2:17
for g, h being complex-valued Function holds - (g + h) = (- g) - h
proof end;

theorem Th18: :: VALUED_2:18
for g, h being complex-valued Function holds g - h = - (h - g)
proof end;

theorem Th19: :: VALUED_2:19
for g, h, k being complex-valued Function holds (g (#) h) /" k = g (#) (h /" k)
proof end;

theorem Th20: :: VALUED_2:20
for g, h, k being complex-valued Function holds (g /" h) (#) k = (g (#) k) /" h
proof end;

theorem Th21: :: VALUED_2:21
for g, h, k being complex-valued Function holds (g /" h) /" k = g /" (h (#) k)
proof end;

theorem Th22: :: VALUED_2:22
for c being Complex
for g being complex-valued Function holds c (#) (- g) = (- c) (#) g
proof end;

theorem Th23: :: VALUED_2:23
for c being Complex
for g being complex-valued Function holds c (#) (- g) = - (c (#) g)
proof end;

theorem Th24: :: VALUED_2:24
for c being Complex
for g being complex-valued Function holds (- c) (#) g = - (c (#) g)
proof end;

theorem Th25: :: VALUED_2:25
for g, h being complex-valued Function holds - (g (#) h) = (- g) (#) h
proof end;

theorem :: VALUED_2:26
for g, h being complex-valued Function holds - (g /" h) = (- g) /" h
proof end;

theorem Th27: :: VALUED_2:27
for g, h being complex-valued Function holds - (g /" h) = g /" (- h)
proof end;

definition
let f be complex-valued Function;
let c be Complex;
func f (/) c -> Function equals :: VALUED_2:def 32
(1 / c) (#) f;
coherence
(1 / c) (#) f is Function
;
end;

:: deftheorem defines (/) VALUED_2:def 32 :
for f being complex-valued Function
for c being Complex holds f (/) c = (1 / c) (#) f;

registration
let f be complex-valued Function;
let c be Complex;
coherence ;
end;

registration
let f be real-valued Function;
let r be Real;
coherence
f (/) r is real-valued
;
end;

registration
let f be RAT -valued Function;
let r be Rational;
cluster f (/) r -> RAT -valued ;
coherence
f (/) r is RAT -valued
;
end;

registration
let f be complex-valued FinSequence;
let c be Complex;
coherence ;
end;

theorem :: VALUED_2:28
for c being Complex
for g being complex-valued Function holds dom (g (/) c) = dom g by VALUED_1:def 5;

theorem :: VALUED_2:29
for c being Complex
for g being complex-valued Function
for x being object holds (g (/) c) . x = (g . x) / c by VALUED_1:6;

theorem Th30: :: VALUED_2:30
for c being Complex
for g being complex-valued Function holds (- g) (/) c = - (g (/) c)
proof end;

theorem Th31: :: VALUED_2:31
for c being Complex
for g being complex-valued Function holds g (/) (- c) = - (g (/) c)
proof end;

theorem :: VALUED_2:32
for c being Complex
for g being complex-valued Function holds g (/) (- c) = (- g) (/) c
proof end;

theorem Th33: :: VALUED_2:33
for c1, c2 being Complex
for g being complex-valued Function st g <> {} & g is non-empty & g (/) c1 = g (/) c2 holds
c1 = c2
proof end;

theorem :: VALUED_2:34
for c1, c2 being Complex
for g being complex-valued Function holds (g (#) c1) (/) c2 = g (#) (c1 / c2)
proof end;

theorem :: VALUED_2:35
for c1, c2 being Complex
for g being complex-valued Function holds (g (/) c1) (#) c2 = (g (#) c2) (/) c1
proof end;

theorem :: VALUED_2:36
for c1, c2 being Complex
for g being complex-valued Function holds (g (/) c1) (/) c2 = g (/) (c1 * c2)
proof end;

theorem :: VALUED_2:37
for c being Complex
for g, h being complex-valued Function holds (g + h) (/) c = (g (/) c) + (h (/) c)
proof end;

theorem :: VALUED_2:38
for c being Complex
for g, h being complex-valued Function holds (g - h) (/) c = (g (/) c) - (h (/) c)
proof end;

theorem :: VALUED_2:39
for c being Complex
for g, h being complex-valued Function holds (g (#) h) (/) c = g (#) (h (/) c)
proof end;

theorem :: VALUED_2:40
for c being Complex
for g, h being complex-valued Function holds (g /" h) (/) c = g /" (h (#) c)
proof end;

definition
let f be complex-functions-valued Function;
deffunc H1( object ) -> set = - (f . $1); func <-> f -> Function means :Def33: :: VALUED_2:def 33 ( dom it = dom f & ( for x being object st x in dom it holds it . x = - (f . x) ) ); existence ex b1 being Function st ( dom b1 = dom f & ( for x being object st x in dom b1 holds b1 . x = - (f . x) ) ) proof end; uniqueness for b1, b2 being Function st dom b1 = dom f & ( for x being object st x in dom b1 holds b1 . x = - (f . x) ) & dom b2 = dom f & ( for x being object st x in dom b2 holds b2 . x = - (f . x) ) holds b1 = b2 proof end; end; :: deftheorem Def33 defines <-> VALUED_2:def 33 : for f being complex-functions-valued Function for b2 being Function holds ( b2 = <-> f iff ( dom b2 = dom f & ( for x being object st x in dom b2 holds b2 . x = - (f . x) ) ) ); definition let X be set ; let Y be complex-functions-membered set ; let f be PartFunc of X,Y; :: original: <-> redefine func <-> f -> PartFunc of X,(C_PFuncs (DOMS Y)); coherence <-> f is PartFunc of X,(C_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be real-functions-membered set ; let f be PartFunc of X,Y; :: original: <-> redefine func <-> f -> PartFunc of X,(R_PFuncs (DOMS Y)); coherence <-> f is PartFunc of X,(R_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be rational-functions-membered set ; let f be PartFunc of X,Y; :: original: <-> redefine func <-> f -> PartFunc of X,(Q_PFuncs (DOMS Y)); coherence <-> f is PartFunc of X,(Q_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be integer-functions-membered set ; let f be PartFunc of X,Y; :: original: <-> redefine func <-> f -> PartFunc of X,(I_PFuncs (DOMS Y)); coherence <-> f is PartFunc of X,(I_PFuncs (DOMS Y)) proof end; end; registration let Y be complex-functions-membered set ; let f be FinSequence of Y; coherence proof end; end; theorem :: VALUED_2:41 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y holds <-> (<-> f) = f proof end; theorem :: VALUED_2:42 for X1, X2 being set for Y1, Y2 being complex-functions-membered set for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 st <-> f1 = <-> f2 holds f1 = f2 proof end; definition let X be complex-functions-membered set ; let Y be set ; let f be PartFunc of X,Y; defpred S1[ object , object ] means ex a being complex-valued Function st ($1 = a & $2 = f . (- a) ); func f (-) -> Function means :: VALUED_2:def 34 ( dom it = dom f & ( for x being complex-valued Function st x in dom it holds it . x = f . (- x) ) ); existence ex b1 being Function st ( dom b1 = dom f & ( for x being complex-valued Function st x in dom b1 holds b1 . x = f . (- x) ) ) proof end; uniqueness for b1, b2 being Function st dom b1 = dom f & ( for x being complex-valued Function st x in dom b1 holds b1 . x = f . (- x) ) & dom b2 = dom f & ( for x being complex-valued Function st x in dom b2 holds b2 . x = f . (- x) ) holds b1 = b2 proof end; end; :: deftheorem defines (-) VALUED_2:def 34 : for X being complex-functions-membered set for Y being set for f being PartFunc of X,Y for b4 being Function holds ( b4 = f (-) iff ( dom b4 = dom f & ( for x being complex-valued Function st x in dom b4 holds b4 . x = f . (- x) ) ) ); definition let f be complex-functions-valued Function; deffunc H1( object ) -> set = (f .$1) " ;
func </> f -> Function means :Def35: :: VALUED_2:def 35
( dom it = dom f & ( for x being object st x in dom it holds
it . x = (f . x) " ) );
existence
ex b1 being Function st
( dom b1 = dom f & ( for x being object st x in dom b1 holds
b1 . x = (f . x) " ) )
proof end;
uniqueness
for b1, b2 being Function st dom b1 = dom f & ( for x being object st x in dom b1 holds
b1 . x = (f . x) " ) & dom b2 = dom f & ( for x being object st x in dom b2 holds
b2 . x = (f . x) " ) holds
b1 = b2
proof end;
end;

:: deftheorem Def35 defines </> VALUED_2:def 35 :
for f being complex-functions-valued Function
for b2 being Function holds
( b2 = </> f iff ( dom b2 = dom f & ( for x being object st x in dom b2 holds
b2 . x = (f . x) " ) ) );

definition
let X be set ;
let Y be complex-functions-membered set ;
let f be PartFunc of X,Y;
:: original: </>
redefine func </> f -> PartFunc of X,(C_PFuncs (DOMS Y));
coherence
</> f is PartFunc of X,(C_PFuncs (DOMS Y))
proof end;
end;

definition
let X be set ;
let Y be real-functions-membered set ;
let f be PartFunc of X,Y;
:: original: </>
redefine func </> f -> PartFunc of X,(R_PFuncs (DOMS Y));
coherence
</> f is PartFunc of X,(R_PFuncs (DOMS Y))
proof end;
end;

definition
let X be set ;
let Y be rational-functions-membered set ;
let f be PartFunc of X,Y;
:: original: </>
redefine func </> f -> PartFunc of X,(Q_PFuncs (DOMS Y));
coherence
</> f is PartFunc of X,(Q_PFuncs (DOMS Y))
proof end;
end;

registration
let Y be complex-functions-membered set ;
let f be FinSequence of Y;
coherence
proof end;
end;

theorem :: VALUED_2:43
for X being set
for Y being complex-functions-membered set
for f being PartFunc of X,Y holds </> (</> f) = f
proof end;

definition
let f be complex-functions-valued Function;
deffunc H1( object ) -> set = abs (f . $1); func abs f -> Function means :Def36: :: VALUED_2:def 36 ( dom it = dom f & ( for x being object st x in dom it holds it . x = abs (f . x) ) ); existence ex b1 being Function st ( dom b1 = dom f & ( for x being object st x in dom b1 holds b1 . x = abs (f . x) ) ) proof end; uniqueness for b1, b2 being Function st dom b1 = dom f & ( for x being object st x in dom b1 holds b1 . x = abs (f . x) ) & dom b2 = dom f & ( for x being object st x in dom b2 holds b2 . x = abs (f . x) ) holds b1 = b2 proof end; end; :: deftheorem Def36 defines abs VALUED_2:def 36 : for f being complex-functions-valued Function for b2 being Function holds ( b2 = abs f iff ( dom b2 = dom f & ( for x being object st x in dom b2 holds b2 . x = abs (f . x) ) ) ); definition let X be set ; let Y be complex-functions-membered set ; let f be PartFunc of X,Y; :: original: abs redefine func abs f -> PartFunc of X,(C_PFuncs (DOMS Y)); coherence abs f is PartFunc of X,(C_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be real-functions-membered set ; let f be PartFunc of X,Y; :: original: abs redefine func abs f -> PartFunc of X,(R_PFuncs (DOMS Y)); coherence abs f is PartFunc of X,(R_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be rational-functions-membered set ; let f be PartFunc of X,Y; :: original: abs redefine func abs f -> PartFunc of X,(Q_PFuncs (DOMS Y)); coherence abs f is PartFunc of X,(Q_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be integer-functions-membered set ; let f be PartFunc of X,Y; :: original: abs redefine func abs f -> PartFunc of X,(N_PFuncs (DOMS Y)); coherence abs f is PartFunc of X,(N_PFuncs (DOMS Y)) proof end; end; registration let Y be complex-functions-membered set ; let f be FinSequence of Y; coherence proof end; end; theorem :: VALUED_2:44 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y holds abs (abs f) = abs f proof end; definition let Y be complex-functions-membered set ; let f be Y -valued Function; let c be Complex; deffunc H1( object ) -> set = c + (f .$1);
func f [+] c -> Function means :Def37: :: VALUED_2:def 37
( dom it = dom f & ( for x being object st x in dom it holds
it . x = c + (f . x) ) );
existence
ex b1 being Function st
( dom b1 = dom f & ( for x being object st x in dom b1 holds
b1 . x = c + (f . x) ) )
proof end;
uniqueness
for b1, b2 being Function st dom b1 = dom f & ( for x being object st x in dom b1 holds
b1 . x = c + (f . x) ) & dom b2 = dom f & ( for x being object st x in dom b2 holds
b2 . x = c + (f . x) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def37 defines [+] VALUED_2:def 37 :
for Y being complex-functions-membered set
for f being b1 -valued Function
for c being Complex
for b4 being Function holds
( b4 = f [+] c iff ( dom b4 = dom f & ( for x being object st x in dom b4 holds
b4 . x = c + (f . x) ) ) );

definition
let X be set ;
let Y be complex-functions-membered set ;
let f be PartFunc of X,Y;
let c be Complex;
:: original: [+]
redefine func f [+] c -> PartFunc of X,(C_PFuncs (DOMS Y));
coherence
f [+] c is PartFunc of X,(C_PFuncs (DOMS Y))
proof end;
end;

definition
let X be set ;
let Y be real-functions-membered set ;
let f be PartFunc of X,Y;
let c be Real;
:: original: [+]
redefine func f [+] c -> PartFunc of X,(R_PFuncs (DOMS Y));
coherence
f [+] c is PartFunc of X,(R_PFuncs (DOMS Y))
proof end;
end;

definition
let X be set ;
let Y be rational-functions-membered set ;
let f be PartFunc of X,Y;
let c be Rational;
:: original: [+]
redefine func f [+] c -> PartFunc of X,(Q_PFuncs (DOMS Y));
coherence
f [+] c is PartFunc of X,(Q_PFuncs (DOMS Y))
proof end;
end;

definition
let X be set ;
let Y be integer-functions-membered set ;
let f be PartFunc of X,Y;
let c be Integer;
:: original: [+]
redefine func f [+] c -> PartFunc of X,(I_PFuncs (DOMS Y));
coherence
f [+] c is PartFunc of X,(I_PFuncs (DOMS Y))
proof end;
end;

definition
let X be set ;
let Y be natural-functions-membered set ;
let f be PartFunc of X,Y;
let c be Nat;
:: original: [+]
redefine func f [+] c -> PartFunc of X,(N_PFuncs (DOMS Y));
coherence
f [+] c is PartFunc of X,(N_PFuncs (DOMS Y))
proof end;
end;

theorem :: VALUED_2:45
for X being set
for Y being complex-functions-membered set
for c1, c2 being Complex
for f being PartFunc of X,Y holds (f [+] c1) [+] c2 = f [+] (c1 + c2)
proof end;

theorem :: VALUED_2:46
for X being set
for Y being complex-functions-membered set
for c1, c2 being Complex
for f being PartFunc of X,Y st f <> {} & f is non-empty & f [+] c1 = f [+] c2 holds
c1 = c2
proof end;

definition
let Y be complex-functions-membered set ;
let f be Y -valued Function;
let c be Complex;
func f [-] c -> Function equals :: VALUED_2:def 38
f [+] (- c);
coherence
f [+] (- c) is Function
;
end;

:: deftheorem defines [-] VALUED_2:def 38 :
for Y being complex-functions-membered set
for f being b1 -valued Function
for c being Complex holds f [-] c = f [+] (- c);

theorem :: VALUED_2:47
for X being set
for Y being complex-functions-membered set
for c being Complex
for f being PartFunc of X,Y holds dom (f [-] c) = dom f by Def37;

theorem :: VALUED_2:48
for x being object
for X being set
for Y being complex-functions-membered set
for c being Complex
for f being PartFunc of X,Y st x in dom (f [-] c) holds
(f [-] c) . x = (f . x) - c by Def37;

definition
let X be set ;
let Y be complex-functions-membered set ;
let f be PartFunc of X,Y;
let c be Complex;
:: original: [-]
redefine func f [-] c -> PartFunc of X,(C_PFuncs (DOMS Y));
coherence
f [-] c is PartFunc of X,(C_PFuncs (DOMS Y))
proof end;
end;

definition
let X be set ;
let Y be real-functions-membered set ;
let f be PartFunc of X,Y;
let c be Real;
:: original: [-]
redefine func f [-] c -> PartFunc of X,(R_PFuncs (DOMS Y));
coherence
f [-] c is PartFunc of X,(R_PFuncs (DOMS Y))
proof end;
end;

definition
let X be set ;
let Y be rational-functions-membered set ;
let f be PartFunc of X,Y;
let c be Rational;
:: original: [-]
redefine func f [-] c -> PartFunc of X,(Q_PFuncs (DOMS Y));
coherence
f [-] c is PartFunc of X,(Q_PFuncs (DOMS Y))
proof end;
end;

definition
let X be set ;
let Y be integer-functions-membered set ;
let f be PartFunc of X,Y;
let c be Integer;
:: original: [-]
redefine func f [-] c -> PartFunc of X,(I_PFuncs (DOMS Y));
coherence
f [-] c is PartFunc of X,(I_PFuncs (DOMS Y))
proof end;
end;

theorem :: VALUED_2:49
for X being set
for Y being complex-functions-membered set
for c1, c2 being Complex
for f being PartFunc of X,Y st f <> {} & f is non-empty & f [-] c1 = f [-] c2 holds
c1 = c2
proof end;

theorem :: VALUED_2:50
for X being set
for Y being complex-functions-membered set
for c1, c2 being Complex
for f being PartFunc of X,Y holds (f [+] c1) [-] c2 = f [+] (c1 - c2)
proof end;

theorem :: VALUED_2:51
for X being set
for Y being complex-functions-membered set
for c1, c2 being Complex
for f being PartFunc of X,Y holds (f [-] c1) [+] c2 = f [-] (c1 - c2)
proof end;

theorem :: VALUED_2:52
for X being set
for Y being complex-functions-membered set
for c1, c2 being Complex
for f being PartFunc of X,Y holds (f [-] c1) [-] c2 = f [-] (c1 + c2)
proof end;

definition
let Y be complex-functions-membered set ;
let f be Y -valued Function;
let c be Complex;
deffunc H1( object ) -> set = c (#) (f . $1); func f [#] c -> Function means :Def39: :: VALUED_2:def 39 ( dom it = dom f & ( for x being object st x in dom it holds it . x = c (#) (f . x) ) ); existence ex b1 being Function st ( dom b1 = dom f & ( for x being object st x in dom b1 holds b1 . x = c (#) (f . x) ) ) proof end; uniqueness for b1, b2 being Function st dom b1 = dom f & ( for x being object st x in dom b1 holds b1 . x = c (#) (f . x) ) & dom b2 = dom f & ( for x being object st x in dom b2 holds b2 . x = c (#) (f . x) ) holds b1 = b2 proof end; end; :: deftheorem Def39 defines [#] VALUED_2:def 39 : for Y being complex-functions-membered set for f being b1 -valued Function for c being Complex for b4 being Function holds ( b4 = f [#] c iff ( dom b4 = dom f & ( for x being object st x in dom b4 holds b4 . x = c (#) (f . x) ) ) ); definition let X be set ; let Y be complex-functions-membered set ; let f be PartFunc of X,Y; let c be Complex; :: original: [#] redefine func f [#] c -> PartFunc of X,(C_PFuncs (DOMS Y)); coherence f [#] c is PartFunc of X,(C_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be real-functions-membered set ; let f be PartFunc of X,Y; let c be Real; :: original: [#] redefine func f [#] c -> PartFunc of X,(R_PFuncs (DOMS Y)); coherence f [#] c is PartFunc of X,(R_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be rational-functions-membered set ; let f be PartFunc of X,Y; let c be Rational; :: original: [#] redefine func f [#] c -> PartFunc of X,(Q_PFuncs (DOMS Y)); coherence f [#] c is PartFunc of X,(Q_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be integer-functions-membered set ; let f be PartFunc of X,Y; let c be Integer; :: original: [#] redefine func f [#] c -> PartFunc of X,(I_PFuncs (DOMS Y)); coherence f [#] c is PartFunc of X,(I_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be natural-functions-membered set ; let f be PartFunc of X,Y; let c be Nat; :: original: [#] redefine func f [#] c -> PartFunc of X,(N_PFuncs (DOMS Y)); coherence f [#] c is PartFunc of X,(N_PFuncs (DOMS Y)) proof end; end; theorem :: VALUED_2:53 for X being set for Y being complex-functions-membered set for c1, c2 being Complex for f being PartFunc of X,Y holds (f [#] c1) [#] c2 = f [#] (c1 * c2) proof end; theorem :: VALUED_2:54 for X being set for Y being complex-functions-membered set for c1, c2 being Complex for f being PartFunc of X,Y st f <> {} & f is non-empty & ( for x being object st x in dom f holds f . x is non-empty ) & f [#] c1 = f [#] c2 holds c1 = c2 proof end; definition let Y be complex-functions-membered set ; let f be Y -valued Function; let c be Complex; func f [/] c -> Function equals :: VALUED_2:def 40 f [#] (c "); coherence f [#] (c ") is Function ; end; :: deftheorem defines [/] VALUED_2:def 40 : for Y being complex-functions-membered set for f being b1 -valued Function for c being Complex holds f [/] c = f [#] (c "); theorem :: VALUED_2:55 for X being set for Y being complex-functions-membered set for c being Complex for f being PartFunc of X,Y holds dom (f [/] c) = dom f by Def39; theorem :: VALUED_2:56 for x being object for X being set for Y being complex-functions-membered set for c being Complex for f being PartFunc of X,Y st x in dom (f [/] c) holds (f [/] c) . x = (c ") (#) (f . x) by Def39; definition let X be set ; let Y be complex-functions-membered set ; let f be PartFunc of X,Y; let c be Complex; :: original: [/] redefine func f [/] c -> PartFunc of X,(C_PFuncs (DOMS Y)); coherence f [/] c is PartFunc of X,(C_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be real-functions-membered set ; let f be PartFunc of X,Y; let c be Real; :: original: [/] redefine func f [/] c -> PartFunc of X,(R_PFuncs (DOMS Y)); coherence f [/] c is PartFunc of X,(R_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be rational-functions-membered set ; let f be PartFunc of X,Y; let c be Rational; :: original: [/] redefine func f [/] c -> PartFunc of X,(Q_PFuncs (DOMS Y)); coherence f [/] c is PartFunc of X,(Q_PFuncs (DOMS Y)) proof end; end; theorem :: VALUED_2:57 for X being set for Y being complex-functions-membered set for c1, c2 being Complex for f being PartFunc of X,Y holds (f [/] c1) [/] c2 = f [/] (c1 * c2) proof end; theorem :: VALUED_2:58 for X being set for Y being complex-functions-membered set for c1, c2 being Complex for f being PartFunc of X,Y st f <> {} & f is non-empty & ( for x being object st x in dom f holds f . x is non-empty ) & f [/] c1 = f [/] c2 holds c1 = c2 proof end; definition let Y be complex-functions-membered set ; let f be Y -valued Function; let g be complex-valued Function; deffunc H1( object ) -> set = (f .$1) + (g . $1); func f <+> g -> Function means :Def41: :: VALUED_2:def 41 ( dom it = (dom f) /\ (dom g) & ( for x being object st x in dom it holds it . x = (f . x) + (g . x) ) ); existence ex b1 being Function st ( dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds b1 . x = (f . x) + (g . x) ) ) proof end; uniqueness for b1, b2 being Function st dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds b1 . x = (f . x) + (g . x) ) & dom b2 = (dom f) /\ (dom g) & ( for x being object st x in dom b2 holds b2 . x = (f . x) + (g . x) ) holds b1 = b2 proof end; end; :: deftheorem Def41 defines <+> VALUED_2:def 41 : for Y being complex-functions-membered set for f being b1 -valued Function for g being complex-valued Function for b4 being Function holds ( b4 = f <+> g iff ( dom b4 = (dom f) /\ (dom g) & ( for x being object st x in dom b4 holds b4 . x = (f . x) + (g . x) ) ) ); definition let X be set ; let Y be complex-functions-membered set ; let f be PartFunc of X,Y; let g be complex-valued Function; :: original: <+> redefine func f <+> g -> PartFunc of (X /\ (dom g)),(C_PFuncs (DOMS Y)); coherence f <+> g is PartFunc of (X /\ (dom g)),(C_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be real-functions-membered set ; let f be PartFunc of X,Y; let g be real-valued Function; :: original: <+> redefine func f <+> g -> PartFunc of (X /\ (dom g)),(R_PFuncs (DOMS Y)); coherence f <+> g is PartFunc of (X /\ (dom g)),(R_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be rational-functions-membered set ; let f be PartFunc of X,Y; let g be RAT -valued Function; :: original: <+> redefine func f <+> g -> PartFunc of (X /\ (dom g)),(Q_PFuncs (DOMS Y)); coherence f <+> g is PartFunc of (X /\ (dom g)),(Q_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be integer-functions-membered set ; let f be PartFunc of X,Y; let g be INT -valued Function; :: original: <+> redefine func f <+> g -> PartFunc of (X /\ (dom g)),(I_PFuncs (DOMS Y)); coherence f <+> g is PartFunc of (X /\ (dom g)),(I_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be natural-functions-membered set ; let f be PartFunc of X,Y; let g be natural-valued Function; :: original: <+> redefine func f <+> g -> PartFunc of (X /\ (dom g)),(N_PFuncs (DOMS Y)); coherence f <+> g is PartFunc of (X /\ (dom g)),(N_PFuncs (DOMS Y)) proof end; end; theorem :: VALUED_2:59 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g, h being complex-valued Function holds (f <+> g) <+> h = f <+> (g + h) proof end; theorem :: VALUED_2:60 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g being complex-valued Function holds <-> (f <+> g) = (<-> f) <+> (- g) proof end; definition let Y be complex-functions-membered set ; let f be Y -valued Function; let g be complex-valued Function; func f <-> g -> Function equals :: VALUED_2:def 42 f <+> (- g); coherence f <+> (- g) is Function ; end; :: deftheorem defines <-> VALUED_2:def 42 : for Y being complex-functions-membered set for f being b1 -valued Function for g being complex-valued Function holds f <-> g = f <+> (- g); theorem Th61: :: VALUED_2:61 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g being complex-valued Function holds dom (f <-> g) = (dom f) /\ (dom g) proof end; theorem Th62: :: VALUED_2:62 for x being object for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g being complex-valued Function st x in dom (f <-> g) holds (f <-> g) . x = (f . x) - (g . x) proof end; definition let X be set ; let Y be complex-functions-membered set ; let f be PartFunc of X,Y; let g be complex-valued Function; :: original: <-> redefine func f <-> g -> PartFunc of (X /\ (dom g)),(C_PFuncs (DOMS Y)); coherence f <-> g is PartFunc of (X /\ (dom g)),(C_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be real-functions-membered set ; let f be PartFunc of X,Y; let g be real-valued Function; :: original: <-> redefine func f <-> g -> PartFunc of (X /\ (dom g)),(R_PFuncs (DOMS Y)); coherence f <-> g is PartFunc of (X /\ (dom g)),(R_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be rational-functions-membered set ; let f be PartFunc of X,Y; let g be RAT -valued Function; :: original: <-> redefine func f <-> g -> PartFunc of (X /\ (dom g)),(Q_PFuncs (DOMS Y)); coherence f <-> g is PartFunc of (X /\ (dom g)),(Q_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be integer-functions-membered set ; let f be PartFunc of X,Y; let g be INT -valued Function; :: original: <-> redefine func f <-> g -> PartFunc of (X /\ (dom g)),(I_PFuncs (DOMS Y)); coherence f <-> g is PartFunc of (X /\ (dom g)),(I_PFuncs (DOMS Y)) proof end; end; theorem :: VALUED_2:63 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g being complex-valued Function holds f <-> (- g) = f <+> g ; theorem :: VALUED_2:64 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g being complex-valued Function holds <-> (f <-> g) = (<-> f) <+> g proof end; theorem :: VALUED_2:65 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g, h being complex-valued Function holds (f <+> g) <-> h = f <+> (g - h) proof end; theorem :: VALUED_2:66 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g, h being complex-valued Function holds (f <-> g) <+> h = f <-> (g - h) proof end; theorem :: VALUED_2:67 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g, h being complex-valued Function holds (f <-> g) <-> h = f <-> (g + h) proof end; definition let Y be complex-functions-membered set ; let f be Y -valued Function; let g be complex-valued Function; deffunc H1( object ) -> set = (f .$1) (#) (g . $1); func f <#> g -> Function means :Def43: :: VALUED_2:def 43 ( dom it = (dom f) /\ (dom g) & ( for x being object st x in dom it holds it . x = (f . x) (#) (g . x) ) ); existence ex b1 being Function st ( dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds b1 . x = (f . x) (#) (g . x) ) ) proof end; uniqueness for b1, b2 being Function st dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds b1 . x = (f . x) (#) (g . x) ) & dom b2 = (dom f) /\ (dom g) & ( for x being object st x in dom b2 holds b2 . x = (f . x) (#) (g . x) ) holds b1 = b2 proof end; end; :: deftheorem Def43 defines <#> VALUED_2:def 43 : for Y being complex-functions-membered set for f being b1 -valued Function for g being complex-valued Function for b4 being Function holds ( b4 = f <#> g iff ( dom b4 = (dom f) /\ (dom g) & ( for x being object st x in dom b4 holds b4 . x = (f . x) (#) (g . x) ) ) ); definition let X be set ; let Y be complex-functions-membered set ; let f be PartFunc of X,Y; let g be complex-valued Function; :: original: <#> redefine func f <#> g -> PartFunc of (X /\ (dom g)),(C_PFuncs (DOMS Y)); coherence f <#> g is PartFunc of (X /\ (dom g)),(C_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be real-functions-membered set ; let f be PartFunc of X,Y; let g be real-valued Function; :: original: <#> redefine func f <#> g -> PartFunc of (X /\ (dom g)),(R_PFuncs (DOMS Y)); coherence f <#> g is PartFunc of (X /\ (dom g)),(R_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be rational-functions-membered set ; let f be PartFunc of X,Y; let g be RAT -valued Function; :: original: <#> redefine func f <#> g -> PartFunc of (X /\ (dom g)),(Q_PFuncs (DOMS Y)); coherence f <#> g is PartFunc of (X /\ (dom g)),(Q_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be integer-functions-membered set ; let f be PartFunc of X,Y; let g be INT -valued Function; :: original: <#> redefine func f <#> g -> PartFunc of (X /\ (dom g)),(I_PFuncs (DOMS Y)); coherence f <#> g is PartFunc of (X /\ (dom g)),(I_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be natural-functions-membered set ; let f be PartFunc of X,Y; let g be natural-valued Function; :: original: <#> redefine func f <#> g -> PartFunc of (X /\ (dom g)),(N_PFuncs (DOMS Y)); coherence f <#> g is PartFunc of (X /\ (dom g)),(N_PFuncs (DOMS Y)) proof end; end; theorem :: VALUED_2:68 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g being complex-valued Function holds f <#> (- g) = (<-> f) <#> g proof end; theorem :: VALUED_2:69 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g being complex-valued Function holds f <#> (- g) = <-> (f <#> g) proof end; theorem :: VALUED_2:70 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g, h being complex-valued Function holds (f <#> g) <#> h = f <#> (g (#) h) proof end; definition let Y be complex-functions-membered set ; let f be Y -valued Function; let g be complex-valued Function; func f </> g -> Function equals :: VALUED_2:def 44 f <#> (g "); coherence f <#> (g ") is Function ; end; :: deftheorem defines </> VALUED_2:def 44 : for Y being complex-functions-membered set for f being b1 -valued Function for g being complex-valued Function holds f </> g = f <#> (g "); theorem Th71: :: VALUED_2:71 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g being complex-valued Function holds dom (f </> g) = (dom f) /\ (dom g) proof end; theorem Th72: :: VALUED_2:72 for x being object for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g being complex-valued Function st x in dom (f </> g) holds (f </> g) . x = (f . x) (/) (g . x) proof end; definition let X be set ; let Y be complex-functions-membered set ; let f be PartFunc of X,Y; let g be complex-valued Function; :: original: </> redefine func f </> g -> PartFunc of (X /\ (dom g)),(C_PFuncs (DOMS Y)); coherence f </> g is PartFunc of (X /\ (dom g)),(C_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be real-functions-membered set ; let f be PartFunc of X,Y; let g be real-valued Function; :: original: </> redefine func f </> g -> PartFunc of (X /\ (dom g)),(R_PFuncs (DOMS Y)); coherence f </> g is PartFunc of (X /\ (dom g)),(R_PFuncs (DOMS Y)) proof end; end; definition let X be set ; let Y be rational-functions-membered set ; let f be PartFunc of X,Y; let g be RAT -valued Function; :: original: </> redefine func f </> g -> PartFunc of (X /\ (dom g)),(Q_PFuncs (DOMS Y)); coherence f </> g is PartFunc of (X /\ (dom g)),(Q_PFuncs (DOMS Y)) proof end; end; theorem :: VALUED_2:73 for X being set for Y being complex-functions-membered set for f being PartFunc of X,Y for g, h being complex-valued Function holds (f <#> g) </> h = f <#> (g /" h) proof end; definition let Y1, Y2 be complex-functions-membered set ; let f be Y1 -valued Function; let g be Y2 -valued Function; deffunc H1( object ) -> set = (f .$1) + (g . $1); func f <++> g -> Function means :Def45: :: VALUED_2:def 45 ( dom it = (dom f) /\ (dom g) & ( for x being object st x in dom it holds it . x = (f . x) + (g . x) ) ); existence ex b1 being Function st ( dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds b1 . x = (f . x) + (g . x) ) ) proof end; uniqueness for b1, b2 being Function st dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds b1 . x = (f . x) + (g . x) ) & dom b2 = (dom f) /\ (dom g) & ( for x being object st x in dom b2 holds b2 . x = (f . x) + (g . x) ) holds b1 = b2 proof end; end; :: deftheorem Def45 defines <++> VALUED_2:def 45 : for Y1, Y2 being complex-functions-membered set for f being b1 -valued Function for g being b2 -valued Function for b5 being Function holds ( b5 = f <++> g iff ( dom b5 = (dom f) /\ (dom g) & ( for x being object st x in dom b5 holds b5 . x = (f . x) + (g . x) ) ) ); definition let X1, X2 be set ; let Y1, Y2 be complex-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <++> redefine func f <++> g -> PartFunc of (X1 /\ X2),(C_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <++> g is PartFunc of (X1 /\ X2),(C_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; definition let X1, X2 be set ; let Y1, Y2 be real-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <++> redefine func f <++> g -> PartFunc of (X1 /\ X2),(R_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <++> g is PartFunc of (X1 /\ X2),(R_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; definition let X1, X2 be set ; let Y1, Y2 be rational-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <++> redefine func f <++> g -> PartFunc of (X1 /\ X2),(Q_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <++> g is PartFunc of (X1 /\ X2),(Q_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; definition let X1, X2 be set ; let Y1, Y2 be integer-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <++> redefine func f <++> g -> PartFunc of (X1 /\ X2),(I_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <++> g is PartFunc of (X1 /\ X2),(I_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; definition let X1, X2 be set ; let Y1, Y2 be natural-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <++> redefine func f <++> g -> PartFunc of (X1 /\ X2),(N_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <++> g is PartFunc of (X1 /\ X2),(N_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; theorem :: VALUED_2:74 for X1, X2 being set for Y1, Y2 being complex-functions-membered set for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds f1 <++> f2 = f2 <++> f1 proof end; theorem :: VALUED_2:75 for X, X1, X2 being set for Y, Y1, Y2 being complex-functions-membered set for f being PartFunc of X,Y for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds (f <++> f1) <++> f2 = f <++> (f1 <++> f2) proof end; theorem :: VALUED_2:76 for X1, X2 being set for Y1, Y2 being complex-functions-membered set for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds <-> (f1 <++> f2) = (<-> f1) <++> (<-> f2) proof end; definition let Y1, Y2 be complex-functions-membered set ; let f be Y1 -valued Function; let g be Y2 -valued Function; deffunc H1( object ) -> set = (f .$1) - (g . $1); func f <--> g -> Function means :Def46: :: VALUED_2:def 46 ( dom it = (dom f) /\ (dom g) & ( for x being object st x in dom it holds it . x = (f . x) - (g . x) ) ); existence ex b1 being Function st ( dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds b1 . x = (f . x) - (g . x) ) ) proof end; uniqueness for b1, b2 being Function st dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds b1 . x = (f . x) - (g . x) ) & dom b2 = (dom f) /\ (dom g) & ( for x being object st x in dom b2 holds b2 . x = (f . x) - (g . x) ) holds b1 = b2 proof end; end; :: deftheorem Def46 defines <--> VALUED_2:def 46 : for Y1, Y2 being complex-functions-membered set for f being b1 -valued Function for g being b2 -valued Function for b5 being Function holds ( b5 = f <--> g iff ( dom b5 = (dom f) /\ (dom g) & ( for x being object st x in dom b5 holds b5 . x = (f . x) - (g . x) ) ) ); definition let X1, X2 be set ; let Y1, Y2 be complex-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <--> redefine func f <--> g -> PartFunc of (X1 /\ X2),(C_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <--> g is PartFunc of (X1 /\ X2),(C_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; definition let X1, X2 be set ; let Y1, Y2 be real-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <--> redefine func f <--> g -> PartFunc of (X1 /\ X2),(R_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <--> g is PartFunc of (X1 /\ X2),(R_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; definition let X1, X2 be set ; let Y1, Y2 be rational-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <--> redefine func f <--> g -> PartFunc of (X1 /\ X2),(Q_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <--> g is PartFunc of (X1 /\ X2),(Q_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; definition let X1, X2 be set ; let Y1, Y2 be integer-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <--> redefine func f <--> g -> PartFunc of (X1 /\ X2),(I_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <--> g is PartFunc of (X1 /\ X2),(I_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; theorem :: VALUED_2:77 for X1, X2 being set for Y1, Y2 being complex-functions-membered set for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds f1 <--> f2 = <-> (f2 <--> f1) proof end; theorem :: VALUED_2:78 for X1, X2 being set for Y1, Y2 being complex-functions-membered set for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds <-> (f1 <--> f2) = (<-> f1) <++> f2 proof end; theorem :: VALUED_2:79 for X, X1, X2 being set for Y, Y1, Y2 being complex-functions-membered set for f being PartFunc of X,Y for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds (f <++> f1) <--> f2 = f <++> (f1 <--> f2) proof end; theorem :: VALUED_2:80 for X, X1, X2 being set for Y, Y1, Y2 being complex-functions-membered set for f being PartFunc of X,Y for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds (f <--> f1) <++> f2 = f <--> (f1 <--> f2) proof end; theorem :: VALUED_2:81 for X, X1, X2 being set for Y, Y1, Y2 being complex-functions-membered set for f being PartFunc of X,Y for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds (f <--> f1) <--> f2 = f <--> (f1 <++> f2) proof end; theorem :: VALUED_2:82 for X, X1, X2 being set for Y, Y1, Y2 being complex-functions-membered set for f being PartFunc of X,Y for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds (f <--> f1) <--> f2 = (f <--> f2) <--> f1 proof end; definition let Y1, Y2 be complex-functions-membered set ; let f be Y1 -valued Function; let g be Y2 -valued Function; deffunc H1( object ) -> set = (f .$1) (#) (g . $1); func f <##> g -> Function means :Def47: :: VALUED_2:def 47 ( dom it = (dom f) /\ (dom g) & ( for x being object st x in dom it holds it . x = (f . x) (#) (g . x) ) ); existence ex b1 being Function st ( dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds b1 . x = (f . x) (#) (g . x) ) ) proof end; uniqueness for b1, b2 being Function st dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds b1 . x = (f . x) (#) (g . x) ) & dom b2 = (dom f) /\ (dom g) & ( for x being object st x in dom b2 holds b2 . x = (f . x) (#) (g . x) ) holds b1 = b2 proof end; end; :: deftheorem Def47 defines <##> VALUED_2:def 47 : for Y1, Y2 being complex-functions-membered set for f being b1 -valued Function for g being b2 -valued Function for b5 being Function holds ( b5 = f <##> g iff ( dom b5 = (dom f) /\ (dom g) & ( for x being object st x in dom b5 holds b5 . x = (f . x) (#) (g . x) ) ) ); definition let X1, X2 be set ; let Y1, Y2 be complex-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <##> redefine func f <##> g -> PartFunc of (X1 /\ X2),(C_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <##> g is PartFunc of (X1 /\ X2),(C_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; definition let X1, X2 be set ; let Y1, Y2 be real-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <##> redefine func f <##> g -> PartFunc of (X1 /\ X2),(R_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <##> g is PartFunc of (X1 /\ X2),(R_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; definition let X1, X2 be set ; let Y1, Y2 be rational-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <##> redefine func f <##> g -> PartFunc of (X1 /\ X2),(Q_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <##> g is PartFunc of (X1 /\ X2),(Q_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; definition let X1, X2 be set ; let Y1, Y2 be integer-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <##> redefine func f <##> g -> PartFunc of (X1 /\ X2),(I_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <##> g is PartFunc of (X1 /\ X2),(I_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; definition let X1, X2 be set ; let Y1, Y2 be natural-functions-membered set ; let f be PartFunc of X1,Y1; let g be PartFunc of X2,Y2; :: original: <##> redefine func f <##> g -> PartFunc of (X1 /\ X2),(N_PFuncs ((DOMS Y1) /\ (DOMS Y2))); coherence f <##> g is PartFunc of (X1 /\ X2),(N_PFuncs ((DOMS Y1) /\ (DOMS Y2))) proof end; end; theorem Th83: :: VALUED_2:83 for X1, X2 being set for Y1, Y2 being complex-functions-membered set for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds f1 <##> f2 = f2 <##> f1 proof end; theorem :: VALUED_2:84 for X, X1, X2 being set for Y, Y1, Y2 being complex-functions-membered set for f being PartFunc of X,Y for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds (f <##> f1) <##> f2 = f <##> (f1 <##> f2) proof end; theorem :: VALUED_2:85 for X1, X2 being set for Y1, Y2 being complex-functions-membered set for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds (<-> f1) <##> f2 = <-> (f1 <##> f2) proof end; theorem :: VALUED_2:86 for X1, X2 being set for Y1, Y2 being complex-functions-membered set for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds f1 <##> (<-> f2) = <-> (f1 <##> f2) proof end; theorem Th87: :: VALUED_2:87 for X, X1, X2 being set for Y, Y1, Y2 being complex-functions-membered set for f being PartFunc of X,Y for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds f <##> (f1 <++> f2) = (f <##> f1) <++> (f <##> f2) proof end; theorem :: VALUED_2:88 for X, X1, X2 being set for Y, Y1, Y2 being complex-functions-membered set for f being PartFunc of X,Y for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds (f1 <++> f2) <##> f = (f1 <##> f) <++> (f2 <##> f) proof end; theorem Th89: :: VALUED_2:89 for X, X1, X2 being set for Y, Y1, Y2 being complex-functions-membered set for f being PartFunc of X,Y for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds f <##> (f1 <--> f2) = (f <##> f1) <--> (f <##> f2) proof end; theorem :: VALUED_2:90 for X, X1, X2 being set for Y, Y1, Y2 being complex-functions-membered set for f being PartFunc of X,Y for f1 being PartFunc of X1,Y1 for f2 being PartFunc of X2,Y2 holds (f1 <--> f2) <##> f = (f1 <##> f) <--> (f2 <##> f) proof end; definition let Y1, Y2 be complex-functions-membered set ; let f be Y1 -valued Function; let g be Y2 -valued Function; deffunc H1( object ) -> set = (f .$1) /" (g . \$1);
func f <//> g -> Function means :Def48: :: VALUED_2:def 48
( dom it = (dom f) /\ (dom g) & ( for x being object st x in dom it holds
it . x = (f . x) /" (g . x) ) );
existence
ex b1 being Function st
( dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds
b1 . x = (f . x) /" (g . x) ) )
proof end;
uniqueness
for b1, b2 being Function st dom b1 = (dom f) /\ (dom g) & ( for x being object st x in dom b1 holds
b1 . x = (f . x) /" (g . x) ) & dom b2 = (dom f) /\ (dom g) & ( for x being object st x in dom b2 holds
b2 . x = (f . x) /" (g . x) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def48 defines <//> VALUED_2:def 48 :
for Y1, Y2 being complex-functions-membered set
for f being b1 -valued Function
for g being b2 -valued Function
for b5 being Function holds
( b5 = f <//> g iff ( dom b5 = (dom f) /\ (dom g) & ( for x being object st x in dom b5 holds
b5 . x = (f . x) /" (g . x) ) ) );

definition
let X1, X2 be set ;
let Y1, Y2 be complex-functions-membered set ;
let f be PartFunc of X1,Y1;
let g be PartFunc of X2,Y2;
:: original: <//>
redefine func f <//> g -> PartFunc of (X1 /\ X2),(C_PFuncs ((DOMS Y1) /\ (DOMS Y2)));
coherence
f <//> g is PartFunc of (X1 /\ X2),(C_PFuncs ((DOMS Y1) /\ (DOMS Y2)))
proof end;
end;

definition
let X1, X2 be set ;
let Y1, Y2 be real-functions-membered set ;
let f be PartFunc of X1,Y1;
let g be PartFunc of X2,Y2;
:: original: <//>
redefine func f <//> g -> PartFunc of (X1 /\ X2),(R_PFuncs ((DOMS Y1) /\ (DOMS Y2)));
coherence
f <//> g is PartFunc of (X1 /\ X2),(R_PFuncs ((DOMS Y1) /\ (DOMS Y2)))
proof end;
end;

definition
let X1, X2 be set ;
let Y1, Y2 be rational-functions-membered set ;
let f be PartFunc of X1,Y1;
let g be PartFunc of X2,Y2;
:: original: <//>
redefine func f <//> g -> PartFunc of (X1 /\ X2),(Q_PFuncs ((DOMS Y1) /\ (DOMS Y2)));
coherence
f <//> g is PartFunc of (X1 /\ X2),(Q_PFuncs ((DOMS Y1) /\ (DOMS Y2)))
proof end;
end;

theorem :: VALUED_2:91
for X1, X2 being set
for Y1, Y2 being complex-functions-membered set
for f1 being PartFunc of X1,Y1
for f2 being PartFunc of X2,Y2 holds (<-> f1) <//> f2 = <-> (f1 <//> f2)
proof end;

theorem :: VALUED_2:92
for X1, X2 being set
for Y1, Y2 being complex-functions-membered set
for f1 being PartFunc of X1,Y1
for f2 being PartFunc of X2,Y2 holds f1 <//> (<-> f2) = <-> (f1 <//> f2)
proof end;

theorem :: VALUED_2:93
for X, X1, X2 being set
for Y, Y1, Y2 being complex-functions-membered set
for f being PartFunc of X,Y
for f1 being PartFunc of X1,Y1
for f2 being PartFunc of X2,Y2 holds (f <##> f1) <//> f2 = f <##> (f1 <//> f2)
proof end;

theorem :: VALUED_2:94
for X, X1, X2 being set
for Y, Y1, Y2 being complex-functions-membered set
for f being PartFunc of X,Y
for f1 being PartFunc of X1,Y1
for f2 being PartFunc of X2,Y2 holds (f <//> f1) <##> f2 = (f <##> f2) <//> f1
proof end;

theorem :: VALUED_2:95
for X, X1, X2 being set
for Y, Y1, Y2 being complex-functions-membered set
for f being PartFunc of X,Y
for f1 being PartFunc of X1,Y1
for f2 being PartFunc of X2,Y2 holds (f <//> f1) <//> f2 = f <//> (f1 <##> f2)
proof end;

theorem :: VALUED_2:96
for X, X1, X2 being set
for Y, Y1, Y2 being complex-functions-membered set
for f being PartFunc of X,Y
for f1 being PartFunc of X1,Y1
for f2 being PartFunc of X2,Y2 holds (f1 <++> f2) <//> f = (f1 <//> f) <++> (f2 <//> f)
proof end;

theorem :: VALUED_2:97
for X, X1, X2 being set
for Y, Y1, Y2 being complex-functions-membered set
for f being PartFunc of X,Y
for f1 being PartFunc of X1,Y1
for f2 being PartFunc of X2,Y2 holds (f1 <--> f2) <//> f = (f1 <//> f) <--> (f2 <//> f)
proof end;