let X be set ; ( X is finite implies ex n being Element of NAT st
for k being Element of NAT st k in X holds
k <= n )
assume A1:
X is finite
; ex n being Element of NAT st
for k being Element of NAT st k in X holds
k <= n
defpred S1[ set , set ] means ex k1, k2 being Element of NAT st
( $1 = k1 & $2 = k2 & k1 >= k2 );
now per cases
( X /\ NAT = {} or X /\ NAT <> {} )
;
suppose A5:
X /\ NAT <> {}
;
ex n being Element of NAT st
for k being Element of NAT st k in X holds
k <= nreconsider XN =
X /\ NAT as
finite set by A1;
A6:
XN <> {}
by A5;
A7:
for
x,
y being
set st
S1[
x,
y] &
S1[
y,
x] holds
x = y
by XXREAL_0:1;
A8:
for
x,
y,
z being
set st
S1[
x,
y] &
S1[
y,
z] holds
S1[
x,
z]
by XXREAL_0:2;
consider x being
set such that A9:
(
x in XN & ( for
y being
set st
y in XN &
y <> x holds
not
S1[
y,
x] ) )
from CARD_3:sch 2(A6, A7, A8);
reconsider n =
x as
Element of
NAT by A9, XBOOLE_0:def 4;
take n =
n;
for k being Element of NAT st k in X holds
k <= nlet k be
Element of
NAT ;
( k in X implies k <= n )assume
k in X
;
k <= nthen
k in X /\ NAT
by XBOOLE_0:def 4;
hence
k <= n
by A9;
verum end; end; end;
hence
ex n being Element of NAT st
for k being Element of NAT st k in X holds
k <= n
; verum