:: SEQM_3 semantic presentation

Lemma1: for b1, b2 being Nat st b1 < b2 holds
ex b3 being Nat st b2 = (b1 + 1) + b3
proof end;

Lemma2: for b1 being Real_Sequence holds
( ( ( for b2 being Nat holds b1 . b2 < b1 . (b2 + 1) ) implies for b2, b3 being Nat holds b1 . b2 < b1 . ((b2 + 1) + b3) ) & ( ( for b2, b3 being Nat holds b1 . b2 < b1 . ((b2 + 1) + b3) ) implies for b2, b3 being Nat st b2 < b3 holds
b1 . b2 < b1 . b3 ) & ( ( for b2, b3 being Nat st b2 < b3 holds
b1 . b2 < b1 . b3 ) implies for b2 being Nat holds b1 . b2 < b1 . (b2 + 1) ) )
proof end;

Lemma3: for b1 being Real_Sequence holds
( ( ( for b2 being Nat holds b1 . (b2 + 1) < b1 . b2 ) implies for b2, b3 being Nat holds b1 . ((b2 + 1) + b3) < b1 . b2 ) & ( ( for b2, b3 being Nat holds b1 . ((b2 + 1) + b3) < b1 . b2 ) implies for b2, b3 being Nat st b2 < b3 holds
b1 . b3 < b1 . b2 ) & ( ( for b2, b3 being Nat st b2 < b3 holds
b1 . b3 < b1 . b2 ) implies for b2 being Nat holds b1 . (b2 + 1) < b1 . b2 ) )
proof end;

Lemma4: for b1 being Real_Sequence holds
( ( ( for b2 being Nat holds b1 . b2 <= b1 . (b2 + 1) ) implies for b2, b3 being Nat holds b1 . b2 <= b1 . (b2 + b3) ) & ( ( for b2, b3 being Nat holds b1 . b2 <= b1 . (b2 + b3) ) implies for b2, b3 being Nat st b2 <= b3 holds
b1 . b2 <= b1 . b3 ) & ( ( for b2, b3 being Nat st b2 <= b3 holds
b1 . b2 <= b1 . b3 ) implies for b2 being Nat holds b1 . b2 <= b1 . (b2 + 1) ) )
proof end;

Lemma5: for b1 being Real_Sequence holds
( ( ( for b2 being Nat holds b1 . (b2 + 1) <= b1 . b2 ) implies for b2, b3 being Nat holds b1 . (b2 + b3) <= b1 . b2 ) & ( ( for b2, b3 being Nat holds b1 . (b2 + b3) <= b1 . b2 ) implies for b2, b3 being Nat st b2 <= b3 holds
b1 . b3 <= b1 . b2 ) & ( ( for b2, b3 being Nat st b2 <= b3 holds
b1 . b3 <= b1 . b2 ) implies for b2 being Nat holds b1 . (b2 + 1) <= b1 . b2 ) )
proof end;

definition
let c1 be PartFunc of NAT , REAL ;
attr a1 is increasing means :Def1: :: SEQM_3:def 1
for b1, b2 being Nat st b1 in dom a1 & b2 in dom a1 & b1 < b2 holds
a1 . b1 < a1 . b2;
attr a1 is decreasing means :Def2: :: SEQM_3:def 2
for b1, b2 being Nat st b1 in dom a1 & b2 in dom a1 & b1 < b2 holds
a1 . b1 > a1 . b2;
attr a1 is non-decreasing means :Def3: :: SEQM_3:def 3
for b1, b2 being Nat st b1 in dom a1 & b2 in dom a1 & b1 <= b2 holds
a1 . b1 <= a1 . b2;
attr a1 is non-increasing means :Def4: :: SEQM_3:def 4
for b1, b2 being Nat st b1 in dom a1 & b2 in dom a1 & b1 <= b2 holds
a1 . b1 >= a1 . b2;
end;

:: deftheorem Def1 defines increasing SEQM_3:def 1 :
for b1 being PartFunc of NAT , REAL holds
( b1 is increasing iff for b2, b3 being Nat st b2 in dom b1 & b3 in dom b1 & b2 < b3 holds
b1 . b2 < b1 . b3 );

:: deftheorem Def2 defines decreasing SEQM_3:def 2 :
for b1 being PartFunc of NAT , REAL holds
( b1 is decreasing iff for b2, b3 being Nat st b2 in dom b1 & b3 in dom b1 & b2 < b3 holds
b1 . b2 > b1 . b3 );

