let X1, Y1, X2, Y2 be non empty set ; for f being Function of X1,X2
for g being Function of Y1,Y2 st f tolerates g holds
f * tolerates g *
let f be Function of X1,X2; for g being Function of Y1,Y2 st f tolerates g holds
f * tolerates g *
let g be Function of Y1,Y2; ( f tolerates g implies f * tolerates g * )
A1:
dom g = Y1
by FUNCT_2:def 1;
assume A2:
for x being object st x in (dom f) /\ (dom g) holds
f . x = g . x
; PARTFUN1:def 4 f * tolerates g *
let x be object ; PARTFUN1:def 4 ( not x in (dom (f *)) /\ (dom (g *)) or (f *) . x = (g *) . x )
assume A3:
x in (dom (f *)) /\ (dom (g *))
; (f *) . x = (g *) . x
then reconsider q = x as Element of Y1 * ;
A4:
(g *) . x = g * q
by LANG1:def 13;
x in dom (f *)
by A3, XBOOLE_0:def 4;
then reconsider p = x as Element of X1 * ;
A5:
dom f = X1
by FUNCT_2:def 1;
rng q c= Y1
;
then A9:
dom (g * q) = dom q
by A1, RELAT_1:27;
rng p c= X1
;
then A10:
dom (f * p) = dom p
by A5, RELAT_1:27;
(f *) . x = f * p
by LANG1:def 13;
hence
(f *) . x = (g *) . x
by A4, A10, A9, A6; verum