reserve n,m,k,k1,k2 for Nat;
reserve r,r1,r2,s,t,p for Real;
reserve seq,seq1,seq2 for Real_Sequence;
reserve x,y for set;

theorem Th44:
  seq is bounded_above implies ((for k holds seq.(n+k) <= r) iff (
  superior_realsequence seq).n <= r)
proof
  reconsider Y1 = {seq.k : n <= k} as Subset of REAL by Th29;
  set seq1 = seq ^\n;
  assume seq is bounded_above;
  then
A1: seq1 is bounded_above by SEQM_3:27;
A2: rng seq1 = Y1 by Th30;
  thus (for k holds seq.(n+k) <= r) implies (superior_realsequence seq).n <= r
  proof
    assume
A3: for k holds seq.(n+k) <= r;
    now
      let n1 being Nat;
      n1 in NAT by ORDINAL1:def 12;
      then seq1.n1 in rng seq1 by FUNCT_2:4;
      then consider r1 such that
A4:   seq1.n1= r1 and
A5:   r1 in Y1 by A2;
      consider k1 being Nat such that
A6:   r1 = seq.k1 and
A7:   n <= k1 by A5;
      consider k2 being Nat such that
A8:   k1 = n + k2 by A7,NAT_1:10;
      thus seq1.n1 <= r by A3,A4,A6,A8;
    end;
    then upper_bound seq1 <= r by Th9;
    then upper_bound Y1 <= r by Th30;
    hence thesis by Def5;
  end;
  assume (superior_realsequence seq).n <= r;
  then upper_bound Y1 <= r by Def5;
  then
A9: upper_bound seq1 <= r by Th30;
  now
    let m1 being Nat;
    n <= n+m1 by NAT_1:11;
    then seq.(n+m1) in Y1;
    then seq.(n+m1) in rng seq1 by Th30;
    then ex k being object st k in dom seq1 & seq1.k = seq.(n+m1)
by FUNCT_1:def 3;
    hence seq.(n+m1) <= r by A1,A9,Th9;
  end;
  hence thesis;
end;
