reserve n for non zero Element of NAT;
reserve a,b,r,t for Real;
reserve
  Z for open Subset of REAL,
 y0 for VECTOR of REAL-NS n,
  G for Function of REAL-NS n,REAL-NS n;

theorem Th43:
  for y,Gf be continuous PartFunc of REAL,REAL-NS n,
      g be PartFunc of REAL,REAL-NS n st a<b
     & Z = ]. a,b .[
     & dom y = [' a,b '] & dom g = [' a,b '] & dom Gf = [' a,b ']
     & y is_differentiable_on Z
     & y/.a = y0
     & (for t be Real st t in Z holds diff(y,t) = Gf/.t)
     & (for t be Real st t in [' a,b ']
          holds g.t = y0 + integral(Gf,a,t) )
 holds y=g
proof
  let y,Gf be continuous PartFunc of REAL,REAL-NS n,
      g be PartFunc of REAL,REAL-NS n;
  assume A1: a<b & Z = ]. a,b .[
      & dom y = [' a,b ']  & dom g =[' a,b '] & dom Gf =[' a,b ']
      & y is_differentiable_on Z
      & y/.a = y0
      & (for t be Real st t in Z holds diff(y,t) = Gf/.t)
      & (for t be Real st t in [' a,b '] holds g.t = y0+ integral(Gf,a,t));
  then
A2: g is continuous & g/.a=y0 & g is_differentiable_on Z
  & for t be Real st t in Z holds diff(g,t) = Gf/.t by Th36;
A3: ['a,b'] = [.a,b.] by A1,INTEGRA5:def 3;
A4: ].a,b.[ c= [.a,b.] by XXREAL_1:25;
  reconsider h=y-g as continuous PartFunc of REAL,REAL-NS n by A2;
A5: dom h = [' a,b '] /\ [' a,b '] by A1,VFUNCT_1:def 2
         .= [' a,b ']; then
A6: ].a,b.[ c= dom  h by A3,XXREAL_1:25;
A7: h is_differentiable_on ].a,b.[ by A1,A2,NDIFF_3:18,A4,A3,A5;
A8: now let x be Real;
    assume A9: x in ].a,b.[; then
  A10: diff(y,x) = Gf/.x by A1;
  A11: diff(g,x) = Gf/.x by A1,A9,Th36;
    thus diff(h,x) = ((y-g)`|(].a,b.[)).x by A9,A7,NDIFF_3:def 6
      .= Gf/.x - Gf/.x by A10,A11,A1,A2,A6,A9,NDIFF_3:18
      .= 0.(REAL-NS n) by RLVECT_1:15;
  end;
A12: h| (].a,b.[) is constant by Th41,A5,A7,A8,A3,XXREAL_1:25;
A13: for x being Real st x in dom h holds h.x = 0.(REAL-NS n)
  proof
    let x be Real;
    assume A14: x in dom h;
  A15: a in dom h by A5,A1,A3;
    thus h.x = h.a by A14,Th42,A1,A12,A3,A5
      .= h/.a by A15,PARTFUN1:def 6
      .= y0-y0 by A2,A1,A15,VFUNCT_1:def 2
      .= 0.(REAL-NS n) by RLVECT_1:15;
  end;
  for x being Element of REAL st x in dom y holds y.x = g.x
  proof
    let x be Element of REAL;
    assume A16: x in dom y; then
    0.(REAL-NS n) = h.x by A13,A1,A5
                 .= h/.x by A16,A1,A5,PARTFUN1:def 6
                 .= y/.x -g/.x by A16,A1,A5,VFUNCT_1:def 2; then
  A17: y/.x = g/.x by RLVECT_1:21;
    thus y.x = g/.x by A17,A16,PARTFUN1:def 6
            .= g.x by A16,A1,PARTFUN1:def 6;
  end;
  hence thesis by A1,PARTFUN1:5;
end;
