reserve a,a1,b,b1,x,y for Real,
  F,G,H for FinSequence of REAL,
  i,j,k,n,m for Element of NAT,
  I for Subset of REAL,
  X for non empty set,
  x1,R,s for set;
reserve A for non empty closed_interval Subset of REAL;
reserve A, B for non empty closed_interval Subset of REAL;
reserve r for Real;
reserve D, D1, D2 for Division of A;
reserve f, g for Function of A,REAL;

theorem Th23:
  f|A is bounded_below implies
  (lower_bound rng f)*vol(A) <= lower_sum(f,D)
proof
  assume
A1: f|A is bounded_below;
A2: for i st i in dom D holds (lower_bound rng f)*vol(divset(D,i)) <= (
  lower_bound rng (f|divset(D,i)))*vol(divset(D,i))
  proof
    let i;
A3: rng(f|divset(D,i)) c= rng f by RELAT_1:70;
A4: 0 <= vol(divset(D,i)) by SEQ_4:11,XREAL_1:48;
A5: dom f = A by FUNCT_2:def 1;
    assume i in dom D;
    then dom (f|divset(D,i)) = divset(D,i) by A5,Th6,RELAT_1:62;
    then
A6: rng(f|divset(D,i)) is non empty Subset of REAL by RELAT_1:42;
    rng f is bounded_below by A1,Th9;
    hence thesis by A3,A6,A4,SEQ_4:47,XREAL_1:64;
  end;
A7: for i st i in dom D holds (lower_bound rng f)*(lower_volume(chi(A,A),D)
  .i) <= (lower_bound rng (f|divset(D,i)))*vol(divset(D,i))
  proof
    let i;
    assume
A8: i in dom D;
    then
    (lower_bound rng f)*vol(divset(D,i)) <= (lower_bound rng (f|divset(D,
    i)))*vol(divset(D,i)) by A2;
    hence thesis by A8,Th17;
  end;
  Sum((lower_bound rng f)*lower_volume(chi(A,A),D)) <=Sum(lower_volume(f,
  D))
  proof
    len (lower_volume(chi(A,A),D)) = len ((lower_bound rng f)*
    lower_volume(chi(A,A),D)) by FINSEQ_2:33;
    then
A9: len ((lower_bound rng f)*lower_volume(chi(A,A),D))=len D by Def6;
    deffunc G(Nat)=
      In((lower_bound rng (f|divset(D,$1)))*vol(divset(D,$1)),REAL);
    deffunc F(set)=
      In((lower_bound rng f)*(lower_volume(chi(A,A),D).$1),REAL);
    consider p being FinSequence of REAL such that
A10: len p = len D & for i be Nat st i in dom p holds p.i=F(i) from
    FINSEQ_2:sch 1;
A11: dom p = Seg len D by A10,FINSEQ_1:def 3;
    for i be Nat st 1 <= i & i <= len p holds p.i=((lower_bound rng f)*
    lower_volume(chi(A,A),D)).i
    proof
      let i be Nat;
      assume that
A12:  1 <= i and
A13:  i <= len p;
      i in Seg(len D) by A10,A12,A13,FINSEQ_1:1;
      then p.i=F(i) by A10,A11;
      hence thesis by RVSUM_1:44;
    end;
    then
A14: p=(lower_bound rng f)*lower_volume(chi(A,A),D) by A10,A9,FINSEQ_1:14;
    reconsider p as Element of (len D)-tuples_on REAL by A10,FINSEQ_2:92;
    consider q being FinSequence of REAL such that
A15: len q = len D & for i be Nat st i in dom q holds q.i=G(i) from
    FINSEQ_2:sch 1;
A16: for i be Nat st i in dom q
     holds q.i=(lower_bound rng (f|divset(D,i)))*vol(divset(D,i))
    proof let i be Nat;
     assume i in dom q;
      then q.i = G(i) by A15;
     hence thesis;
    end;
A17: dom q = dom D by A15,FINSEQ_3:29;
    then
A18: q=lower_volume(f,D) by A15,Def6,A16;
    reconsider q as Element of (len D)-tuples_on REAL by A15,FINSEQ_2:92;
    now
      let i be Nat;
      assume
A19:  i in Seg (len D);
      then
A20:  p.i=F(i) by A10,A11;
A21:  i in dom D by A19,FINSEQ_1:def 3;
      then
      q.i=G(i) by A15,A17;
      hence p.i <= q.i by A7,A20,A21;
    end;
    hence thesis by A18,A14,RVSUM_1:82;
  end;
  then
  (lower_bound rng f)*Sum(lower_volume(chi(A,A),D)) <=Sum(lower_volume(f,
  D)) by RVSUM_1:87;
  hence thesis by Th21;
end;
