reserve r,r1,r2,g,g1,g2,x0,t for Real;
reserve n,k for Nat;
reserve seq for Real_Sequence;
reserve f,f1,f2 for PartFunc of REAL,REAL;

theorem Th63:
  f1 is_left_convergent_in x0 & f2 is_left_convergent_in x0 &
lim_left(f1,x0)=lim_left(f2,x0) & (for r st r<x0 ex g st r<g & g<x0 & g in dom
f) & (ex r st 0<r & (for g st g in dom f /\ ].x0-r,x0.[ holds f1.g<=f.g & f.g<=
f2.g) & ((dom f1 /\ ].x0-r,x0.[ c= dom f2 /\ ].x0-r,x0.[ & dom f /\ ].x0-r,x0.[
c= dom f1 /\ ].x0-r,x0.[) or (dom f2 /\ ].x0-r,x0.[ c= dom f1 /\ ].x0-r,x0.[ &
  dom f /\ ].x0-r,x0.[ c= dom f2 /\ ].x0-r,x0.[))) implies f
  is_left_convergent_in x0 & lim_left(f,x0)=lim_left(f1,x0)
proof
  assume that
A1: f1 is_left_convergent_in x0 and
A2: f2 is_left_convergent_in x0 and
A3: lim_left(f1,x0)=lim_left(f2,x0) and
A4: for r st r<x0 ex g st r<g & g<x0 & g in dom f;
  given r1 such that
