let L1, L2, L3 be non empty RelStr ; for f being Function of L1,L2
for g being Function of L2,L3 st f is infs-preserving & g is infs-preserving holds
g * f is infs-preserving
let f be Function of L1,L2; for g being Function of L2,L3 st f is infs-preserving & g is infs-preserving holds
g * f is infs-preserving
let g be Function of L2,L3; ( f is infs-preserving & g is infs-preserving implies g * f is infs-preserving )
assume that
A1:
f is infs-preserving
and
A2:
g is infs-preserving
; g * f is infs-preserving
set gf = g * f;
let X be Subset of L1; WAYBEL_0:def 32 g * f preserves_inf_of X
assume A3:
ex_inf_of X,L1
; WAYBEL_0:def 30 ( ex_inf_of (g * f) .: X,L3 & "/\" (((g * f) .: X),L3) = (g * f) . ("/\" (X,L1)) )
set fX = f .: X;
set gfX = (g * f) .: X;
A4:
f preserves_inf_of X
by A1, WAYBEL_0:def 32;
then A5:
( (g * f) .: X = g .: (f .: X) & ex_inf_of f .: X,L2 )
by A3, RELAT_1:126, WAYBEL_0:def 30;
A6:
dom f = the carrier of L1
by FUNCT_2:def 1;
A7:
g preserves_inf_of f .: X
by A2, WAYBEL_0:def 32;
hence
ex_inf_of (g * f) .: X,L3
by A5, WAYBEL_0:def 30; "/\" (((g * f) .: X),L3) = (g * f) . ("/\" (X,L1))
thus inf ((g * f) .: X) =
g . (inf (f .: X))
by A7, A5, WAYBEL_0:def 30
.=
g . (f . (inf X))
by A3, A4, WAYBEL_0:def 30
.=
(g * f) . (inf X)
by A6, FUNCT_1:13
; verum