:: RINFSUP1 semantic presentation

Lemma1: for b1, b2, b3 being real number st 0 < b3 & b1 <= b2 holds
( b1 < b2 + b3 & b1 - b3 < b2 )
proof end;

theorem Th1: :: RINFSUP1:1
for b1, b2, b3 being real number holds
( ( b1 - b2 < b3 & b1 + b2 > b3 ) iff abs (b3 - b1) < b2 )
proof end;

definition
let c1 be Real_Sequence;
func sup c1 -> Real equals :: RINFSUP1:def 1
sup (rng a1);
coherence
sup (rng c1) is Real
;
end;

:: deftheorem Def1 defines sup RINFSUP1:def 1 :
for b1 being Real_Sequence holds sup b1 = sup (rng b1);

definition
let c1 be Real_Sequence;
func inf c1 -> Real equals :: RINFSUP1:def 2
inf (rng a1);
coherence
inf (rng c1) is Real
;
end;

:: deftheorem Def2 defines inf RINFSUP1:def 2 :
for b1 being Real_Sequence holds inf b1 = inf (rng b1);

theorem Th2: :: RINFSUP1:2
for b1, b2 being Real_Sequence holds (b1 + b2) - b2 = b1
proof end;

theorem Th3: :: RINFSUP1:3
for b1 being real number
for b2 being Real_Sequence holds
( b1 in rng b2 iff - b1 in rng (- b2) )
proof end;

theorem Th4: :: RINFSUP1:4
for b1 being Real_Sequence holds rng (- b1) = - (rng b1)
proof end;

theorem Th5: :: RINFSUP1:5
for b1 being Real_Sequence holds
( b1 is bounded_above iff rng b1 is bounded_above )
proof end;

theorem Th6: :: RINFSUP1:6
for b1 being Real_Sequence holds
( b1 is bounded_below iff rng b1 is bounded_below )
proof end;

theorem Th7: :: RINFSUP1:7
for b1 being real number
for b2 being Real_Sequence st b2 is bounded_above holds
( b1 = sup b2 iff ( ( for b3 being Nat holds b2 . b3 <= b1 ) & ( for b3 being real number st 0 < b3 holds
ex b4 being Nat st b1 - b3 < b2 . b4 ) ) )
proof end;

theorem Th8: :: RINFSUP1:8
for b1 being real number
for b2 being Real_Sequence st b2 is bounded_below holds
( b1 = inf b2 iff ( ( for b3 being Nat holds b1 <= b2 . b3 ) & ( for b3 being real number st 0 < b3 holds
ex b4 being Nat st b2 . b4 < b1 + b3 ) ) )
proof end;

theorem Th9: :: RINFSUP1:9
for b1 being real number
for b2 being Real_Sequence holds
( ( for b3 being Nat holds b2 . b3 <= b1 ) iff ( b2 is bounded_above & sup b2 <= b1 ) )
proof end;

theorem Th10: :: RINFSUP1:10
for b1 being real number
for b2 being Real_Sequence holds
( ( for b3 being Nat holds b1 <= b2 . b3 ) iff ( b2 is bounded_below & b1 <= inf b2 ) )
proof end;

theorem Th11: :: RINFSUP1:11
for b1 being Real_Sequence holds
( b1 is bounded_above iff - b1 is bounded_below )
proof end;

theorem Th12: :: RINFSUP1:12
for b1 being Real_Sequence holds
( b1 is bounded_below iff - b1 is bounded_above )
proof end;

theorem Th13: :: RINFSUP1:13
for b1 being Real_Sequence st b1 is bounded_above holds
sup b1 = - (inf (- b1))
proof end;

theorem Th14: :: RINFSUP1:14
for b1 being Real_Sequence st b1 is bounded_below holds
inf b1 = - (sup (- b1))
proof end;

theorem Th15: :: RINFSUP1:15
for b1, b2 being Real_Sequence st b1 is bounded_below & b2 is bounded_below holds
inf (b1 + b2) >= (inf b1) + (inf b2)
proof end;

theorem Th16: :: RINFSUP1:16
for b1, b2 being Real_Sequence st b1 is bounded_above & b2 is bounded_above holds
sup (b1 + b2) <= (sup b1) + (sup b2)
proof end;