:: deftheorem Def3 defines non-decreasing SEQM_3:def 3 :
for b1 being PartFunc of NAT , REAL holds
( b1 is non-decreasing iff for b2, b3 being Nat st b2 in dom b1 & b3 in dom b1 & b2 <= b3 holds
b1 . b2 <= b1 . b3 );

:: deftheorem Def4 defines non-increasing SEQM_3:def 4 :
for b1 being PartFunc of NAT , REAL holds
( b1 is non-increasing iff for b2, b3 being Nat st b2 in dom b1 & b3 in dom b1 & b2 <= b3 holds
b1 . b2 >= b1 . b3 );

Lemma10: for b1 being Real_Sequence holds
( b1 is increasing iff for b2 being Nat holds b1 . b2 < b1 . (b2 + 1) )
proof end;

Lemma11: for b1 being Real_Sequence holds
( b1 is decreasing iff for b2 being Nat holds b1 . b2 > b1 . (b2 + 1) )
proof end;

Lemma12: for b1 being Real_Sequence holds
( b1 is non-decreasing iff for b2 being Nat holds b1 . b2 <= b1 . (b2 + 1) )
proof end;

Lemma13: for b1 being Real_Sequence holds
( b1 is non-increasing iff for b2 being Nat holds b1 . b2 >= b1 . (b2 + 1) )
proof end;

definition
let c1 be Function;
attr a1 is constant means :Def5: :: SEQM_3:def 5
for b1, b2 being set st b1 in dom a1 & b2 in dom a1 holds
a1 . b1 = a1 . b2;
end;

:: deftheorem Def5 defines constant SEQM_3:def 5 :
for b1 being Function holds
( b1 is constant iff for b2, b3 being set st b2 in dom b1 & b3 in dom b1 holds
b1 . b2 = b1 . b3 );

definition
let c1 be Real_Sequence;
redefine attr a1 is constant means :Def6: :: SEQM_3:def 6
ex b1 being real number st
for b2 being Nat holds a1 . b2 = b1;
compatibility
( c1 is constant iff ex b1 being real number st
for b2 being Nat holds c1 . b2 = b1 )
proof end;
end;

:: deftheorem Def6 defines constant SEQM_3:def 6 :
for b1 being Real_Sequence holds
( b1 is constant iff ex b2 being real number st
for b3 being Nat holds b1 . b3 = b2 );

definition
let c1 be Real_Sequence;
attr a1 is monotone means :Def7: :: SEQM_3:def 7
( a1 is non-decreasing or a1 is non-increasing );
end;

:: deftheorem Def7 defines monotone SEQM_3:def 7 :
for b1 being Real_Sequence holds
( b1 is monotone iff ( b1 is non-decreasing or b1 is non-increasing ) );

theorem Th1: :: SEQM_3:1
canceled;

theorem Th2: :: SEQM_3:2
canceled;

theorem Th3: :: SEQM_3:3
canceled;

theorem Th4: :: SEQM_3:4
canceled;

theorem Th5: :: SEQM_3:5
canceled;

theorem Th6: :: SEQM_3:6
canceled;

theorem Th7: :: SEQM_3:7
for b1 being Real_Sequence holds
( b1 is increasing iff for b2, b3 being Nat st b2 < b3 holds
b1 . b2 < b1 . b3 )
proof end;

theorem Th8: :: SEQM_3:8
for b1 being Real_Sequence holds
( b1 is increasing iff for b2, b3 being Nat holds b1 . b2 < b1 . ((b2 + 1) + b3) )
proof end;

theorem Th9: :: SEQM_3:9
for b1 being Real_Sequence holds
( b1 is decreasing iff for b2, b3 being Nat holds b1 . ((b2 + 1) + b3) < b1 . b2 )
proof end;

theorem Th10: :: SEQM_3:10
for b1 being Real_Sequence holds
( b1 is decreasing iff for b2, b3 being Nat st b2 < b3 holds
b1 . b3 < b1 . b2 )
proof end;

theorem Th11: :: SEQM_3:11
for b1 being Real_Sequence holds
( b1 is non-decreasing iff for b2, b3 being Nat holds b1 . b2 <= b1 . (b2 + b3) )
proof end;

