reserve x, y for object, X, X1, X2 for set;
reserve Y, Y1, Y2 for complex-functions-membered set,
  c, c1, c2 for Complex,
  f for PartFunc of X,Y,
  f1 for PartFunc of X1,Y1,
  f2 for PartFunc of X2, Y2,
  g, h, k for complex-valued Function;

theorem
  <-> (f1 <++> f2) = (<->f1) <++> (<->f2)
proof
  set f3 = f1 <++> f2, f4 = <->f1, f5 = <->f2;
A1: dom(f1 <++> f2) = dom f1 /\ dom f2 by Def45;
A2: dom <->f2 = dom f2 by Def33;
A3: dom <->f3 = dom f3 by Def33;
A4: dom <->f1 = dom f1 by Def33;
  hence
A5: dom(<->f3) = dom(f4<++>f5) by A1,A2,A3,Def45;
  let x be object;
  assume
A6: x in dom(<->f3);
  then
A7: x in dom f4 by A1,A4,A3,XBOOLE_0:def 4;
A8: x in dom f5 by A1,A2,A3,A6,XBOOLE_0:def 4;
  thus (<->f3).x = -f3.x by A6,Def33
    .= -(f1.x+f2.x) by A3,A6,Def45
    .= -f1.x-f2.x by Th17
    .= f4.x + -f2.x by A7,Def33
    .= f4.x + f5.x by A8,Def33
    .= (f4<++>f5).x by A5,A6,Def45;
end;
