let A, B be non empty set ; :: thesis: for A1, A2 being non empty Subset of A
for f1 being Function of A1,B
for f2 being Function of A2,B st f1 | (A1 /\ A2) = f2 | (A1 /\ A2) holds
( (f1 union f2) | A1 = f1 & (f1 union f2) | A2 = f2 )

let A1, A2 be non empty Subset of A; :: thesis: for f1 being Function of A1,B
for f2 being Function of A2,B st f1 | (A1 /\ A2) = f2 | (A1 /\ A2) holds
( (f1 union f2) | A1 = f1 & (f1 union f2) | A2 = f2 )

let f1 be Function of A1,B; :: thesis: for f2 being Function of A2,B st f1 | (A1 /\ A2) = f2 | (A1 /\ A2) holds
( (f1 union f2) | A1 = f1 & (f1 union f2) | A2 = f2 )

let f2 be Function of A2,B; :: thesis: ( f1 | (A1 /\ A2) = f2 | (A1 /\ A2) implies ( (f1 union f2) | A1 = f1 & (f1 union f2) | A2 = f2 ) )
assume A1: f1 | (A1 /\ A2) = f2 | (A1 /\ A2) ; :: thesis: ( (f1 union f2) | A1 = f1 & (f1 union f2) | A2 = f2 )
A2: ( dom f1 = A1 & dom f2 = A2 ) by FUNCT_2:def 1;
for x being object st x in (dom f1) /\ (dom f2) holds
f1 . x = f2 . x
proof
let x be object ; :: thesis: ( x in (dom f1) /\ (dom f2) implies f1 . x = f2 . x )
assume a3: x in (dom f1) /\ (dom f2) ; :: thesis: f1 . x = f2 . x
then f1 . x = (f1 | (A1 /\ A2)) . x by A2, FUNCT_1:49
.= f2 . x by FUNCT_1:49, a3, A2, A1 ;
hence f1 . x = f2 . x ; :: thesis: verum
end;
then f1 union f2 = f2 union f1 by FUNCT_4:34, PARTFUN1:def 4;
hence ( (f1 union f2) | A1 = f1 & (f1 union f2) | A2 = f2 ) by FUNCT_4:23, A2; :: thesis: verum