theorem Th12: :: SEQM_3:12
for b1 being Real_Sequence holds
( b1 is non-decreasing iff for b2, b3 being Nat st b2 <= b3 holds
b1 . b2 <= b1 . b3 )
proof end;

theorem Th13: :: SEQM_3:13
for b1 being Real_Sequence holds
( b1 is non-increasing iff for b2, b3 being Nat holds b1 . (b2 + b3) <= b1 . b2 )
proof end;

theorem Th14: :: SEQM_3:14
for b1 being Real_Sequence holds
( b1 is non-increasing iff for b2, b3 being Nat st b2 <= b3 holds
b1 . b3 <= b1 . b2 )
proof end;

Lemma24: for b1 being Real_Sequence holds
( ( ex b2 being real number st
for b3 being Nat holds b1 . b3 = b2 implies ex b2 being real number st rng b1 = {b2} ) & ( ex b2 being real number st rng b1 = {b2} implies for b2 being Nat holds b1 . b2 = b1 . (b2 + 1) ) & ( ( for b2 being Nat holds b1 . b2 = b1 . (b2 + 1) ) implies for b2, b3 being Nat holds b1 . b2 = b1 . (b2 + b3) ) & ( ( for b2, b3 being Nat holds b1 . b2 = b1 . (b2 + b3) ) implies for b2, b3 being Nat holds b1 . b2 = b1 . b3 ) & ( ( for b2, b3 being Nat holds b1 . b2 = b1 . b3 ) implies ex b2 being real number st
for b3 being Nat holds b1 . b3 = b2 ) )
proof end;

theorem Th15: :: SEQM_3:15
for b1 being Real_Sequence holds
( b1 is constant iff ex b2 being real number st rng b1 = {b2} )
proof end;

theorem Th16: :: SEQM_3:16
for b1 being Real_Sequence holds
( b1 is constant iff for b2 being Nat holds b1 . b2 = b1 . (b2 + 1) )
proof end;

theorem Th17: :: SEQM_3:17
for b1 being Real_Sequence holds
( b1 is constant iff for b2, b3 being Nat holds b1 . b2 = b1 . (b2 + b3) )
proof end;

theorem Th18: :: SEQM_3:18
for b1 being Real_Sequence holds
( b1 is constant iff for b2, b3 being Nat holds b1 . b2 = b1 . b3 )
proof end;

theorem Th19: :: SEQM_3:19
for b1 being Real_Sequence st b1 is increasing holds
for b2 being Nat st 0 < b2 holds
b1 . 0 < b1 . b2 by Th7;

theorem Th20: :: SEQM_3:20
for b1 being Real_Sequence st b1 is decreasing holds
for b2 being Nat st 0 < b2 holds
b1 . b2 < b1 . 0 by Th10;

theorem Th21: :: SEQM_3:21
for b1 being Real_Sequence st b1 is non-decreasing holds
for b2 being Nat holds b1 . 0 <= b1 . b2
proof end;

theorem Th22: :: SEQM_3:22
for b1 being Real_Sequence st b1 is non-increasing holds
for b2 being Nat holds b1 . b2 <= b1 . 0
proof end;

registration
cluster increasing -> non-decreasing M5( NAT , REAL );
coherence
for b1 being PartFunc of NAT , REAL st b1 is increasing holds
b1 is non-decreasing
proof end;
cluster decreasing -> non-increasing M5( NAT , REAL );
coherence
for b1 being PartFunc of NAT , REAL st b1 is decreasing holds
b1 is non-increasing
proof end;
cluster constant -> non-decreasing non-increasing M5( NAT , REAL );
coherence
for b1 being PartFunc of NAT , REAL st b1 is constant holds
( b1 is non-decreasing & b1 is non-increasing )
proof end;
cluster non-decreasing non-increasing -> constant M5( NAT , REAL );
coherence
for b1 being PartFunc of NAT , REAL st b1 is non-decreasing & b1 is non-increasing holds
b1 is constant
proof end;
end;

theorem Th23: :: SEQM_3:23
for b1 being Real_Sequence st b1 is increasing holds
b1 is non-decreasing
proof end;

theorem Th24: :: SEQM_3:24
for b1 being Real_Sequence st b1 is decreasing holds
b1 is non-increasing
proof end;

theorem Th25: :: SEQM_3:25
for b1 being Real_Sequence st b1 is constant holds
b1 is non-decreasing
proof end;

theorem Th26: :: SEQM_3:26
for b1 being Real_Sequence st b1 is constant holds
b1 is non-increasing
proof end;