A5: 0<r1 and
A6: for g st g in dom f/\].x0-r1,x0.[ holds f1.g<=f.g & f.g<=f2.g and
A7: dom f1/\].x0-r1,x0.[c=dom f2/\].x0-r1,x0.[ & dom f/\].x0-r1,x0.[c=
dom f1/\].x0-r1,x0.[ or dom f2/\].x0-r1,x0.[c=dom f1/\].x0-r1,x0.[ & dom f/\].
  x0-r1,x0.[c=dom f2/\].x0-r1,x0.[;
  now
    per cases by A7;
    suppose
A8:   dom f1/\].x0-r1,x0.[c=dom f2/\].x0-r1,x0.[ & dom f/\].x0-r1,x0.[
      c=dom f1/\].x0-r1,x0.[;
A9:   now
        let seq;
        assume that
A10:    seq is convergent and
A11:    lim seq=x0 and
A12:    rng seq c=dom f/\left_open_halfline(x0);
        x0-r1<lim seq by A5,A11,Lm1;
        then consider k such that
A13:    for n st k<=n holds x0-r1<seq.n by A10,Th1;
A14:    rng(seq^\k)c=rng seq by VALUED_0:21;
        dom f/\left_open_halfline(x0)c=left_open_halfline(x0) by XBOOLE_1:17;
        then rng seq c=left_open_halfline(x0) by A12,XBOOLE_1:1;
        then
A15:    rng(seq^\k)c=left_open_halfline(x0) by A14,XBOOLE_1:1;
        now
          let x be object;
          assume
A16:      x in rng(seq^\k);
          then consider n being Element of NAT such that
A17:      x=(seq^\k).n by FUNCT_2:113;
          (seq^\k).n in left_open_halfline(x0) by A15,A16,A17;
          then (seq^\k).n in {g: g<x0} by XXREAL_1:229;
          then
A18:      ex g st g=(seq^\k).n & g<x0;
          x0-r1<seq.(n+k) by A13,NAT_1:12;
          then x0-r1<(seq^\k).n by NAT_1:def 3;
          then x in {g1: x0-r1<g1 & g1<x0} by A17,A18;
          hence x in ].x0-r1,x0.[ by RCOMP_1:def 2;
        end;
        then
A19:    rng(seq^\k)c=].x0-r1,x0.[ by TARSKI:def 3;
        ].x0-r1,x0.[c=left_open_halfline(x0) by XXREAL_1:263;
        then
A20:    rng(seq^\k)c=left_open_halfline(x0) by A19,XBOOLE_1:1;
A21:    dom f/\left_open_halfline(x0)c=dom f by XBOOLE_1:17;
        then
A22:    rng seq c=dom f by A12,XBOOLE_1:1;
        then rng(seq^\k)c=dom f by A14,XBOOLE_1:1;
        then
A23:    rng(seq^\k)c=dom f/\].x0-r1,x0.[ by A19,XBOOLE_1:19;
        then
A24:    rng(seq^\k)c=dom f1/\].x0-r1,x0.[ by A8,XBOOLE_1:1;
        then
A25:    rng(seq^\k)c=dom f2/\].x0-r1,x0.[ by A8,XBOOLE_1:1;
A26:    lim(seq^\k)= x0 by A10,A11,SEQ_4:20;
A27:    dom f2/\].x0-r1,x0.[c=dom f2 by XBOOLE_1:17;
        then rng(seq^\k)c=dom f2 by A25,XBOOLE_1:1;
        then
A28:    rng(seq^\k) c=dom f2/\left_open_halfline(x0) by A20,XBOOLE_1:19;
        then
A29:    lim(f2/*(seq^\k))=lim_left(f2, x0) by A2,A10,A26,Def7;
A30:    dom f1/\].x0-r1,x0.[c=dom f1 by XBOOLE_1:17;
        then rng(seq^\k)c=dom f1 by A24,XBOOLE_1:1;
        then
A31:    rng(seq^\k)c=dom f1/\left_open_halfline(x0) by A20,XBOOLE_1:19;
        then
A32:    lim(f1/*(seq^\k))=lim_left(f1, x0) by A1,A10,A26,Def7;
A33:    now
          let n;
A34: n in NAT by ORDINAL1:def 12;
A35:      (seq^\k).n in rng(seq^\k) by VALUED_0:28;
          then f.((seq^\k).n)<=f2.((seq^\k).n) by A6,A23;
          then
A36:      (f/*(seq^\k)).n<=f2.((seq^\k).n)
by A14,A22,FUNCT_2:108,XBOOLE_1:1,A34;
          f1.((seq^\k).n)<=f.((seq^\k).n) by A6,A23,A35;
          then f1.((seq^\k).n)<=(f/*(seq^\k)).n by A14,A22,FUNCT_2:108,A34
,XBOOLE_1:1;
          hence (f1/*(seq^\k)).n<=(f/*(seq^\k)).n & (f/*(seq^\k)).n<=(f2/*(seq
          ^\k)).n by A30,A27,A24,A25,A36,FUNCT_2:108,XBOOLE_1:1,A34;
        end;
A37:    f2/*(seq^\k) is convergent by A2,A10,A26,A28;
A38:    f1/*(seq^\k) is convergent by A1,A10,A26,A31;
        then f/*(seq^\k) is convergent by A3,A32,A37,A29,A33,SEQ_2:19;
        then
A39:    (f/*seq)^\k is convergent by A12,A21,VALUED_0:27,XBOOLE_1:1;
        hence f/*seq is convergent by SEQ_4:21;
        lim(f/*(seq^\k))=lim_left(f1,x0) by A3,A38,A32,A37,A29,A33,SEQ_2:20;
        then lim((f/*seq)^\k)=lim_left(f1,x0) by A12,A21,VALUED_0:27,XBOOLE_1:1
;
        hence lim(f/*seq)=lim_left(f1,x0) by A39,SEQ_4:22;
      end;
      hence f is_left_convergent_in x0 by A4;
      hence thesis by A9,Def7;
    end;
    suppose
A40:  dom f2/\].x0-r1,x0.[c=dom f1/\].x0-r1,x0.[ & dom f/\].x0-r1,x0
      .[c=dom f2/\].x0-r1,x0.[;
A41:  now
        let seq;
        assume that
A42:    seq is convergent and
A43:    lim seq=x0 and
A44:    rng seq c= dom f/\left_open_halfline(x0);
        x0-r1<lim seq by A5,A43,Lm1;
        then consider k such that
A45:    for n st k<=n holds x0-r1<seq.n by A42,Th1;
A46:    rng(seq^\k)c=rng seq by VALUED_0:21;
        dom f/\left_open_halfline(x0)c=left_open_halfline(x0) by XBOOLE_1:17;
        then rng seq c=left_open_halfline(x0) by A44,XBOOLE_1:1;
        then
A47:    rng(seq^\k)c=left_open_halfline(x0) by A46,XBOOLE_1:1;
        now
          let x be object;
          assume
A48:      x in rng(seq^\k);
          then consider n being Element of NAT such that
A49:      x=(seq^\k).n by FUNCT_2:113;
          (seq^\k).n in left_open_halfline(x0) by A47,A48,A49;
          then (seq^\k).n in {g: g<x0} by XXREAL_1:229;
          then
A50:      ex g st g=(seq^\k).n & g<x0;
          x0-r1<seq.(n+k) by A45,NAT_1:12;
          then x0-r1<(seq^\k).n by NAT_1:def 3;
          then x in {g1: x0-r1<g1 & g1<x0} by A49,A50;
          hence x in ].x0-r1,x0.[ by RCOMP_1:def 2;
        end;
        then
A51:    rng(seq^\k)c=].x0-r1,x0.[ by TARSKI:def 3;
        ].x0-r1,x0.[c=left_open_halfline(x0) by XXREAL_1:263;
        then
A52:    rng(seq^\k)c=left_open_halfline(x0) by A51,XBOOLE_1:1;
A53:    dom f/\left_open_halfline(x0)c=dom f by XBOOLE_1:17;
        then
A54:    rng seq c=dom f by A44,XBOOLE_1:1;
        then rng(seq^\k)c=dom f by A46,XBOOLE_1:1;
        then
A55:    rng(seq^\k)c=dom f/\].x0-r1,x0.[ by A51,XBOOLE_1:19;
        then
A56:    rng(seq^\k)c=dom f2/\].x0-r1,x0.[ by A40,XBOOLE_1:1;
        then
A57:    rng(seq^\k)c=dom f1/\].x0-r1,x0.[ by A40,XBOOLE_1:1;
A58:    lim(seq^\k)= x0 by A42,A43,SEQ_4:20;
A59:    dom f2/\].x0-r1,x0.[c=dom f2 by XBOOLE_1:17;
        then rng(seq^\k)c=dom f2 by A56,XBOOLE_1:1;
        then
A60:    rng(seq^\k)c=dom f2/\left_open_halfline(x0) by A52,XBOOLE_1:19;
        then
A61:    lim(f2/*(seq^\k))=lim_left(f2, x0) by A2,A42,A58,Def7;
A62:    dom f1/\].x0-r1,x0.[c=dom f1 by XBOOLE_1:17;
        then rng(seq^\k)c=dom f1 by A57,XBOOLE_1:1;
        then
A63:    rng(seq^\k)c=dom f1/\left_open_halfline(x0) by A52,XBOOLE_1:19;
        then
A64:    lim(f1/*(seq^\k))=lim_left(f1, x0) by A1,A42,A58,Def7;
A65:    now
          let n;
A66: n in NAT by ORDINAL1:def 12;
A67:      (seq^\k).n in rng(seq^\k) by VALUED_0:28;
          then f.((seq^\k).n)<=f2.((seq^\k).n) by A6,A55;
          then
A68:      (f/*(seq^\k)).n<=f2.((seq^\k).n)
by A46,A54,FUNCT_2:108,XBOOLE_1:1,A66;
          f1.((seq^\k).n)<=f.((seq^\k).n) by A6,A55,A67;
          then f1.((seq^\k).n)<=(f/*(seq^\k)).n by A46,A54,FUNCT_2:108,A66
,XBOOLE_1:1;
          hence (f1/*(seq^\k)).n<=(f/*(seq^\k)).n & (f/*(seq^\k)).n<=(f2/*(seq
          ^\k)).n by A62,A59,A56,A57,A68,FUNCT_2:108,XBOOLE_1:1,A66;
        end;
A69:    f2/*(seq^\k) is convergent by A2,A42,A58,A60;
A70:    f1/*(seq^\k) is convergent by A1,A42,A58,A63;
        then f/*(seq^\k) is convergent by A3,A64,A69,A61,A65,SEQ_2:19;
        then
A71:    (f/*seq)^\k is convergent by A44,A53,VALUED_0:27,XBOOLE_1:1;
        hence f/*seq is convergent by SEQ_4:21;
        lim(f/*(seq^\k))=lim_left(f1,x0) by A3,A70,A64,A69,A61,A65,SEQ_2:20;
        then lim((f/*seq)^\k)=lim_left(f1,x0) by A44,A53,VALUED_0:27,XBOOLE_1:1
;
        hence lim(f/*seq)=lim_left(f1,x0) by A71,SEQ_4:22;
      end;
      hence f is_left_convergent_in x0 by A4;
      hence thesis by A41,Def7;
    end;
  end;
  hence thesis;
end;
