reserve a,b,c,d,e for Real;
reserve X,Y for set,
          Z for non empty set,
          r for Real,
          s for ExtReal,
          A for Subset of REAL,
          f for real-valued Function;
reserve I for non empty closed_interval Subset of REAL,
       TD for tagged_division of I,
        D for Division of I,
        T for Element of set_of_tagged_Division(D),
        f for PartFunc of I,REAL;
reserve f for Function of I,REAL;
reserve f,g for HK-integrable Function of I,REAL,
          r for Real;
reserve f for bounded integrable Function of I,REAL;

theorem Th40:
  Sum lower_volume(f,division_of TD) <= Sum tagged_volume(f,TD)
    <= Sum upper_volume(f,division_of TD)
  proof
A1: len tagged_volume(f,TD) = len TD by Def4
                                  .= len lower_volume(f,division_of TD)
                                     by INTEGRA1:def 7;
    dom TD = Seg len division_of TD by FINSEQ_1:def 3
            .= Seg len lower_volume(f,division_of TD) by INTEGRA1:def 7
            .= dom lower_volume(f,division_of TD) by FINSEQ_1:def 3; then
    for i be Element of NAT st
        i in dom lower_volume(f,division_of TD) holds
        (lower_volume(f,division_of TD)).i <= (tagged_volume(f,TD)).i
        by Th39;
    hence Sum lower_volume(f,division_of TD) <= Sum tagged_volume(f,TD)
      by INTEGRA5:3,A1;
B1: len tagged_volume(f,TD) = len TD by Def4
                                  .= len upper_volume(f,division_of TD)
                                     by INTEGRA1:def 6;
    dom TD = Seg len TD by FINSEQ_1:def 3
            .= Seg len tagged_volume(f,TD) by Def4
            .= dom tagged_volume(f,TD) by FINSEQ_1:def 3; then
    for i be Element of NAT st i in dom tagged_volume(f,TD) holds
        (tagged_volume(f,TD)).i <= (upper_volume(f,division_of TD)).i
        by Th39;
    hence Sum tagged_volume(f,TD) <= Sum upper_volume(f,division_of TD)
      by INTEGRA5:3,B1;
  end;
