let r be real number ; :: thesis: for seq being Real_Sequence st seq is bounded_above holds
( r = upper_bound seq iff ( ( for n being Element of NAT holds seq . n <= r ) & ( for s being real number st 0 < s holds
ex k being Element of NAT st r - s < seq . k ) ) )

let seq be Real_Sequence; :: thesis: ( seq is bounded_above implies ( r = upper_bound seq iff ( ( for n being Element of NAT holds seq . n <= r ) & ( for s being real number st 0 < s holds
ex k being Element of NAT st r - s < seq . k ) ) ) )

set R = rng seq;
assume seq is bounded_above ; :: thesis: ( r = upper_bound seq iff ( ( for n being Element of NAT holds seq . n <= r ) & ( for s being real number st 0 < s holds
ex k being Element of NAT st r - s < seq . k ) ) )

then A1: rng seq is bounded_above by Th5;
A2: rng seq <> {} by RELAT_1:64;
A3: ( ( for n being Element of NAT holds seq . n <= r ) & ( for s being real number st 0 < s holds
ex k being Element of NAT st r - s < seq . k ) implies r = upper_bound seq )
proof
assume that
A4: for n being Element of NAT holds seq . n <= r and
A5: for s being real number st 0 < s holds
ex k being Element of NAT st r - s < seq . k ; :: thesis: r = upper_bound seq
A6: now
let s be real number ; :: thesis: ( 0 < s implies ex r2 being real number st
( r2 in rng seq & r - s < r2 ) )

assume 0 < s ; :: thesis: ex r2 being real number st
( r2 in rng seq & r - s < r2 )

then consider k being Element of NAT such that
A7: r - s < seq . k by A5;
consider r2 being real number such that
A8: ( r2 in rng seq & r2 = seq . k ) by FUNCT_2:6;
take r2 = r2; :: thesis: ( r2 in rng seq & r - s < r2 )
thus ( r2 in rng seq & r - s < r2 ) by A7, A8; :: thesis: verum
end;
now
let r1 be real number ; :: thesis: ( r1 in rng seq implies r1 <= r )
assume r1 in rng seq ; :: thesis: r1 <= r
then ex n being set st
( n in dom seq & seq . n = r1 ) by FUNCT_1:def 5;
hence r1 <= r by A4; :: thesis: verum
end;
hence r = upper_bound seq by A1, A2, A6, SEQ_4:def 4; :: thesis: verum
end;
( r = upper_bound seq implies ( ( for n being Element of NAT holds seq . n <= r ) & ( for s being real number st 0 < s holds
ex k being Element of NAT st r - s < seq . k ) ) )
proof
assume A9: r = upper_bound seq ; :: thesis: ( ( for n being Element of NAT holds seq . n <= r ) & ( for s being real number st 0 < s holds
ex k being Element of NAT st r - s < seq . k ) )

A10: now
let s be real number ; :: thesis: ( 0 < s implies ex k being Element of NAT st r - s < seq . k )
assume 0 < s ; :: thesis: ex k being Element of NAT st r - s < seq . k
then consider r2 being real number such that
A11: r2 in rng seq and
A12: r - s < r2 by A1, A2, A9, SEQ_4:def 4;
consider k being Element of NAT such that
A13: r2 = seq . k by A11, SETLIM_1:4;
take k = k; :: thesis: r - s < seq . k
thus r - s < seq . k by A12, A13; :: thesis: verum
end;
now
let n be Element of NAT ; :: thesis: seq . n <= r
seq . n in rng seq by FUNCT_2:6;
hence seq . n <= r by A1, A9, SEQ_4:def 4; :: thesis: verum
end;
hence ( ( for n being Element of NAT holds seq . n <= r ) & ( for s being real number st 0 < s holds
ex k being Element of NAT st r - s < seq . k ) ) by A10; :: thesis: verum
end;
hence ( r = upper_bound seq iff ( ( for n being Element of NAT holds seq . n <= r ) & ( for s being real number st 0 < s holds
ex k being Element of NAT st r - s < seq . k ) ) ) by A3; :: thesis: verum