reserve n,n1,m,m1,k for Nat;
reserve x,X,X1 for set;
reserve g,g1,g2,t,x0,x1,x2 for Complex;
reserve s1,s2,q1,seq,seq1,seq2,seq3 for Complex_Sequence;
reserve Y for Subset of COMPLEX;
reserve f,f1,f2,h,h1,h2 for PartFunc of COMPLEX,COMPLEX;
reserve p,r,s for Real;
reserve Ns,Nseq for increasing sequence of NAT;

theorem Th47:
  f is_continuous_on X & f"{0} = {} implies f^ is_continuous_on X
proof
  assume that
A1: f is_continuous_on X and
A2: f"{0} = {};
A3: dom(f^) = dom f \ {} by A2,CFUNCT_1:def 2
    .= dom f;
  hence
A4: X c= dom (f^) by A1;
  let g;
  assume
A5: g in X;
  then
A6: f|X is_continuous_in g by A1;
  g in dom(f^) /\ X by A4,A5,XBOOLE_0:def 4;
  then
A7: g in dom((f^)|X) by RELAT_1:61;
  now
    let s1;
    assume that
A8: rng s1 c= dom((f^)|X) and
A9: s1 is convergent & lim s1= g;
    rng s1 c= dom(f^) /\ X by A8,RELAT_1:61;
    then
A10: rng s1 c= dom(f|X) by A3,RELAT_1:61;
    then
A11: (f|X)/*s1 is convergent by A6,A9;
    now
      let n be Element of NAT;
A12:  s1.n in rng s1 by VALUED_0:28;
      rng s1 c= dom f /\ X & dom f /\ X c= dom f by A3,A8,RELAT_1:61
,XBOOLE_1:17;
      then
A13:  rng s1 c= dom f;
A14:  now
        assume f/.(s1.n)=0c;
        then f/.(s1.n) in {0c} by TARSKI:def 1;
        hence contradiction by A2,A13,A12,PARTFUN2:26;
      end;
      ((f|X)/*s1).n = (f|X)/.(s1.n) by A10,FUNCT_2:109
        .= f/.(s1.n) by A10,A12,PARTFUN2:15;
      hence ((f|X)/*s1).n <>0c by A14;
    end;
    then
A15: (f|X)/*s1 is non-zero by COMSEQ_1:4;
    g in dom f /\ X by A3,A4,A5,XBOOLE_0:def 4;
    then
A16: g in dom(f|X) by RELAT_1:61;
    then
A17: (f|X)/.g = f/.g by PARTFUN2:15;
    now
      let n be Element of NAT;
A18:  s1.n in rng s1 by VALUED_0:28;
      then s1.n in dom((f^)|X) by A8;
      then s1.n in dom (f^) /\ X by RELAT_1:61;
      then
A19:  s1.n in dom (f^) by XBOOLE_0:def 4;
      thus (((f^)|X)/*s1).n = ((f^)|X)/.(s1.n) by A8,FUNCT_2:109
        .= (f^)/.(s1.n) by A8,A18,PARTFUN2:15
        .= (f/.(s1.n))" by A19,CFUNCT_1:def 2
        .= ((f|X)/.(s1.n))" by A10,A18,PARTFUN2:15
        .= (((f|X)/*s1).n)" by A10,FUNCT_2:109
        .= (((f|X)/*s1)").n by VALUED_1:10;
    end;
    then
A20: ((f^)|X)/*s1 = ((f|X)/*s1)" by FUNCT_2:63;
    reconsider gg = g as Element of COMPLEX by XCMPLX_0:def 2;
A21: now
      assume f/.g = 0c;
      then f/.gg in {0c} by TARSKI:def 1;
      hence contradiction by A2,A3,A4,A5,PARTFUN2:26;
    end;
    then lim ((f|X)/*s1) <> 0c by A6,A9,A10,A17;
    hence ((f^)|X)/*s1 is convergent by A11,A15,A20,COMSEQ_2:34;
    (f|X)/.g = lim ((f|X)/*s1) by A6,A9,A10;
   hence lim (((f^)|X)/*s1) = ((f|X)/.g)" by A11,A17,A21,A15,A20,COMSEQ_2:35
      .= (f/.g)" by A16,PARTFUN2:15
      .= (f^)/.gg by A4,A5,CFUNCT_1:def 2
      .= ((f^)|X)/.g by A7,PARTFUN2:15;
  end;
  hence thesis by A7;
end;
