let Y, Z, X 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
set ;
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 Th78;
then A5:
f . x in dom g
by FUNCT_1:21;
A6:
x in dom f
by A4, FUNCT_1:21;
then
f . x in rng f
by FUNCT_1:def 5;
then A7:
f . x in (rng f) /\ (dom g)
by A5, XBOOLE_0:def 4;
(g * f) . x in Z
by A3, Th78;
then
g . (f . x) in Z
by A4, FUNCT_1:22;
then A8:
f . x in dom <:g,Y,Z:>
by A1, A5, A7, Th78;
(
x in dom <:f,X,Y:> &
<:f,X,Y:> . x = f . x )
by A1, A3, A6, A7, Th78, Th79;
hence
x in dom (<:g,Y,Z:> * <:f,X,Y:>)
by A8, FUNCT_1:21;
verum
end;
for x being set 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
set ;
( 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 Th78;
then A11:
f . x in dom g
by FUNCT_1:21;
x in dom f
by A10, FUNCT_1:21;
then
f . x in rng f
by FUNCT_1:def 5;
then A12:
f . x in (rng f) /\ (dom g)
by A11, XBOOLE_0:def 4;
(g * f) . x in Z
by A9, Th78;
then
g . (f . x) in Z
by A10, FUNCT_1:22;
then A13:
f . x in dom <:g,Y,Z:>
by A1, A11, A12, Th78;
x in dom f
by A10, FUNCT_1:21;
then A14:
x in dom <:f,X,Y:>
by A1, A9, A12, Th78;
thus <:(g * f),X,Z:> . x =
(g * f) . x
by A9, Th80
.=
g . (f . x)
by A10, FUNCT_1:22
.=
<:g,Y,Z:> . (f . x)
by A13, Th80
.=
<:g,Y,Z:> . (<:f,X,Y:> . x)
by A14, Th80
.=
(<:g,Y,Z:> * <:f,X,Y:>) . x
by A2, A9, FUNCT_1:22
;
verum
end;
then A15:
<:(g * f),X,Z:> c= <:g,Y,Z:> * <:f,X,Y:>
by A2, GRFUNC_1:8;
<:g,Y,Z:> * <:f,X,Y:> c= <:(g * f),X,Z:>
by Th92;
hence
<:g,Y,Z:> * <:f,X,Y:> = <:(g * f),X,Z:>
by A15, XBOOLE_0:def 10; verum