theorem Th27: :: SEQM_3:27
for b1 being Real_Sequence st b1 is non-decreasing & b1 is non-increasing holds
b1 is constant
proof end;

definition
let c1 be Relation;
attr a1 is natural-yielding means :Def8: :: SEQM_3:def 8
rng a1 c= NAT ;
end;

:: deftheorem Def8 defines natural-yielding SEQM_3:def 8 :
for b1 being Relation holds
( b1 is natural-yielding iff rng b1 c= NAT );

Lemma34: ( incl NAT is increasing & incl NAT is natural-yielding )
proof end;

registration
cluster increasing non-decreasing natural-yielding M5( NAT , REAL );
existence
ex b1 being Real_Sequence st
( b1 is increasing & b1 is natural-yielding )
by Lemma34;
end;

definition
mode Seq_of_Nat is natural-yielding Real_Sequence;
end;

definition
let c1 be Real_Sequence;
let c2 be Nat;
func c1 ^\ c2 -> Real_Sequence means :Def9: :: SEQM_3:def 9
for b1 being Nat holds a3 . b1 = a1 . (b1 + a2);
existence
ex b1 being Real_Sequence st
for b2 being Nat holds b1 . b2 = c1 . (b2 + c2)
proof end;
uniqueness
for b1, b2 being Real_Sequence st ( for b3 being Nat holds b1 . b3 = c1 . (b3 + c2) ) & ( for b3 being Nat holds b2 . b3 = c1 . (b3 + c2) ) holds
b1 = b2
proof end;
end;

:: deftheorem Def9 defines ^\ SEQM_3:def 9 :
for b1 being Real_Sequence
for b2 being Nat
for b3 being Real_Sequence holds
( b3 = b1 ^\ b2 iff for b4 being Nat holds b3 . b4 = b1 . (b4 + b2) );

theorem Th28: :: SEQM_3:28
canceled;

theorem Th29: :: SEQM_3:29
for b1 being Real_Sequence holds
( b1 is increasing Seq_of_Nat iff ( b1 is increasing & ( for b2 being Nat holds b1 . b2 is Nat ) ) )
proof end;

theorem Th30: :: SEQM_3:30
canceled;

theorem Th31: :: SEQM_3:31
for b1 being Real_Sequence
for b2 being increasing Seq_of_Nat
for b3 being Nat holds (b1 * b2) . b3 = b1 . (b2 . b3)
proof end;

definition
let c1 be increasing Seq_of_Nat;
let c2 be Nat;
redefine func . as c1 . c2 -> Nat;
coherence
c1 . c2 is Nat
by Th29;
end;

definition
let c1 be increasing Seq_of_Nat;
let c2 be Real_Sequence;
redefine func * as c2 * c1 -> Real_Sequence;
coherence
c1 * c2 is Real_Sequence
proof end;
end;

definition
let c1, c2 be increasing Seq_of_Nat;
redefine func * as c2 * c1 -> increasing Seq_of_Nat;
coherence
c1 * c2 is increasing Seq_of_Nat
proof end;
end;

registration
let c1 be increasing Seq_of_Nat;
let c2 be Nat;
cluster a1 ^\ a2 -> increasing non-decreasing natural-yielding ;
coherence
( c1 ^\ c2 is increasing & c1 ^\ c2 is natural-yielding )
proof end;
end;

definition
let c1 be Real_Sequence;
mode subsequence of c1 -> Real_Sequence means :Def10: :: SEQM_3:def 10
ex b1 being increasing Seq_of_Nat st a2 = a1 * b1;
existence
ex b1 being Real_Sequenceex b2 being increasing Seq_of_Nat st b1 = c1 * b2
proof end;
end;

:: deftheorem Def10 defines subsequence SEQM_3:def 10 :
for b1, b2 being Real_Sequence holds
( b2 is subsequence of b1 iff ex b3 being increasing Seq_of_Nat st b2 = b1 * b3 );

