:: FINSET_1 semantic presentation

definition
let IT be set ;
attr a1 is finite means :Def1: :: FINSET_1:def 1
ex p being Function st
( rng p = IT & dom p in omega );
end;

:: deftheorem Def1 defines finite FINSET_1:def 1 :
for IT being set holds
( IT is finite iff ex p being Function st
( rng p = IT & dom p in omega ) );

notation
let IT be set ;
antonym infinite c1 for finite c1;
end;

Lemma25: for x being set holds {x} is finite
proof end;

registration
cluster non empty finite set ;
existence
ex b1 being set st
( not b1 is empty & b1 is finite )
proof end;
end;

registration
cluster empty -> finite set ;
coherence
for b1 being set st b1 is empty holds
b1 is finite
proof end;
end;

registration
let X be set ;
cluster empty finite Element of bool a1;
existence
ex b1 being Subset of X st
( b1 is empty & b1 is finite )
proof end;
end;

scheme :: FINSET_1:sch 30
s30{ F1() -> set , P1[ set ], F2( set ) -> set , F3( set ) -> set } :
ex f being Function st
( dom f = F1() & ( for x being Ordinal st x in F1() holds
( ( P1[x] implies f . x = F2(x) ) & ( P1[x] implies f . x = F3(x) ) ) ) )
proof end;

Lemma33: for A, B being set st A is finite & B is finite holds
A \/ B is finite
proof end;

registration
let x be set ;
cluster {a1} -> finite ;
coherence
{x} is finite
by ;
end;

registration
let x be set , y be set ;
cluster {a1,a2} -> finite ;
coherence
{x,y} is finite
proof end;
end;

registration
let x be set , y be set , z be set ;
cluster {a1,a2,a3} -> finite ;
coherence
{x,y,z} is finite
proof end;
end;

registration
let x1 be set , x2 be set , x3 be set , x4 be set ;
cluster {a1,a2,a3,a4} -> finite ;
coherence
{x1,x2,x3,x4} is finite
proof end;
end;

registration
let x1 be set , x2 be set , x3 be set , x4 be set , x5 be set ;
cluster {a1,a2,a3,a4,a5} -> finite ;
coherence
{x1,x2,x3,x4,x5} is finite
proof end;
end;

registration
let x1 be set , x2 be set , x3 be set , x4 be set , x5 be set , x6 be set ;
cluster {a1,a2,a3,a4,a5,a6} -> finite ;
coherence
{x1,x2,x3,x4,x5,x6} is finite
proof end;
end;

registration
let x1 be set , x2 be set , x3 be set , x4 be set , x5 be set , x6 be set , x7 be set ;
cluster {a1,a2,a3,a4,a5,a6,a7} -> finite ;
coherence
{x1,x2,x3,x4,x5,x6,x7} is finite
proof end;
end;

registration
let x1 be set , x2 be set , x3 be set , x4 be set , x5 be set , x6 be set , x7 be set , x8 be set ;
cluster {a1,a2,a3,a4,a5,a6,a7,a8} -> finite ;
coherence
{x1,x2,x3,x4,x5,x6,x7,x8} is finite
proof end;
end;

registration
let B be finite set ;
cluster -> finite Element of bool a1;
coherence
for b1 being Subset of B holds b1 is finite
proof end;
end;

registration
let X be finite set , Y be finite set ;
cluster a1 \/ a2 -> finite ;
coherence
X \/ Y is finite
by ;
end;

theorem Th1: :: FINSET_1:1
canceled;

theorem Th2: :: FINSET_1:2
canceled;

theorem Th3: :: FINSET_1:3
canceled;

theorem Th4: :: FINSET_1:4
canceled;

theorem Th5: :: FINSET_1:5
canceled;

theorem Th6: :: FINSET_1:6
canceled;

theorem Th7: :: FINSET_1:7
canceled;

theorem Th8: :: FINSET_1:8
canceled;

theorem Th9: :: FINSET_1:9
canceled;

theorem Th10: :: FINSET_1:10
canceled;

theorem Th11: :: FINSET_1:11
canceled;

theorem Th12: :: FINSET_1:12
canceled;

theorem Th13: :: FINSET_1:13
for A, B being set st A c= B & B is finite holds
A is finite
proof end;

theorem Th14: :: FINSET_1:14
for A, B being set st A is finite & B is finite holds
A \/ B is finite by ;

registration
let A be set ;
let B be finite set ;
cluster a1 /\ a2 -> finite ;
coherence
A /\ B is finite
proof end;
end;

