 reserve h,h1 for 0-convergent non-zero Real_Sequence,
         c,c1 for constant Real_Sequence;

theorem Th11:
  for a,b,x be Real, f be PartFunc of REAL,REAL st
   [.a,b.] c= dom f & f|[.a,b.] is continuous & x in ].a,b.] holds
   f is_left_convergent_in x & lim_left(f|(].a,b.[),x) = f.x
proof
    let a,b,x be Real, f be PartFunc of REAL,REAL;
    assume that
A1:  [.a,b.] c= dom f and
A2:  f|[.a,b.] is continuous and
A3:  x in ].a,b.];

A4: a < x & x <= b by A3,XXREAL_1:2;

A5: for r be Real st r < x ex g be Real st r < g & g < x & g in dom f
    proof
     let r be Real;
     set r1 = max(r,a);
     assume r < x; then
     consider g be Real such that
A6:   r1 < g & g < x by A4,XXREAL_0:29,XREAL_1:5;
     r <= r1 by XXREAL_0:25; then
A7:  r < g by A6,XXREAL_0:2;
     a <= r1 by XXREAL_0:25; then
     a <= g & g < b by A4,A6,XXREAL_0:2; then
     g in [.a,b.] by XXREAL_1:1;
     hence thesis by A1,A6,A7;
    end;

A8: dom(f|[.a,b.]) = [.a,b.] by A1,RELAT_1:62;
A9: ].a,b.] c= [.a,b.] by XXREAL_1:23;

    ].a,b.[ c= [.a,b.] by XXREAL_1:25; then
A10: ].a,b.[ c= dom f by A1;

A11: for r be Real st 0 < r
     ex s be Real st s < x & for x1 be Real st s < x1 & x1 < x & x1 in dom f
      holds |. f.x1-f.x .| < r
    proof
     let r be Real;
     assume 0 < r; then
     consider e be Real such that
A12:  0 < e & for x1 be Real st x1 in dom(f|[.a,b.]) & |.x1-x.|<e holds
       |.(f|[.a,b.]).x1 - (f|[.a,b.]).x .| < r by A9,A2,A3,A8,FCONT_1:def 2,3;
     set s1 = x-e;
     set s = max(s1,a);
A13:  s1 <= s & a <= s by XXREAL_0:25;
A14:  s1 < x by A12,XREAL_1:44;

     take s;
     thus s < x by A4,A14,XXREAL_0:29;
     hereby let x1 be Real;
      assume that
A15:    s < x1 and
A16:    x1 < x and
       x1 in dom f;

A17:   s- x < x1 - x by A15,XREAL_1:9;
      s1 - x <= s - x by XXREAL_0:25,XREAL_1:9; then
      s1 - x < x1 - x by A17,XXREAL_0:2; then
A18:   -(x1-x) < -(s1-x) by XREAL_1:24;

      x1-x < 0 by A16,XREAL_1:49; then
A19:   |.x1-x.| < e by A18,ABSVALUE:30;

      x <= b by A9,A3,XXREAL_1:1; then
A20:   a < x1 & x1 < b by A15,A13,A16,XXREAL_0:2; then
A21:   x1 in dom(f|[.a,b.]) by A8,XXREAL_1:1;
      (f|[.a,b.]).x1 = f.x1 & (f|[.a,b.]).x = f.x
        by A9,A20,A8,A3,XXREAL_1:1,FUNCT_1:47;
      hence |. f.x1-f.x .| < r by A12,A19,A21;
     end;
    end;
    hence
A22: f is_left_convergent_in x by A5,LIMFUNC2:7;

A23: for r be Real st 0 < r
     ex s be Real st s < x &
      for x1 be Real st s < x1 & x1 < x & x1 in dom(f|(].a,b.[))
       holds |. (f|(].a,b.[)).x1 - f.x .| < r
    proof
     let r be Real;
     assume 0 < r; then
     consider s0 be Real such that
A24:   s0 < x & for x1 be Real st s0 < x1 & x1 < x & x1 in dom f
       holds |. f.x1-f.x .| < r by A11;
     set s = max(s0,a);
     for x1 be Real st s < x1 & x1 < x & x1 in dom(f|(].a,b.[))
      holds |. (f|(].a,b.[)).x1 - f.x .| < r
     proof
      let x1 be Real;
      assume that
A25:    s < x1 and
A26:    x1 < x and
A27:    x1 in dom(f|(].a,b.[));

      s0 <= s by XXREAL_0:25; then
A28:   s0 < x1 by A25,XXREAL_0:2;
      x1 in dom f by A27,RELAT_1:57; then
      |. f.x1-f.x .| < r by A24,A28,A26;
      hence |. (f|(].a,b.[)).x1 - f.x .| < r by A27,FUNCT_1:47;
     end;
     hence thesis by A24,A4,XXREAL_0:29;
    end;

A29: f|(].a,b.[) is_left_convergent_in x &
    lim_left(f|(].a,b.[),x) = lim_left(f,x) by A4,A22,A10,Th9;
    thus lim_left(f|(].a,b.[),x) = f.x by A23,A29,LIMFUNC2:41;
end;
