let L1, L2, L3 be non empty RelStr ; :: thesis: 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; :: thesis: 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; :: thesis: ( 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 ; :: thesis: g * f is infs-preserving
set gf = g * f;
let X be Subset of L1; :: according to WAYBEL_0:def 32 :: thesis: g * f preserves_inf_of X
assume A3: ex_inf_of X,L1 ; :: according to WAYBEL_0:def 30 :: thesis: ( 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; :: thesis: "/\" (((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 ; :: thesis: verum