registration
let A be finite set ;
let B be set ;
cluster a1 /\ a2 -> finite ;
coherence
A /\ B is finite
;
cluster a1 \ a2 -> finite ;
coherence
A \ B is finite
;
end;

theorem Th15: :: FINSET_1:15
for A, B being set st A is finite holds
A /\ B is finite
proof end;

theorem Th16: :: FINSET_1:16
for A, B being set st A is finite holds
A \ B is finite by ;

theorem Th17: :: FINSET_1:17
for A being set
for f being Function st A is finite holds
f .: A is finite
proof end;

registration
let f be Function;
let A be finite set ;
cluster a1 .: a2 -> finite ;
coherence
f .: A is finite
by ;
end;

theorem Th18: :: FINSET_1:18
for A being set st A is finite holds
for X being Subset-Family of A st X <> {} holds
ex x being set st
( x in X & ( for B being set st B in X & x c= B holds
B = x ) )
proof end;

scheme :: FINSET_1:sch 103
s103{ F1() -> set , P1[ set ] } :
P1[F1()]
provided
E26: F1() is finite and
E27: P1[ {} ] and
E28: for x, B being set st x in F1() & B c= F1() & P1[B] holds
P1[B \/ {x}]
proof end;

Lemma106: for A being set st A is finite & ( for X being set st X in A holds
X is finite ) holds
union A is finite
proof end;

theorem Th19: :: FINSET_1:19
for A, B being set st A is finite & B is finite holds
[:A,B:] is finite
proof end;

registration
let A be finite set , B be finite set ;
cluster [:a1,a2:] -> finite ;
coherence
[:A,B:] is finite
by ;
end;

theorem Th20: :: FINSET_1:20
for A, B, C being set st A is finite & B is finite & C is finite holds
[:A,B,C:] is finite
proof end;

registration
let A be finite set , B be finite set , C be finite set ;
cluster [:a1,a2,a3:] -> finite ;
coherence
[:A,B,C:] is finite
by ;
end;

theorem Th21: :: FINSET_1:21
for A, B, C, D being set st A is finite & B is finite & C is finite & D is finite holds
[:A,B,C,D:] is finite
proof end;

registration
let A be finite set , B be finite set , C be finite set , D be finite set ;
cluster [:a1,a2,a3,a4:] -> finite ;
coherence
[:A,B,C,D:] is finite
by ;
end;

theorem Th22: :: FINSET_1:22
for B, A being set st B <> {} & [:A,B:] is finite holds
A is finite
proof end;

theorem Th23: :: FINSET_1:23
for A, B being set st A <> {} & [:A,B:] is finite holds
B is finite
proof end;

theorem Th24: :: FINSET_1:24
for A being set holds
( A is finite iff bool A is finite )
proof end;

theorem Th25: :: FINSET_1:25
for A being set holds
( ( A is finite & ( for X being set st X in A holds
X is finite ) ) iff union A is finite )
proof end;

theorem Th26: :: FINSET_1:26
for f being Function st dom f is finite holds
rng f is finite
proof end;

theorem Th27: :: FINSET_1:27
for Y being set
for f being Function st Y c= rng f & f " Y is finite holds
Y is finite
proof end;

theorem Th28: :: FINSET_1:28
for X, Y being set st X is finite & Y is finite holds
X \+\ Y is finite
proof end;

registration
let X be finite set , Y be finite set ;
cluster a1 \+\ a2 -> finite ;
coherence
X \+\ Y is finite
;
end;

registration
let X be non empty set ;
cluster non empty finite Element of bool a1;
existence
ex b1 being Subset of X st
( b1 is finite & not b1 is empty )
proof end;
end;

theorem Th29: :: FINSET_1:29
for f being Function holds
( dom f is finite iff f is finite )
proof end;

theorem Th30: :: FINSET_1:30
for F being set st F is finite & F <> {} & F is c=-linear holds
ex m being set st
( m in F & ( for C being set st C in F holds
m c= C ) )
proof end;

theorem Th31: :: FINSET_1:31
for F being set st F is finite & F <> {} & F is c=-linear holds
ex m being set st
( m in F & ( for C being set st C in F holds
C c= m ) )
proof end;

definition
let R be Relation;
attr a1 is finite-yielding means :: FINSET_1:def 2
for x being set st x in rng R holds
x is finite;
end;

:: deftheorem Def2 defines finite-yielding FINSET_1:def 2 :
for R being Relation holds
( R is finite-yielding iff for x being set st x in rng R holds
x is finite );