notation
let c1 be Real_Sequence;
synonym nonnegative c1 for nonnegative-yielding c1;
end;

definition
let c1 be Real_Sequence;
redefine attr a1 is nonnegative-yielding means :Def3: :: RINFSUP1:def 3
for b1 being Nat holds a1 . b1 >= 0;
compatibility
( c1 is nonnegative iff for b1 being Nat holds c1 . b1 >= 0 )
proof end;
end;

:: deftheorem Def3 defines nonnegative RINFSUP1:def 3 :
for b1 being Real_Sequence holds
( b1 is nonnegative iff for b2 being Nat holds b1 . b2 >= 0 );

theorem Th17: :: RINFSUP1:17
for b1 being Nat
for b2 being Real_Sequence st b2 is nonnegative holds
b2 ^\ b1 is nonnegative
proof end;

theorem Th18: :: RINFSUP1:18
for b1 being Real_Sequence st b1 is bounded_below & b1 is nonnegative holds
inf b1 >= 0
proof end;

theorem Th19: :: RINFSUP1:19
for b1 being Real_Sequence st b1 is bounded_above & b1 is nonnegative holds
sup b1 >= 0
proof end;

theorem Th20: :: RINFSUP1:20
for b1, b2 being Real_Sequence st b1 is bounded_below & b1 is nonnegative & b2 is bounded_below & b2 is nonnegative holds
( b1 (#) b2 is bounded_below & inf (b1 (#) b2) >= (inf b1) * (inf b2) )
proof end;

theorem Th21: :: RINFSUP1:21
for b1, b2 being Real_Sequence st b1 is bounded_above & b1 is nonnegative & b2 is bounded_above & b2 is nonnegative holds
( b1 (#) b2 is bounded_above & sup (b1 (#) b2) <= (sup b1) * (sup b2) )
proof end;

theorem Th22: :: RINFSUP1:22
for b1 being Real_Sequence st b1 is non-decreasing & b1 is bounded_above holds
b1 is bounded
proof end;

theorem Th23: :: RINFSUP1:23
for b1 being Real_Sequence st b1 is non-increasing & b1 is bounded_below holds
b1 is bounded
proof end;

theorem Th24: :: RINFSUP1:24
for b1 being Real_Sequence st b1 is non-decreasing & b1 is bounded_above holds
lim b1 = sup b1
proof end;

theorem Th25: :: RINFSUP1:25
for b1 being Real_Sequence st b1 is non-increasing & b1 is bounded_below holds
lim b1 = inf b1
proof end;

theorem Th26: :: RINFSUP1:26
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded_above holds
b2 ^\ b1 is bounded_above
proof end;

theorem Th27: :: RINFSUP1:27
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded_below holds
b2 ^\ b1 is bounded_below
proof end;

theorem Th28: :: RINFSUP1:28
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded holds
b2 ^\ b1 is bounded
proof end;

theorem Th29: :: RINFSUP1:29
for b1 being Real_Sequence
for b2 being Nat holds { (b1 . b3) where B is Nat : b2 <= b3 } is Subset of REAL
proof end;

theorem Th30: :: RINFSUP1:30
for b1 being Nat
for b2 being Real_Sequence holds rng (b2 ^\ b1) = { (b2 . b3) where B is Nat : b1 <= b3 }
proof end;

theorem Th31: :: RINFSUP1:31
for b1 being Real_Sequence st b1 is bounded_above holds
for b2 being Nat
for b3 being Subset of REAL st b3 = { (b1 . b4) where B is Nat : b2 <= b4 } holds
b3 is bounded_above
proof end;

theorem Th32: :: RINFSUP1:32
for b1 being Real_Sequence st b1 is bounded_below holds
for b2 being Nat
for b3 being Subset of REAL st b3 = { (b1 . b4) where B is Nat : b2 <= b4 } holds
b3 is bounded_below
proof end;

theorem Th33: :: RINFSUP1:33
for b1 being Real_Sequence st b1 is bounded holds
for b2 being Nat
for b3 being Subset of REAL st b3 = { (b1 . b4) where B is Nat : b2 <= b4 } holds
b3 is bounded
proof end;

theorem Th34: :: RINFSUP1:34
for b1 being Real_Sequence st b1 is non-decreasing holds
for b2 being Nat
for b3 being Subset of REAL st b3 = { (b1 . b4) where B is Nat : b2 <= b4 } holds
inf b3 = b1 . b2
proof end;

theorem Th35: :: RINFSUP1:35
for b1 being Real_Sequence st b1 is non-increasing holds
for b2 being Nat
for b3 being Subset of REAL st b3 = { (b1 . b4) where B is Nat : b2 <= b4 } holds
sup b3 = b1 . b2
proof end;

theorem Th36: :: RINFSUP1:36
for b1 being Real_Sequence ex b2 being Function of NAT , REAL st
for b3 being Nat
for b4 being Subset of REAL st b4 = { (b1 . b5) where B is Nat : b3 <= b5 } holds
b2 . b3 = sup b4
proof end;

theorem Th37: :: RINFSUP1:37
for b1 being Real_Sequence ex b2 being Function of NAT , REAL st
for b3 being Nat
for b4 being Subset of REAL st b4 = { (b1 . b5) where B is Nat : b3 <= b5 } holds
b2 . b3 = inf b4
proof end;

definition
let c1 be Real_Sequence;
func inferior_realsequence c1 -> Real_Sequence means :Def4: :: RINFSUP1:def 4
for b1 being Nat
for b2 being Subset of REAL st b2 = { (a1 . b3) where B is Nat : b1 <= b3 } holds
a2 . b1 = inf b2;
existence
ex b1 being Real_Sequence st
for b2 being Nat
for b3 being Subset of REAL st b3 = { (c1 . b4) where B is Nat : b2 <= b4 } holds
b1 . b2 = inf b3
by Th37;
uniqueness
for b1, b2 being Real_Sequence st ( for b3 being Nat
for b4 being Subset of REAL st b4 = { (c1 . b5) where B is Nat : b3 <= b5 } holds
b1 . b3 = inf b4 ) & ( for b3 being Nat
for b4 being Subset of REAL st b4 = { (c1 . b5) where B is Nat : b3 <= b5 } holds
b2 . b3 = inf b4 ) holds
b1 = b2
proof end;
end;

:: deftheorem Def4 defines inferior_realsequence RINFSUP1:def 4 :
for b1, b2 being Real_Sequence holds
( b2 = inferior_realsequence b1 iff for b3 being Nat
for b4 being Subset of REAL st b4 = { (b1 . b5) where B is Nat : b3 <= b5 } holds
b2 . b3 = inf b4 );

definition
let c1 be Real_Sequence;
func superior_realsequence c1 -> Real_Sequence means :Def5: :: RINFSUP1:def 5
for b1 being Nat
for b2 being Subset of REAL st b2 = { (a1 . b3) where B is Nat : b1 <= b3 } holds
a2 . b1 = sup b2;
existence
ex b1 being Real_Sequence st
for b2 being Nat
for b3 being Subset of REAL st b3 = { (c1 . b4) where B is Nat : b2 <= b4 } holds
b1 . b2 = sup b3
by Th36;
uniqueness
for b1, b2 being Real_Sequence st ( for b3 being Nat
for b4 being Subset of REAL st b4 = { (c1 . b5) where B is Nat : b3 <= b5 } holds
b1 . b3 = sup b4 ) & ( for b3 being Nat
for b4 being Subset of REAL st b4 = { (c1 . b5) where B is Nat : b3 <= b5 } holds
b2 . b3 = sup b4 ) holds
b1 = b2
proof end;
end;

:: deftheorem Def5 defines superior_realsequence RINFSUP1:def 5 :
for b1, b2 being Real_Sequence holds
( b2 = superior_realsequence b1 iff for b3 being Nat
for b4 being Subset of REAL st b4 = { (b1 . b5) where B is Nat : b3 <= b5 } holds
b2 . b3 = sup b4 );

theorem Th38: :: RINFSUP1:38
for b1 being Nat
for b2 being Real_Sequence holds (inferior_realsequence b2) . b1 = inf (b2 ^\ b1)
proof end;

theorem Th39: :: RINFSUP1:39
for b1 being Nat
for b2 being Real_Sequence holds (superior_realsequence b2) . b1 = sup (b2 ^\ b1)
proof end;

theorem Th40: :: RINFSUP1:40
for b1 being Real_Sequence st b1 is bounded_below holds
(inferior_realsequence b1) . 0 = inf b1
proof end;

theorem Th41: :: RINFSUP1:41
for b1 being Real_Sequence st b1 is bounded_above holds
(superior_realsequence b1) . 0 = sup b1
proof end;

theorem Th42: :: RINFSUP1:42
for b1 being Nat
for b2 being real number
for b3 being Real_Sequence st b3 is bounded_below holds
( b2 = (inferior_realsequence b3) . b1 iff ( ( for b4 being Nat holds b2 <= b3 . (b1 + b4) ) & ( for b4 being real number st 0 < b4 holds
ex b5 being Nat st b3 . (b1 + b5) < b2 + b4 ) ) )
proof end;

theorem Th43: :: RINFSUP1:43
for b1 being Nat
for b2 being real number
for b3 being Real_Sequence st b3 is bounded_above holds
( b2 = (superior_realsequence b3) . b1 iff ( ( for b4 being Nat holds b3 . (b1 + b4) <= b2 ) & ( for b4 being real number st 0 < b4 holds
ex b5 being Nat st b2 - b4 < b3 . (b1 + b5) ) ) )
proof end;

theorem Th44: :: RINFSUP1:44
for b1 being Nat
for b2 being real number
for b3 being Real_Sequence st b3 is bounded_below holds
( ( for b4 being Nat holds b2 <= b3 . (b1 + b4) ) iff b2 <= (inferior_realsequence b3) . b1 )
proof end;

theorem Th45: :: RINFSUP1:45
for b1 being Nat
for b2 being real number
for b3 being Real_Sequence st b3 is bounded_below holds
( ( for b4 being Nat st b1 <= b4 holds
b2 <= b3 . b4 ) iff b2 <= (inferior_realsequence b3) . b1 )
proof end;

theorem Th46: :: RINFSUP1:46
for b1 being Nat
for b2 being real number
for b3 being Real_Sequence st b3 is bounded_above holds
( ( for b4 being Nat holds b3 . (b1 + b4) <= b2 ) iff (superior_realsequence b3) . b1 <= b2 )
proof end;

theorem Th47: :: RINFSUP1:47
for b1 being Nat
for b2 being real number
for b3 being Real_Sequence st b3 is bounded_above holds
( ( for b4 being Nat st b1 <= b4 holds
b3 . b4 <= b2 ) iff (superior_realsequence b3) . b1 <= b2 )
proof end;

theorem Th48: :: RINFSUP1:48
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded_below holds
(inferior_realsequence b2) . b1 = min ((inferior_realsequence b2) . (b1 + 1)),(b2 . b1)
proof end;

theorem Th49: :: RINFSUP1:49
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded_above holds
(superior_realsequence b2) . b1 = max ((superior_realsequence b2) . (b1 + 1)),(b2 . b1)
proof end;

theorem Th50: :: RINFSUP1:50
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded_below holds
(inferior_realsequence b2) . b1 <= (inferior_realsequence b2) . (b1 + 1)
proof end;

theorem Th51: :: RINFSUP1:51
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded_above holds
(superior_realsequence b2) . (b1 + 1) <= (superior_realsequence b2) . b1
proof end;

theorem Th52: :: RINFSUP1:52
for b1 being Real_Sequence st b1 is bounded_below holds
inferior_realsequence b1 is non-decreasing
proof end;

theorem Th53: :: RINFSUP1:53
for b1 being Real_Sequence st b1 is bounded_above holds
superior_realsequence b1 is non-increasing
proof end;

theorem Th54: :: RINFSUP1:54
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded holds
(inferior_realsequence b2) . b1 <= (superior_realsequence b2) . b1
proof end;

theorem Th55: :: RINFSUP1:55
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded holds
(inferior_realsequence b2) . b1 <= inf (superior_realsequence b2)
proof end;

theorem Th56: :: RINFSUP1:56
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded holds
sup (inferior_realsequence b2) <= (superior_realsequence b2) . b1
proof end;

theorem Th57: :: RINFSUP1:57
for b1 being Real_Sequence st b1 is bounded holds
sup (inferior_realsequence b1) <= inf (superior_realsequence b1)
proof end;

theorem Th58: :: RINFSUP1:58
for b1 being Real_Sequence st b1 is bounded holds
( superior_realsequence b1 is bounded & inferior_realsequence b1 is bounded )
proof end;

theorem Th59: :: RINFSUP1:59
for b1 being Real_Sequence st b1 is bounded holds
( inferior_realsequence b1 is convergent & lim (inferior_realsequence b1) = sup (inferior_realsequence b1) )
proof end;

theorem Th60: :: RINFSUP1:60
for b1 being Real_Sequence st b1 is bounded holds
( superior_realsequence b1 is convergent & lim (superior_realsequence b1) = inf (superior_realsequence b1) )
proof end;

theorem Th61: :: RINFSUP1:61
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded_below holds
(inferior_realsequence b2) . b1 = - ((superior_realsequence (- b2)) . b1)
proof end;

theorem Th62: :: RINFSUP1:62
for b1 being Nat
for b2 being Real_Sequence st b2 is bounded_above holds
(superior_realsequence b2) . b1 = - ((inferior_realsequence (- b2)) . b1)
proof end;

theorem Th63: :: RINFSUP1:63
for b1 being Real_Sequence st b1 is bounded_below holds
inferior_realsequence b1 = - (superior_realsequence (- b1))
proof end;

theorem Th64: :: RINFSUP1:64
for b1 being Real_Sequence st b1 is bounded_above holds
superior_realsequence b1 = - (inferior_realsequence (- b1))
proof end;

theorem Th65: :: RINFSUP1:65
for b1 being Nat
for b2 being Real_Sequence st b2 is non-decreasing holds
b2 . b1 <= (inferior_realsequence b2) . (b1 + 1)
proof end;

Lemma66: for b1 being Nat
for b2 being Real_Sequence st b2 is non-decreasing holds
(inferior_realsequence b2) . b1 = b2 . b1
proof end;

theorem Th66: :: RINFSUP1:66
for b1 being Real_Sequence st b1 is non-decreasing holds
inferior_realsequence b1 = b1
proof end;

theorem Th67: :: RINFSUP1:67
for b1 being Nat
for b2 being Real_Sequence st b2 is non-decreasing & b2 is bounded_above holds
b2 . b1 <= (superior_realsequence b2) . (b1 + 1)
proof end;

theorem Th68: :: RINFSUP1:68
for b1 being Nat
for b2 being Real_Sequence st b2 is non-decreasing & b2 is bounded_above holds
(superior_realsequence b2) . b1 = (superior_realsequence b2) . (b1 + 1)
proof end;

theorem Th69: :: RINFSUP1:69
for b1 being Nat
for b2 being Real_Sequence st b2 is non-decreasing & b2 is bounded_above holds
( (superior_realsequence b2) . b1 = sup b2 & superior_realsequence b2 is constant )
proof end;

theorem Th70: :: RINFSUP1:70
for b1 being Real_Sequence st b1 is non-decreasing & b1 is bounded_above holds
inf (superior_realsequence b1) = sup b1
proof end;

theorem Th71: :: RINFSUP1:71
for b1 being Nat
for b2 being Real_Sequence st b2 is non-increasing holds
(superior_realsequence b2) . (b1 + 1) <= b2 . b1
proof end;

Lemma70: for b1 being Nat
for b2 being Real_Sequence st b2 is non-increasing holds
(superior_realsequence b2) . b1 = b2 . b1
proof end;

theorem Th72: :: RINFSUP1:72
for b1 being Real_Sequence st b1 is non-increasing holds
superior_realsequence b1 = b1
proof end;

theorem Th73: :: RINFSUP1:73
for b1 being Nat
for b2 being Real_Sequence st b2 is non-increasing & b2 is bounded_below holds
(inferior_realsequence b2) . (b1 + 1) <= b2 . b1
proof end;

theorem Th74: :: RINFSUP1:74
for b1 being Nat
for b2 being Real_Sequence st b2 is non-increasing & b2 is bounded_below holds
(inferior_realsequence b2) . b1 = (inferior_realsequence b2) . (b1 + 1)
proof end;

theorem Th75: :: RINFSUP1:75
for b1 being Nat
for b2 being Real_Sequence st b2 is non-increasing & b2 is bounded_below holds
( (inferior_realsequence b2) . b1 = inf b2 & inferior_realsequence b2 is constant )
proof end;

theorem Th76: :: RINFSUP1:76
for b1 being Real_Sequence st b1 is non-increasing & b1 is bounded_below holds
sup (inferior_realsequence b1) = inf b1
proof end;

theorem Th77: :: RINFSUP1:77
for b1, b2 being Real_Sequence st b1 is bounded & b2 is bounded & ( for b3 being Nat holds b1 . b3 <= b2 . b3 ) holds
( ( for b3 being Nat holds (superior_realsequence b1) . b3 <= (superior_realsequence b2) . b3 ) & ( for b3 being Nat holds (inferior_realsequence b1) . b3 <= (inferior_realsequence b2) . b3 ) )
proof end;

theorem Th78: :: RINFSUP1:78
for b1 being Nat
for b2, b3 being Real_Sequence st b2 is bounded_below & b3 is bounded_below holds
(inferior_realsequence (b2 + b3)) . b1 >= ((inferior_realsequence b2) . b1) + ((inferior_realsequence b3) . b1)
proof end;

theorem Th79: :: RINFSUP1:79
for b1 being Nat
for b2, b3 being Real_Sequence st b2 is bounded_above & b3 is bounded_above holds
(superior_realsequence (b2 + b3)) . b1 <= ((superior_realsequence b2) . b1) + ((superior_realsequence b3) . b1)
proof end;

theorem Th80: :: RINFSUP1:80
for b1 being Nat
for b2, b3 being Real_Sequence st b2 is bounded_below & b2 is nonnegative & b3 is bounded_below & b3 is nonnegative holds
(inferior_realsequence (b2 (#) b3)) . b1 >= ((inferior_realsequence b2) . b1) * ((inferior_realsequence b3) . b1)
proof end;

theorem Th81: :: RINFSUP1:81
for b1 being Nat
for b2, b3 being Real_Sequence st b2 is bounded_below & b2 is nonnegative & b3 is bounded_below & b3 is nonnegative holds
(inferior_realsequence (b2 (#) b3)) . b1 >= ((inferior_realsequence b2) . b1) * ((inferior_realsequence b3) . b1)
proof end;

theorem Th82: :: RINFSUP1:82
for b1 being Nat
for b2, b3 being Real_Sequence st b2 is bounded_above & b2 is nonnegative & b3 is bounded_above & b3 is nonnegative holds
(superior_realsequence (b2 (#) b3)) . b1 <= ((superior_realsequence b2) . b1) * ((superior_realsequence b3) . b1)
proof end;

definition
let c1 be Real_Sequence;
func lim_sup c1 -> Element of REAL equals :: RINFSUP1:def 6
inf (superior_realsequence a1);
coherence
inf (superior_realsequence c1) is Element of REAL
;
end;

:: deftheorem Def6 defines lim_sup RINFSUP1:def 6 :
for b1 being Real_Sequence holds lim_sup b1 = inf (superior_realsequence b1);

definition
let c1 be Real_Sequence;
func lim_inf c1 -> Element of REAL equals :: RINFSUP1:def 7
sup (inferior_realsequence a1);
coherence
sup (inferior_realsequence c1) is Element of REAL
;
end;

:: deftheorem Def7 defines lim_inf RINFSUP1:def 7 :
for b1 being Real_Sequence holds lim_inf b1 = sup (inferior_realsequence b1);

theorem Th83: :: RINFSUP1:83
for b1 being real number
for b2 being Real_Sequence st b2 is bounded holds
( lim_inf b2 <= b1 iff for b3 being real number st 0 < b3 holds
for b4 being Nat ex b5 being Nat st b2 . (b4 + b5) < b1 + b3 )
proof end;

theorem Th84: :: RINFSUP1:84
for b1 being real number
for b2 being Real_Sequence st b2 is bounded holds
( b1 <= lim_inf b2 iff for b3 being real number st 0 < b3 holds
ex b4 being Nat st
for b5 being Nat holds b1 - b3 < b2 . (b4 + b5) )
proof end;

theorem Th85: :: RINFSUP1:85
for b1 being real number
for b2 being Real_Sequence st b2 is bounded holds
( b1 = lim_inf b2 iff for b3 being real number st 0 < b3 holds
( ( for b4 being Nat ex b5 being Nat st b2 . (b4 + b5) < b1 + b3 ) & ex b4 being Nat st
for b5 being Nat holds b1 - b3 < b2 . (b4 + b5) ) )
proof end;

theorem Th86: :: RINFSUP1:86
for b1 being real number
for b2 being Real_Sequence st b2 is bounded holds
( b1 <= lim_sup b2 iff for b3 being real number st 0 < b3 holds
for b4 being Nat ex b5 being Nat st b2 . (b4 + b5) > b1 - b3 )
proof end;

theorem Th87: :: RINFSUP1:87
for b1 being real number
for b2 being Real_Sequence st b2 is bounded holds
( lim_sup b2 <= b1 iff for b3 being real number st 0 < b3 holds
ex b4 being Nat st
for b5 being Nat holds b2 . (b4 + b5) < b1 + b3 )
proof end;

theorem Th88: :: RINFSUP1:88
for b1 being real number
for b2 being Real_Sequence st b2 is bounded holds
( b1 = lim_sup b2 iff for b3 being real number st 0 < b3 holds
( ( for b4 being Nat ex b5 being Nat st b2 . (b4 + b5) > b1 - b3 ) & ex b4 being Nat st
for b5 being Nat holds b2 . (b4 + b5) < b1 + b3 ) )
proof end;

theorem Th89: :: RINFSUP1:89
for b1 being Real_Sequence st b1 is bounded holds
lim_inf b1 <= lim_sup b1 by Th57;

theorem Th90: :: RINFSUP1:90
for b1 being Real_Sequence holds
( ( b1 is bounded & lim_sup b1 = lim_inf b1 ) iff b1 is convergent )
proof end;

theorem Th91: :: RINFSUP1:91
for b1 being Real_Sequence st b1 is convergent holds
( lim b1 = lim_sup b1 & lim b1 = lim_inf b1 )
proof end;

theorem Th92: :: RINFSUP1:92
for b1 being Real_Sequence st b1 is bounded holds
( lim_sup (- b1) = - (lim_inf b1) & lim_inf (- b1) = - (lim_sup b1) )
proof end;

theorem Th93: :: RINFSUP1:93
for b1, b2 being Real_Sequence st b1 is bounded & b2 is bounded & ( for b3 being Nat holds b1 . b3 <= b2 . b3 ) holds
( lim_sup b1 <= lim_sup b2 & lim_inf b1 <= lim_inf b2 )
proof end;

theorem Th94: :: RINFSUP1:94
for b1, b2 being Real_Sequence st b1 is bounded & b2 is bounded holds
( (lim_inf b1) + (lim_inf b2) <= lim_inf (b1 + b2) & lim_inf (b1 + b2) <= (lim_inf b1) + (lim_sup b2) & lim_inf (b1 + b2) <= (lim_sup b1) + (lim_inf b2) & (lim_inf b1) + (lim_sup b2) <= lim_sup (b1 + b2) & (lim_sup b1) + (lim_inf b2) <= lim_sup (b1 + b2) & lim_sup (b1 + b2) <= (lim_sup b1) + (lim_sup b2) & ( ( b1 is convergent or b2 is convergent ) implies ( lim_inf (b1 + b2) = (lim_inf b1) + (lim_inf b2) & lim_sup (b1 + b2) = (lim_sup b1) + (lim_sup b2) ) ) )
proof end;

theorem Th95: :: RINFSUP1:95
for b1, b2 being Real_Sequence st b1 is bounded & b1 is nonnegative & b2 is bounded & b2 is nonnegative holds
( (lim_inf b1) * (lim_inf b2) <= lim_inf (b1 (#) b2) & lim_sup (b1 (#) b2) <= (lim_sup b1) * (lim_sup b2) )
proof end;