definition
let c1 be Real_Sequence;
redefine attr a1 is increasing means :: SEQM_3:def 11
for b1 being Nat holds a1 . b1 < a1 . (b1 + 1);
compatibility
( c1 is increasing iff for b1 being Nat holds c1 . b1 < c1 . (b1 + 1) )
by Lemma10;
redefine attr a1 is decreasing means :: SEQM_3:def 12
for b1 being Nat holds a1 . b1 > a1 . (b1 + 1);
compatibility
( c1 is decreasing iff for b1 being Nat holds c1 . b1 > c1 . (b1 + 1) )
by Lemma11;
redefine attr a1 is non-decreasing means :: SEQM_3:def 13
for b1 being Nat holds a1 . b1 <= a1 . (b1 + 1);
compatibility
( c1 is non-decreasing iff for b1 being Nat holds c1 . b1 <= c1 . (b1 + 1) )
by Lemma12;
redefine attr a1 is non-increasing means :: SEQM_3:def 14
for b1 being Nat holds a1 . b1 >= a1 . (b1 + 1);
compatibility
( c1 is non-increasing iff for b1 being Nat holds c1 . b1 >= c1 . (b1 + 1) )
by Lemma13;
end;

:: deftheorem Def11 defines increasing SEQM_3:def 11 :
for b1 being Real_Sequence holds
( b1 is increasing iff for b2 being Nat holds b1 . b2 < b1 . (b2 + 1) );

:: deftheorem Def12 defines decreasing SEQM_3:def 12 :
for b1 being Real_Sequence holds
( b1 is decreasing iff for b2 being Nat holds b1 . b2 > b1 . (b2 + 1) );

:: deftheorem Def13 defines non-decreasing SEQM_3:def 13 :
for b1 being Real_Sequence holds
( b1 is non-decreasing iff for b2 being Nat holds b1 . b2 <= b1 . (b2 + 1) );

:: deftheorem Def14 defines non-increasing SEQM_3:def 14 :
for b1 being Real_Sequence holds
( b1 is non-increasing iff for b2 being Nat holds b1 . b2 >= b1 . (b2 + 1) );

theorem Th32: :: SEQM_3:32
canceled;

theorem Th33: :: SEQM_3:33
for b1 being increasing Seq_of_Nat
for b2 being Nat holds b2 <= b1 . b2
proof end;

theorem Th34: :: SEQM_3:34
for b1 being Real_Sequence holds b1 ^\ 0 = b1
proof end;

theorem Th35: :: SEQM_3:35
for b1, b2 being Nat
for b3 being Real_Sequence holds (b3 ^\ b1) ^\ b2 = (b3 ^\ b2) ^\ b1
proof end;

theorem Th36: :: SEQM_3:36
for b1, b2 being Nat
for b3 being Real_Sequence holds (b3 ^\ b1) ^\ b2 = b3 ^\ (b1 + b2)
proof end;

theorem Th37: :: SEQM_3:37
for b1 being Nat
for b2, b3 being Real_Sequence holds (b2 + b3) ^\ b1 = (b2 ^\ b1) + (b3 ^\ b1)
proof end;

theorem Th38: :: SEQM_3:38
for b1 being Nat
for b2 being Real_Sequence holds (- b2) ^\ b1 = - (b2 ^\ b1)
proof end;

theorem Th39: :: SEQM_3:39
for b1 being Nat
for b2, b3 being Real_Sequence holds (b2 - b3) ^\ b1 = (b2 ^\ b1) - (b3 ^\ b1)
proof end;

theorem Th40: :: SEQM_3:40
for b1 being Nat
for b2 being Real_Sequence st b2 is_not_0 holds
b2 ^\ b1 is_not_0
proof end;

