reserve a,b,r,g for Real;

theorem
  for f,g be PartFunc of REAL,REAL, a,b be Real st a < b & [' a,b '] c=
  dom f & [' a,b '] c= dom g & f is_right_ext_Riemann_integrable_on a,b & g
  is_right_ext_Riemann_integrable_on a,b holds f + g
  is_right_ext_Riemann_integrable_on a,b & ext_right_integral(f + g,a,b) =
  ext_right_integral(f,a,b) + ext_right_integral(g,a,b)
proof
  let f,g be PartFunc of REAL,REAL, a,b be Real such that
A1: a < b and
A2: [' a,b '] c= dom f & [' a,b '] c= dom g and
A3: f is_right_ext_Riemann_integrable_on a,b and
A4: g is_right_ext_Riemann_integrable_on a,b;
  consider Intg be PartFunc of REAL,REAL such that
A5: dom Intg = [.a,b.[ and
A6: for x be Real st x in dom Intg holds Intg.x = integral(g,a,x) and
A7: Intg is_left_convergent_in b and
A8: ext_right_integral(g,a,b) = lim_left(Intg,b) by A4,Def3;
  consider Intf be PartFunc of REAL,REAL such that
A9: dom Intf = [.a,b.[ and
A10: for x be Real st x in dom Intf holds Intf.x = integral(f,a,x) and
A11: Intf is_left_convergent_in b and
A12: ext_right_integral(f,a,b) = lim_left(Intf,b) by A3,Def3;
  set Intfg = Intf + Intg;
A13: dom Intfg = [.a,b.[ &
  for x be Real st x in dom Intfg holds Intfg.x =
  integral(f + g,a,x)
  proof
A14: [' a,b '] = [.a,b.] by A1,INTEGRA5:def 3;
    thus
A15: dom Intfg = dom Intf /\ dom Intg by VALUED_1:def 1
      .= [.a,b.[ by A9,A5;
    let x be Real;
    assume
A16: x in dom Intfg;
    then
A17: x < b by A15,XXREAL_1:3;
    then
A18: [.a,x.] c= [.a,b.] by XXREAL_1:34;
A19: a <= x by A15,A16,XXREAL_1:3;
    then
A20: f is_integrable_on [' a,x '] & f|[' a,x '] is bounded by A3,A17;
    [' a,x '] = [.a,x.] by A19,INTEGRA5:def 3;
    then
A21: [' a,x '] c= dom f & [' a,x '] c= dom g by A2,A14,A18;
A22: g is_integrable_on [' a,x '] & g|[' a,x '] is bounded by A4,A19,A17;
    thus Intfg.x = Intf.x + Intg.x by A16,VALUED_1:def 1
      .= integral(f,a,x) + Intg.x by A9,A10,A15,A16
      .= integral(f,a,x) + integral(g,a,x) by A5,A6,A15,A16
      .= integral(f + g,a,x) by A19,A21,A20,A22,INTEGRA6:12;
  end;
A23: for r st r < b ex g st r < g & g < b & g in dom(Intf + Intg)
  proof
    let r be Real such that
A24: r < b;
    per cases;
    suppose
A25:  r < a;
      reconsider g = a as Real;
      take g;
      thus thesis by A1,A13,A25,XXREAL_1:3;
    end;
    suppose
      not r < a;
      then
A26:  a - a <= r - a by XREAL_1:9;
      reconsider g = r + (b - r)/2 as Real;
      take g;
A27:  0 < b - r by A24,XREAL_1:50;
      then (b - r)/2 < b - r by XREAL_1:216;
      then
A28:  (b - r)/2 + r < b - r + r by XREAL_1:8;
      r < g by A27,XREAL_1:29,215;
      then
A29:  r - (r - a) < g - 0 by A26,XREAL_1:14;
      0 < (b - r)/2 by A27,XREAL_1:215;
      hence thesis by A13,A29,A28,XREAL_1:8,XXREAL_1:3;
    end;
  end;
  then
A30: Intfg is_left_convergent_in b by A11,A7,LIMFUNC2:45;
  for d be Real st a <= d & d < b
holds f + g is_integrable_on [' a,d '] &
  (f+g)|[' a,d '] is bounded
  proof
    let d be Real;
    assume
A31: a <= d & d < b;
    then
A32: [' a,d '] = [.a,d.] & [.a,d.] c= [.a,b.] by INTEGRA5:def 3,XXREAL_1:34;
    [' a,b '] = [.a,b.] by A1,INTEGRA5:def 3;
    then
A33: [' a,d '] c= dom f & [' a,d '] c= dom g by A2,A32;
A34: f is_integrable_on [' a,d '] & g is_integrable_on [' a,d '] by A3,A4,A31;
A35: f|[' a,d '] is bounded & g|[' a,d '] is bounded by A3,A4,A31;
    then (f + g)|([' a,d '] /\ [' a,d ']) is bounded by RFUNCT_1:83;
    hence thesis by A33,A34,A35,INTEGRA6:11;
  end;
  hence
A36: f + g is_right_ext_Riemann_integrable_on a,b by A13,A30;
  lim_left(Intfg,b) = ext_right_integral(f,a,b) + ext_right_integral(g,a
  ,b) by A11,A12,A7,A8,A23,LIMFUNC2:45;
  hence thesis by A13,A30,A36,Def3;
end;
