let X, Y, Z be set ; for f, g being Function st (rng f) /\ (dom g) c= Y holds
<:g,Y,Z:> * <:f,X,Y:> = <:(g * f),X,Z:>
let f, g be Function; ( (rng f) /\ (dom g) c= Y implies <:g,Y,Z:> * <:f,X,Y:> = <:(g * f),X,Z:> )
assume A1:
(rng f) /\ (dom g) c= Y
; <:g,Y,Z:> * <:f,X,Y:> = <:(g * f),X,Z:>
A2:
dom <:(g * f),X,Z:> c= dom (<:g,Y,Z:> * <:f,X,Y:>)
proof
let x be
object ;
TARSKI:def 3 ( not x in dom <:(g * f),X,Z:> or x in dom (<:g,Y,Z:> * <:f,X,Y:>) )
assume A3:
x in dom <:(g * f),X,Z:>
;
x in dom (<:g,Y,Z:> * <:f,X,Y:>)
then A4:
x in dom (g * f)
by Th24;
then A5:
f . x in dom g
by FUNCT_1:11;
A6:
x in dom f
by A4, FUNCT_1:11;
then
f . x in rng f
by FUNCT_1:def 3;
then A7:
f . x in (rng f) /\ (dom g)
by A5, XBOOLE_0:def 4;
(g * f) . x in Z
by A3, Th24;
then
g . (f . x) in Z
by A4, FUNCT_1:12;
then A8:
f . x in dom <:g,Y,Z:>
by A1, A5, A7, Th24;
(
x in dom <:f,X,Y:> &
<:f,X,Y:> . x = f . x )
by A1, A3, A6, A7, Th24, Th25;
hence
x in dom (<:g,Y,Z:> * <:f,X,Y:>)
by A8, FUNCT_1:11;
verum
end;
for x being object st x in dom <:(g * f),X,Z:> holds
<:(g * f),X,Z:> . x = (<:g,Y,Z:> * <:f,X,Y:>) . x
proof
let x be
object ;
( x in dom <:(g * f),X,Z:> implies <:(g * f),X,Z:> . x = (<:g,Y,Z:> * <:f,X,Y:>) . x )
assume A9:
x in dom <:(g * f),X,Z:>
;
<:(g * f),X,Z:> . x = (<:g,Y,Z:> * <:f,X,Y:>) . x
then A10:
x in dom (g * f)
by Th24;
then A11:
f . x in dom g
by FUNCT_1:11;
x in dom f
by A10, FUNCT_1:11;
then
f . x in rng f
by FUNCT_1:def 3;
then A12:
f . x in (rng f) /\ (dom g)
by A11, XBOOLE_0:def 4;
(g * f) . x in Z
by A9, Th24;
then
g . (f . x) in Z
by A10, FUNCT_1:12;
then A13:
f . x in dom <:g,Y,Z:>
by A1, A11, A12, Th24;
x in dom f
by A10, FUNCT_1:11;
then A14:
x in dom <:f,X,Y:>
by A1, A9, A12, Th24;
thus <:(g * f),X,Z:> . x =
(g * f) . x
by A9, Th26
.=
g . (f . x)
by A10, FUNCT_1:12
.=
<:g,Y,Z:> . (f . x)
by A13, Th26
.=
<:g,Y,Z:> . (<:f,X,Y:> . x)
by A14, Th26
.=
(<:g,Y,Z:> * <:f,X,Y:>) . x
by A2, A9, FUNCT_1:12
;
verum
end;
then A15:
<:(g * f),X,Z:> c= <:g,Y,Z:> * <:f,X,Y:>
by A2, GRFUNC_1:2;
<:g,Y,Z:> * <:f,X,Y:> c= <:(g * f),X,Z:>
by Th35;
hence
<:g,Y,Z:> * <:f,X,Y:> = <:(g * f),X,Z:>
by A15; verum