deffunc H1( object ) -> set = f . $1;
deffunc H2( object ) -> set = g . $1;
defpred S1[ object ] means $1 in dom g;
thus ex F being Function st
( dom F = (dom f) \/ (dom g) & ( for x being object st x in (dom f) \/ (dom g) holds
( ( S1[x] implies F . x = H2(x) ) & ( not S1[x] implies F . x = H1(x) ) ) ) ) from PARTFUN1:sch 1(); :: thesis: verum