reserve n,m,k for Element of NAT;
reserve x, X,X1,Z,Z1 for set;
reserve s,g,r,p,x0,x1,x2 for Real;
reserve s1,s2,q1 for Real_Sequence;
reserve Y for Subset of REAL;
reserve f,f1,f2 for PartFunc of REAL,REAL;

theorem
  f is total & (for x1,x2 holds f.(x1+x2) = f.x1 + f.x2) & (ex x0 st f
  is_continuous_in x0) implies f|REAL is continuous
proof
  assume that
A1: f is total and
A2: for x1,x2 holds f.(x1+x2) = f.x1 + f.x2;
A3: dom f = REAL by A1,PARTFUN1:def 2;
  given x0 such that
A4: f is_continuous_in x0;
A5: f.x0 + (0 qua Nat) = f.(x0+(0 qua Nat)) .= f.x0+f.0 by A2;
A6: now
    let x1;
    0 = f.(x1+-x1) by A5
      .= f.x1+f.(-x1) by A2;
    hence -(f.x1)=f.(-x1);
  end;
A7: now
    let x1,x2;
    thus f.(x1-x2)=f.(x1+-x2) .= f.x1 + f.(-x2) by A2
      .= f.x1 +- f.x2 by A6
      .= f.x1 - f.x2;
  end;
  now
    let x1,r;
    assume that
    x1 in REAL and
A8: r>0;
    set y=x1-x0;
    consider s such that
A9: 0<s and
A10: for x1 st x1 in dom f & |.x1-x0.|<s holds |.f.x1-f.x0.|<r by A4,A8,Th3;
    take s;
    thus s>0 by A9;
    let x2 such that
    x2 in REAL and
A11: |.x2-x1.|<s;
A12: x2-y in REAL & |.x2-y-x0.|=|.x2-x1.| by XREAL_0:def 1;
    y+x0=x1;
    then |.f.x2-f.x1.| = |.f.x2-(f.y+f.x0).| by A2
      .= |.f.x2-f.y-f.x0.|
      .= |.f.(x2-y)-f.x0.| by A7;
    hence |.f.x2-f.x1.|<r by A3,A10,A11,A12;
  end;
  hence thesis by A3,Th14;
end;