theorem Th41: :: SEQM_3:41
for b1 being Nat
for b2 being Real_Sequence holds (b2 " ) ^\ b1 = (b2 ^\ b1) "
proof end;

theorem Th42: :: SEQM_3:42
for b1 being Nat
for b2, b3 being Real_Sequence holds (b2 (#) b3) ^\ b1 = (b2 ^\ b1) (#) (b3 ^\ b1)
proof end;

theorem Th43: :: SEQM_3:43
for b1 being Nat
for b2, b3 being Real_Sequence holds (b2 /" b3) ^\ b1 = (b2 ^\ b1) /" (b3 ^\ b1)
proof end;

theorem Th44: :: SEQM_3:44
for b1 being Nat
for b2 being real number
for b3 being Real_Sequence holds (b2 (#) b3) ^\ b1 = b2 (#) (b3 ^\ b1)
proof end;

theorem Th45: :: SEQM_3:45
for b1 being Nat
for b2 being Real_Sequence
for b3 being increasing Seq_of_Nat holds (b2 * b3) ^\ b1 = b2 * (b3 ^\ b1)
proof end;

theorem Th46: :: SEQM_3:46
for b1 being Real_Sequence holds b1 is subsequence of b1
proof end;

theorem Th47: :: SEQM_3:47
for b1 being Nat
for b2 being Real_Sequence holds b2 ^\ b1 is subsequence of b2
proof end;

theorem Th48: :: SEQM_3:48
for b1, b2, b3 being Real_Sequence st b1 is subsequence of b2 & b2 is subsequence of b3 holds
b1 is subsequence of b3
proof end;

theorem Th49: :: SEQM_3:49
for b1, b2 being Real_Sequence st b1 is increasing & b2 is subsequence of b1 holds
b2 is increasing
proof end;

theorem Th50: :: SEQM_3:50
for b1, b2 being Real_Sequence st b1 is decreasing & b2 is subsequence of b1 holds
b2 is decreasing
proof end;

theorem Th51: :: SEQM_3:51
for b1, b2 being Real_Sequence st b1 is non-decreasing & b2 is subsequence of b1 holds
b2 is non-decreasing
proof end;

theorem Th52: :: SEQM_3:52
for b1, b2 being Real_Sequence st b1 is non-increasing & b2 is subsequence of b1 holds
b2 is non-increasing
proof end;

theorem Th53: :: SEQM_3:53
for b1, b2 being Real_Sequence st b1 is monotone & b2 is subsequence of b1 holds
b2 is monotone
proof end;

theorem Th54: :: SEQM_3:54
for b1, b2 being Real_Sequence st b1 is constant & b2 is subsequence of b1 holds
b2 is constant
proof end;

theorem Th55: :: SEQM_3:55
for b1, b2 being Real_Sequence st b1 is constant & b2 is subsequence of b1 holds
b1 = b2
proof end;

theorem Th56: :: SEQM_3:56
for b1, b2 being Real_Sequence st b1 is bounded_above & b2 is subsequence of b1 holds
b2 is bounded_above
proof end;

theorem Th57: :: SEQM_3:57
for b1, b2 being Real_Sequence st b1 is bounded_below & b2 is subsequence of b1 holds
b2 is bounded_below
proof end;

theorem Th58: :: SEQM_3:58
for b1, b2 being Real_Sequence st b1 is bounded & b2 is subsequence of b1 holds
b2 is bounded
proof end;

theorem Th59: :: SEQM_3:59
for b1 being real number
for b2 being Real_Sequence holds
( ( b2 is increasing & 0 < b1 implies b1 (#) b2 is increasing ) & ( 0 = b1 implies b1 (#) b2 is constant ) & ( b2 is increasing & b1 < 0 implies b1 (#) b2 is decreasing ) )
proof end;

theorem Th60: :: SEQM_3:60
for b1 being real number
for b2 being Real_Sequence holds
( ( b2 is decreasing & 0 < b1 implies b1 (#) b2 is decreasing ) & ( b2 is decreasing & b1 < 0 implies b1 (#) b2 is increasing ) )
proof end;

theorem Th61: :: SEQM_3:61
for b1 being real number
for b2 being Real_Sequence holds
( ( b2 is non-decreasing & 0 <= b1 implies b1 (#) b2 is non-decreasing ) & ( b2 is non-decreasing & b1 <= 0 implies b1 (#) b2 is non-increasing ) )
proof end;

theorem Th62: :: SEQM_3:62
for b1 being real number
for b2 being Real_Sequence holds
( ( b2 is non-increasing & 0 <= b1 implies b1 (#) b2 is non-increasing ) & ( b2 is non-increasing & b1 <= 0 implies b1 (#) b2 is non-decreasing ) )
proof end;

theorem Th63: :: SEQM_3:63
for b1, b2 being Real_Sequence holds
( ( b1 is increasing & b2 is increasing implies b1 + b2 is increasing ) & ( b1 is decreasing & b2 is decreasing implies b1 + b2 is decreasing ) & ( b1 is non-decreasing & b2 is non-decreasing implies b1 + b2 is non-decreasing ) & ( b1 is non-increasing & b2 is non-increasing implies b1 + b2 is non-increasing ) )
proof end;

theorem Th64: :: SEQM_3:64
for b1, b2 being Real_Sequence holds
( ( b1 is increasing & b2 is constant implies b1 + b2 is increasing ) & ( b1 is decreasing & b2 is constant implies b1 + b2 is decreasing ) & ( b1 is non-decreasing & b2 is constant implies b1 + b2 is non-decreasing ) & ( b1 is non-increasing & b2 is constant implies b1 + b2 is non-increasing ) )
proof end;

theorem Th65: :: SEQM_3:65
for b1 being Real_Sequence st b1 is constant holds
( ( for b2 being real number holds b2 (#) b1 is constant ) & - b1 is constant & abs b1 is constant )
proof end;

theorem Th66: :: SEQM_3:66
for b1, b2 being Real_Sequence st b1 is constant & b2 is constant holds
( b1 (#) b2 is constant & b1 + b2 is constant )
proof end;

theorem Th67: :: SEQM_3:67
for b1, b2 being Real_Sequence st b1 is constant & b2 is constant holds
b1 - b2 is constant
proof end;

theorem Th68: :: SEQM_3:68
for b1 being real number
for b2 being Real_Sequence holds
( ( b2 is bounded_above & 0 < b1 implies b1 (#) b2 is bounded_above ) & ( 0 = b1 implies b1 (#) b2 is bounded ) & ( b2 is bounded_above & b1 < 0 implies b1 (#) b2 is bounded_below ) )
proof end;

theorem Th69: :: SEQM_3:69
for b1 being real number
for b2 being Real_Sequence holds
( ( b2 is bounded_below & 0 < b1 implies b1 (#) b2 is bounded_below ) & ( b2 is bounded_below & b1 < 0 implies b1 (#) b2 is bounded_above ) )
proof end;

theorem Th70: :: SEQM_3:70
for b1 being Real_Sequence holds
( ( b1 is bounded implies for b2 being real number holds b2 (#) b1 is bounded ) & ( b1 is bounded implies - b1 is bounded ) & ( b1 is bounded implies abs b1 is bounded ) & ( abs b1 is bounded implies b1 is bounded ) )
proof end;

theorem Th71: :: SEQM_3:71
for b1, b2 being Real_Sequence holds
( ( b1 is bounded_above & b2 is bounded_above implies b1 + b2 is bounded_above ) & ( b1 is bounded_below & b2 is bounded_below implies b1 + b2 is bounded_below ) & ( b1 is bounded & b2 is bounded implies b1 + b2 is bounded ) )
proof end;

theorem Th72: :: SEQM_3:72
for b1, b2 being Real_Sequence st b1 is bounded & b2 is bounded holds
( b1 (#) b2 is bounded & b1 - b2 is bounded )
proof end;

theorem Th73: :: SEQM_3:73
for b1 being Real_Sequence st b1 is constant holds
b1 is bounded
proof end;

theorem Th74: :: SEQM_3:74
for b1 being Real_Sequence st b1 is constant holds
( ( for b2 being real number holds b2 (#) b1 is bounded ) & - b1 is bounded & abs b1 is bounded )
proof end;

theorem Th75: :: SEQM_3:75
for b1, b2 being Real_Sequence holds
( ( b1 is bounded_above & b2 is constant implies b1 + b2 is bounded_above ) & ( b1 is bounded_below & b2 is constant implies b1 + b2 is bounded_below ) & ( b1 is bounded & b2 is constant implies b1 + b2 is bounded ) )
proof end;

theorem Th76: :: SEQM_3:76
for b1, b2 being Real_Sequence holds
( ( b1 is bounded_above & b2 is constant implies b1 - b2 is bounded_above ) & ( b1 is bounded_below & b2 is constant implies b1 - b2 is bounded_below ) & ( b1 is bounded & b2 is constant implies ( b1 - b2 is bounded & b2 - b1 is bounded & b1 (#) b2 is bounded ) ) )
proof end;

theorem Th77: :: SEQM_3:77
for b1, b2 being Real_Sequence st b1 is bounded_above & b2 is non-increasing holds
b1 + b2 is bounded_above
proof end;

theorem Th78: :: SEQM_3:78
for b1, b2 being Real_Sequence st b1 is bounded_below & b2 is non-decreasing holds
b1 + b2 is bounded_below
proof end;

theorem Th79: :: SEQM_3:79
for b1, b2 being set holds b1 --> b2 is constant
proof end;

registration
let c1, c2 be set ;
cluster a1 --> a2 -> constant ;
coherence
c1 --> c2 is constant
by Th79;
end;

theorem Th80: :: SEQM_3:80
( incl NAT is increasing & incl NAT is natural-yielding ) by Lemma34;