reserve n,k,k1,m,m1,n1,n2,l for Nat;
reserve r,r1,r2,p,p1,g,g1,g2,s,s1,s2,t for Real;
reserve seq,seq1,seq2 for Real_Sequence;
reserve Nseq for increasing sequence of NAT;
reserve x for set;
reserve X,Y for Subset of REAL;

theorem Th5:
  for X being real-membered set holds X is non empty bounded_above
implies ex g st (for r st r in X holds r<=g) & for s st 0<s ex r st r in X & g-
  s<r
proof
  let X be real-membered set;
  assume that
A1: X is non empty and
A2: X is bounded_above;
  consider p1 such that
A3: p1 is UpperBound of X by A2;
A4: for r st r in X holds r<=p1 by A3,XXREAL_2:def 1;
  defpred X[Real] means for r st r in X holds r<=$1;
  consider Y such that
A5: for p be Element of REAL holds p in Y iff X[p] from SUBSET_1:sch 3;
  X is Subset of REAL & for r,p st r in X & p in Y holds r<=p by A5,MEMBERED:3;
  then consider g1 such that
A6: for r,p st r in X & p in Y holds r<=g1 & g1<=p by AXIOMS:1;
  reconsider g1 as Real;
  take g=g1;
A7: ex r1 being Real st r1 in X by A1;
A8: now
    given s1 such that
A9: 0<s1 and
A10: for r st r in X holds not g-s1<r;
    reconsider gs1 = g-s1 as Element of REAL by XREAL_0:def 1;
    gs1 in Y by A5,A10;
    then g<=g-s1 by A7,A6;
    then g-(g-s1)<=g-s1-(g-s1) by XREAL_1:9;
    hence contradiction by A9;
  end;
  p1 in REAL by XREAL_0:def 1;
  then p1 in Y by A4,A5;
  hence thesis by A6,A8;
end;
